2016-08-08 3 views
0

Delphiの場合私のプログラムが無責任になると、メインスレッドが何をしているのか、主にスタックトレースのために、ときどきローカル変数を参照するようになるたびにF12を押すことに慣れてきました。SharpDevelopとDebugBreak(F12キー)

今、私はSharpDevelopで遊んでいますが、それに似たものは何も見えません。まったく可能ですか?

答えて

0

デバッグブレークのSharpDevelopには、あらかじめ定義されたキーボードショートカットがありません。 [デバッグ]メニューから[デバッグ] - [ブレーク]を選択して使用できます。また、メインツールバーの一時停止ボタンを押すこともできます。

キーボードショートカットを使用する場合は、ICSharpCode.SharpDevelop.addinファイルを編集して、ショートカットをBreakメニューに追加する必要があります。以下は、キーボードショートカットを使用しないブレークメニュー項目と、F5キーをショートカットとして持つコンティニューメニュー項目を示しています。

 <Condition name="DebuggerSupports" debuggersupports = "ExecutionControl"> 
      <MenuItem id = "ExecutionControlSeparator" type = "Separator" /> 
      <Condition name="IsProcessRunning" isprocessrunning = "True" isdebugging = "True" action = "Disable"> 
       <MenuItem id  = "Break" 
          label = "${res:XML.MainMenu.DebugMenu.Break}" 
          icon  = "Icons.16x16.Debug.Break" 
          class = "ICSharpCode.SharpDevelop.Project.Commands.BreakDebuggingCommand"/> 
      </Condition> 
      <Condition name="IsProcessRunning" isprocessrunning = "False" isdebugging = "True" action = "Disable"> 
       <MenuItem id  = "Continue" 
          label = "${res:XML.MainMenu.DebugMenu.Continue}" 
          icon  = "Icons.16x16.Debug.Continue" 
          shortcut = "F5" 
          class = "ICSharpCode.SharpDevelop.Project.Commands.ContinueDebuggingCommand"/> 
      </Condition> 
     </Condition> 

あなたがしたいのであれば、あなたはICSharpCode.SharpDevelop.addinファイルを編集してブレークメニュー項目の新しいショートカット属性を追加することができます。

+0

いいえ、私はIDE内ではないアプリ内からデバッグブレークを意味します –

+0

あなたは、デバッガの下でアプリケーションを実行している場合、それを行うことができます。または、プロセスにアタッチしてからプロセスに侵入することもできます。 –

+0

これはどんな鐘を鳴らしますか? F12キーが押され、フォーカスのアプリケーションがデバッグされているとき、Windows NTはDebugBreak()と同様の関数を呼び出します。この関数は、ハードコードされたブレークポイント命令を実行します。統合デバッガは、この命令によって生成された例外をトラップします。 –

関連する問題