電子書籍の厳選無料作品が豊富!

C#からCで作成したDLLにステップインできません。

対策としては以下を行いましたが、ステップインできませんでした。他の対策を知っていたら教えてください!

環境:C#, CともにVS2008, Windows XP professional

・プロジェクトのプロパティのデバッグタブで、「アンマネージのデバッグを~」にチェックを入れる。
・完全なソースを必要とするのチェックをはずす。
・C#のexeと同一DIRにdllと、pdbファイルを配置する。
・全てデバッグでコンパイルする。

A 回答 (1件)

C関数がエクスポートされているDLL側がWin32であれば、C#側の「プラットフォーム ターゲット」をx86にして、DLL側がx64であれば、C#側もx64にしてみるとか。

デフォルトではAny CPUになっているはず。

せめてDLL側の関数宣言部やEXE側の呼び出しコード(P/Invoke)をそれぞれ部分的にでも書いておかないと、類推するのは難しいです。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。偶然にも自己解決いたしました。
今までは、アプリケーションを起動した後に、IDEでもってアタッチする。という
方法をとっていたのですが、これでは対象のモジュール(dll)がまだロードされて
いない状態でした。
F5でデバッグ実行をすると、今までステップインできなかったモジュールが最初に
ロードされて、ステップインもできるようになりました。
お手数をおかけしましたm(。。)m

お礼日時:2011/03/23 19:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!