Delphiの場合私のプログラムが無責任になると、メインスレッドが何をしているのか、主にスタックトレースのために、ときどきローカル変数を参照するようになるたびにF12を押すことに慣れてきました。SharpDevelopとDebugBreak(F12キー)
今、私はSharpDevelopで遊んでいますが、それに似たものは何も見えません。まったく可能ですか?
Delphiの場合私のプログラムが無責任になると、メインスレッドが何をしているのか、主にスタックトレースのために、ときどきローカル変数を参照するようになるたびにF12を押すことに慣れてきました。SharpDevelopとDebugBreak(F12キー)
今、私はSharpDevelopで遊んでいますが、それに似たものは何も見えません。まったく可能ですか?
デバッグブレークの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ファイルを編集してブレークメニュー項目の新しいショートカット属性を追加することができます。
いいえ、私はIDE内ではないアプリ内からデバッグブレークを意味します –
あなたは、デバッガの下でアプリケーションを実行している場合、それを行うことができます。または、プロセスにアタッチしてからプロセスに侵入することもできます。 –
これはどんな鐘を鳴らしますか? F12キーが押され、フォーカスのアプリケーションがデバッグされているとき、Windows NTはDebugBreak()と同様の関数を呼び出します。この関数は、ハードコードされたブレークポイント命令を実行します。統合デバッガは、この命令によって生成された例外をトラップします。 –