VS2005でC++プログラムをデバッグしようとしたとき、プログラムはブレークポイントで停止しませんでした。
VSは、「どのコールスタックフレームにもシンボルがロードされていません。ソースコードを表示できません」と述べました。
私に何ができる?
みんなありがとう。
最後に、私は解決策を見つけました ここ 。
デバッグを有効にするには:
1)プロジェクトに移動-> HelloWorldプロパティ
2)左側の[構成プロパティ]を展開します
3)「C/C++」を展開します
4)左側で、「一般」を選択します
5)右側で、[デバッグ情報の形式]を[編集して続行するためのプログラムデータベース(/ ZI)]に変更します。
5)左側で、「最適化」を選択します
6)右側で、「最適化」を「無効(/ Od)」に変更します。
7)左側で、[リンカー]を展開します
8)左側で、[デバッグ]を選択します
9)右側で、[デバッグ情報の生成]を[はい]に変更します
10)[OK]をクリックします
11)ブレークポイントを設定します
12)アプリケーションを再構築します
また、アプリケーションを実行するときは、Ctrl + F5を使用してアプリケーションをビルドおよび実行します。これにより、出力が表示されるのに十分な時間、コンソールウィンドウが開いたままになります。
試すためのいくつかのステップ:
何らかの理由で、シンボルパスに適切なシンボル(.pdbファイル)がありません。これにはいくつかの理由が考えられます。
1)バイナリは.pdbファイルよりも最近コンパイルされました。すべてを再コンパイルしてみてください。
2).dllをデバッグしようとしていて、.pdbファイルをコピーするのを忘れました。それらのファイルもコピーします。
コードが思ったように実行されていない可能性もあります。
従来のデバッグセッションを実行するのではなく、プロセスに接続しているように聞こえますか?実際にプロセスに接続している場合は、デバッグしようとしているバイナリが、現在IDEで開いているのと同じソースコードでビルドされていることを確認することが重要です。
.pdbが作成されていることを確認して、完全にクリーンアップして再構築しますか?
MainIDでまだカバーされていない別の可能性を追加するだけです。
デバッグするとき、私は実際に、デバッグしたいクラスを呼び出すプログラムを開始しました(これはある種のアドオンです)。呼び出されたプログラムの一部は、アンマネージC++で記述されています。 「アンマネージコードのデバッグを有効にする」をチェックすると、プログラムにデバッグ情報がないため、エラーが発生しました(その後、プログラムがクラッシュしました)。
私はこれを行うことによってWP7でこの問題を解決しました:
お役に立てば幸いです。
単体テストをデバッグしようとしたときに、この問題が発生しました(VSでc#を使用)。
次のコードを追加して、デバッガーの新しいインスタンスを起動し、通常のようにコードをステップ実行できるようにします。
System.Diagnostics.Debugger.Launch();
System.Diagnostics.Debugger.Break();