0
當使用F4分離VS調試器(又名:停止調試)時,VS調試器是否會引發一些可以在C++或C#應用程序中捕獲的信號或異常?同樣的問題,雖然對我來說不太重要,但我認爲可以通過在C++中使用單獨的線程IsDebuggerPresent
來解決這個問題。當調試器分離時,應用程序能夠得到通知嗎?
當使用F4分離VS調試器(又名:停止調試)時,VS調試器是否會引發一些可以在C++或C#應用程序中捕獲的信號或異常?同樣的問題,雖然對我來說不太重要,但我認爲可以通過在C++中使用單獨的線程IsDebuggerPresent
來解決這個問題。當調試器分離時,應用程序能夠得到通知嗎?
沒有從Visual Studio發送的事件。但你可以這樣模擬:
var t = new Thread(new ThreadStart(() =>
{
while (true)
{
if (!Debugger.IsAttached)
{
//Check if the IsAttached Changed raise a custom event DebuggerDetached
}
else
{
//Check if the IsAttached Changed raise a custom event DebuggerAttached
}
Thread.Sleep(100);
}
}));
t.Start();
搜索了一些,實際上找不到事件或任何地方,所以像這樣的解決方案是唯一的選擇。 – stijn
據我所知,調試器不「自我宣告」。 –