2011-10-25 7 views
3

私は自分のプロジェクトに使用している共通のDLLを持っています。私たちはそれをナゲットパッケージにして、私の会社でローカルに使用しています。dllメソッドの呼び出しまたはコンストラクタにステップインしてソースを尋ねる方法はありますか?

しかし、今では、そのDLL内部からのnull参照例外が発生しています。私がそれに踏み込もうとすると(F11)、それはちょうどその上を歩いて行きます。

今、私はDelphiのバックグラウンドから来ており、Delphiではライブラリのコードを提供することができます。

「ここでコードは、私が使用しているDLLであるかのように進んでください」と言う方法があることを期待しています。

それ以外の場合は、このdllへの参照を変更して、プロジェクトにコードを追加する必要があります。私はそれをすることができますが、より簡単な方法があるはずです。

+1

シンボルファイルを保管している場合は、ステップスルーできる必要があります。これは、アセンブリの構築方法によって異なります。 – jv42

答えて

1

dllもデバッグビルドであり、dllで生成された.pdbファイルがdllと同じ場所に置かれていることを確認してください。現在のプロジェクトを再構築すると、関数呼び出しに入ることができます。

+0

それはそれでした。一旦私がDebug dllと.pdbをコピーしたら、それはうまくいった! – Vaccano

5

>オプションおよび設定 - >デバッグデバッグ - この

移動してみてください - >一般 - >チェックを外しオプションを:マイコードのみを有効にしてから

あなたが試すことができますもう一つのF11を使用してステップしてみてください他のDLLのシンボルを手動でロードすることです。デバッグモードになったら(他のdllコードにステップする前に)、[デバッグ] - > [Windows] - > [モジュール]に移動します。ロードされたすべてのDLLが表示されます。あなたのdllを右クリックし、それに手動でシンボルをロードしてください

0

ソースコードが別のプロジェクトにある場合は、アプリケーションを実行してVSメニューのデバッグ - >プロセスにアタッチしてください。 YoyはDLL内でデバッグできるはずです。

その他のオプションは、.NET ReflectorまたはILSpyを使用することです。それらは、DLL内でデバッグすることを可能にします。

関連する問題