私は本当にこれ以上の諺の壁に対して頭を叩きました。VS2010のモジュールリストからDLLが抜けています
私は、C#とC++コードプロジェクトの両方を含むソリューションを用意しています。
多くの場合、このプロジェクトでP/Invoke経由でC#からコンパイルされたC++ DLLを呼び出します。問題ありません。 *.sln
ファイルとC++ファイルとC#ファイルを使用して必要なデバッガ設定をすべて、私の知る限り正しく設定しました。 注:私はしばしば同様のP/Invoked C++コードを問題なくデバッグすることができます!
当然のことながら、シンボルがロードされていない可能性があると考えました。しかし、モジュールウィンドウを開くと、私が踏み込もうとしているDLLがリストされていないことがわかりました。私のC#プログラムで関数を実行すると、実際にはDLLが使用されます(正しい出力が得られます)が、Modulesウィンドウを見てもDLLは表示されません。
誰でも何が起こっているのか考えていますか?
TL; DR
私はデバッグP /呼び出されC++での経験のかなりの量を持っています。しかし、私がデバッグしたいDLLは、Modulesリストにも表示されません(VSデバッガがその存在を完全に認識していないように見える場合、私は明らかにそのステップに入ることができません)。
シナリオをどのように再現できますか? –
"混合モード"のデバッグを行うように設定されていますか?つまり、デバッグしようとしているものではないのですか? –
David:残念ながら、このシナリオを簡単に再現することはできません。これは、私が今までにModulesリストにないDLLがあった唯一の時間だからです! Matt:C++プロジェクト内で混在モードのデバッグ用に設定されています。アタッチがYesに設定されています。 C#プロジェクト内では、C++プロジェクトは依存関係としてリストされています。また、C#プロジェクト内で、[管理されていないコードのデバッグを有効にする]チェックボックスがオンになっています。問題は、コードが呼び出されると、[デバッグ]> [モジュール]画面でも、C++のDLLがどれもリストされていないことです。 これまでに見たことがありますか?これまでのあなたのヒントをありがとう! –