26

メソッドにブレークポイントを設定した場合、Visual Studio 2008でブレークポイントに到達したときに、メソッドと呼ばれるものをどのように確認できますか?

4

6 に答える 6

50

[コールスタック]ウィンドウを確認します(メニューから:[デバッグ]>[ウィンドウ]>[コールスタック])。そこにある各エントリをダブルクリックすると、呼び出し元のステートメントに移動します。また、右クリックして、外部コード項目や他のスレッドからの呼び出しの表示を有効/無効にすることもできます。

于 2009-08-05T21:22:16.870 に答える
4

ブレークポイントに到達すると、呼び出しスタック全体を表示できます。[デバッグ]メニュー->[ウィンドウ]->[コールスタック]を選択すると、そのウィンドウを表示できます。

Alt + Ctrl+Cのショートカットで表示することもできます

編集:関数名を右クリックして、メソッドのすべての呼び出し元を表示する「呼び出し元グラフ」を表示することもできます。または、呼び出しブラウザを使用して([表示]->[その他のウィンドウ]->[呼び出しブラウザ]に移動)、メソッドの名前を検索することもできます。

于 2009-08-05T21:25:18.987 に答える
4

ユーザーが設定したブレークポイントでコールスタックに何も表示されない場合は、通常、ネイティブコードから呼び出されたことを意味します。

スタックを取得できない別のケース:[デバッグ]> [すべて中断]をクリックし、メインスレッドが待機/スリープ状態にある場合、デバッガーは呼び出しスタックの構築で問題が発生する可能性があります。デバッガーは暗黙の関数評価にメインスレッドを使用していると思います。

混合モード(ネイティブおよびマネージド)コードデバッガーをアタッチ(または起動)してみて、それが問題を解決するかどうかを確認してください。

于 2009-08-05T21:47:18.910 に答える
1

[コールスタック]ウィンドウに何も表示されない場合は、間違いなく何か問題があります。私はRアクションの有名なシーケンスを提案します:

  • リトライ
  • 再コンパイル
  • 再起動
  • 再インストール:)
于 2009-08-05T21:34:03.540 に答える
1

ブレークポイントがイベントによって発生する関数内にある場合、呼び出し元に直接コールスタックを戻すことができない可能性があり、「自分のコードだけ」だけでなく、すべてのコードを表示できるようにする必要があります。

于 2009-08-05T21:53:33.577 に答える
0

Visual Studio 2019の場合は、[表示]メニューを開いて[階層の呼び出し]を選択するか、 Ctrl + Alt+Kを押します。

于 2020-09-09T20:05:48.197 に答える