2

デバッグしたいいくつかの.NETアセンブリをロードするDelphiアプリケーションがあります。Delphiコードをデバッグするのではなく、.NETアセンブリだけをデバッグします。

Start external programVS 2010では、.NETコードの出力ディレクトリがDelphi実行可能フォルダーを指すようにし、実行可能パスを指すように設定するだけで済みました。F5キーを押すと、Delphiコードが自動的に起動し、モジュールが読み込まれ、デバッグの準備が整いました。

今、私はVS 2012に移行しました。同じことをしますが、デバッグが機能しません。プロセスが開始され、正しく接続されていますが、[モジュール]ウィンドウは完全に空です。シンボルはロードされていません。何もデバッグできません。

VS 2012で動作させるために私がしなければならない特別なことはありますか?

4

2 に答える 2

3

私はあなたとまったく同じシナリオを持っていました(手遅れではないことを願っています)。

問題は、「接続プロセス」で、外部プログラムを起動するときに.NETバージョンのデバッガー(この場合はManaged 3-3.5)を選択できることでした。何らかの理由で、デフォルトのデバッガーは4です。 [追加]>[既存のプロジェクト]をクリックし、アンマネージプログラムの基本的なEXEファイルを追加します。単一のファイルプロジェクトとして表示されます。それを右クリックして「スタートアッププロジェクトとして設定」します。もう一度右クリックして、[プロパティ]をクリックします。デバッガータイプの設定:管理対象(v3.5、v3.0、v2.0)。

これで、デバッガーは正しいバージョンをロードします。私はこれがうまくいくと確信しています。

于 2013-06-17T13:52:50.053 に答える
1

まったく同じ問題が発生しています。.NET3.5スナップインを使用してMMC.exeを実行する。VS2012にアップグレードする前に正常にデバッグされましたが、アップグレード後、ネイティブシンボルがロードされておらず、ブレークポイントが機能しないと表示されます。@jdv-JandeVaanのヒントは、私が前進するために必要なものでした。.NET3.5を使用するようにデバッガーを設定する必要がありました。それを行うために私が見つけた唯一の方法は、[プロセスにアタッチ...]ダイアログで.NET3.5を選択することでした。不便ですが、動作します。

于 2013-03-10T01:14:58.847 に答える