0

タイトルが示すように、「EuroScope.exe」というプログラムの .dll プラグインを作成しようとしています。最初の数日間、私はテンプレートから1つを作成しようとしていました(共有MFC DLLを使用した通常のDLLを備えたMFC DLL)。

それが失敗したとき(当時は理由がわかりませんでした)、ガイドに従ってこのプログラム専用のプラグインを作成しようとしましたが、例からプラグインを開いたにもかかわらず、開始できませんでした。プログラムで.dllをビルドして開くと動作しますが、最初から開始する必要があるため、ブレークポイントを使用してデバッグしてテストする必要があります。問題はここにあります。「EuroScope.exe」でデバッグすると、「「Euroscope.exe 」のデバッグ情報が見つからないか、一致しません。バイナリはデバッグ情報でビルドされませんでした。デバッグを続行しますか?はい・いいえ?" ブレークポイントには、「ブレークポイントは現在ヒットしません。このドキュメントにはシンボルが読み込まれていません」と表示されます. 私は文字通りこれに対する何百もの解決策を検索して実行しましたが、何も機能しません(ただし、「Visual Studio の再インストール」ではありません。個人的にはその解決策が嫌いで、Visual Studio が他の領域で正常に動作しているためです)。

私が期待したこと、そしてガイドが言うように:「プラグインをデバッグすることは可能です。プロジェクトのプロパティダイアログで、実行するコマンドとしてEuroscopeを指定し、DLLのデバッグバージョンを読み込んでください。できるでしょう。 DLL 内にブレークポイントを定義し、通常どおりデバッグします。」

これは私の論文のためであり、この問題のために私は時間を無駄にしており、プラグインの作成自体を開始することさえできなかったので、私はこれについて本当に落ち込んでいます....

みんな助けてください

ありがとうございました

PS: 問題に関する追加情報が 1 つあります。デバッグするとき(その問題に対して「はい」をクリックします)、次のように表示されます:

'EuroScope.exe' (Win32): Loaded 'D:\Thesis\Euroscope\EuroScope.exe'.Module was built without symbols.
EuroScope.exe' (Win32): Loaded 'C:\Windows\SysWOW64\ntdll.dll'.Symbols loaded.
'EuroScope.exe' (Win32): Loaded 'C:\Windows\SysWOW64\kernel32.dll'.Symbols loaded.
....
....
'EuroScope.exe' (Win32): Loaded 'D:\Thesis\Euroscope\EuroScopePlugInDll.dll'.Cannot find or open the PDB file.
'EuroScope.exe' (Win32): Loaded 'C:\Windows\winsxs 22-\x86_microsoft.vc80.mfc_1fc8b
...

これらの行は問題に関係していると思いますか?

4

1 に答える 1

0

ビルドしていないプログラムをデバッグしている場合、表示される出力メッセージは正常です。これらはエラーを示すものではなく、非デバッグ コードにブレークポイントを設定できないことのみを示しています。

EuroScopePlugInDll.dll がプロジェクトであり、正常にビルドされると想定しています。デバッグできるようにするには: (1) リリース構成ではなく、デバッグ構成を構築していることを確認してください。(2) ビルドによって生成された dll ファイルと pdb ファイルが同じディレクトリにあることを確認します。おそらく、それらを EuroScope.exe と同じディレクトリに移動する必要があります。これで、dll ソース コードにブレークポイントを設定できるはずです。

于 2013-06-15T02:11:56.233 に答える