0
在Visual Studio 2013自動化項目(即Visual Studio Package項目)中,如何在調試過程退出時運行事件處理程序,以及如何找出調試過程的退出代碼是?Visual Studio Automation - 調試器退出事件和狀態代碼
我開始像這樣(C#)調試器:
var dte = ...;
foreach (EnvDTE.Project proj in dte.Solution.Projects)
{
if (proj.Name == "blahblah")
{
dte.Solution.Properties.Item("StartupProject").Value = proj.Name;
dte.Debugger.Go(false);
break;
}
}
我希望有更多的代碼時,調試過程中退出,並且代碼需要知道調試進程的退出狀態運行。可以做到嗎?
是的,它可以做到。您需要在'dte.Debugger.Events'(或'dte.DebugEvents'?)中訂閱適當的事件,並且保留對DTE事件對象的引用,以便在實際事件被觸發前不會收集垃圾。此外,您對項目的循環可能會中斷 - 它會跳過解決方案文件夾中的所有項目,並將解決方案文件夾視爲項目...老實說,如果您可以在沒有*醜陋的EnvDTE界面的情況下執行您想要的操作(即通過真實COM接口),你可能會更好,但它會*更多的代碼/工作。 – Cameron
感謝有關解決方案文件夾等指針。我得到的將爲我的目的,但我會着手修復它。 – Tom
我想'dte.Events.DebugEvents.OnEnterDesignMode'是你想要的事件嗎?但是,如何獲得調試過程的退出代碼? – Tom