2016-08-16 137 views
2

當進程啓動時,是否可以將Visual Studio附加到進程權限?理想情況下,我希望VS能夠聽從正在開始的流程,直到遇到特定條件,此時它會立即將自己附加到該流程。Visual Studio:一旦進程啓動就自動附加調試器進程

在其他堆棧溢出問題中,我已經看到了從我自己的visual studio實例啓動進程的建議,但在我的情況下,這是不可能的。我需要在一個SSIS項目中將VS附加到另一個VS實例中的調試器線程。調試器線程必須由該VS實例啓動。我無法手動將VS實例附加到該進程,以便調試在線程開始時立即發生的某些進程。

+1

[自動啓動調試器(https://msdn.microsoft.com/en-us/library/a329t4ed(VS.71)的.aspx)是很老,但仍然是有效的,我相信。 –

+0

如果您將其作爲答案而不是評論發佈,我可能會將其標記爲答案。在我的示例情況中,它導致SSIS項目崩潰(「無法與調試主機進程通信,無法獲得子進程活動對象」),但它完美地回答了線程的主要問題。 – NRade

回答

2
System.Diagnostics.Debugger.Break() 
+0

如果可以的話,我會給這10個upvotes,因爲它看起來非常有用,可能是我從現在開始編寫的大部分代碼中的一些東西。但是,在這種特殊情況下,它會導致SSIS調試主機崩潰而沒有明確的錯誤報告。可能會有一些複雜性,這是因爲我試圖附加的過程本身就是一個調試主機。 – NRade

+1

很高興這個信息很有用。太糟糕了,這對你的特殊情況沒有幫助。我不知道這裏有什麼可以幫到你。無論如何,System.Diagnostics.Debugger對象有一些有用的成員,Break()是最常用的成員。 – citykid

相關問題