2008-10-28 53 views

回答

16

要在混合模式進程的本機部分設置數據斷點,請參閱answer posted by jyoung

當運行除純粹的本地代碼之外的其他任何東西時,Visual Studio禁用數據斷點。請參閱this文章,瞭解VS Program Manager的部分解釋。

+3

「部分解釋」=團隊從未爲此編寫代碼。 – 2016-03-16 20:15:27

30

因此,要做到這一點,我不得不:

  • 設置非託管的DLL爲啓動項目
  • 設置管理程序的啓動命令
  • 組調試模式本地
  • 「中斷執行」或命中斷點,以便處於「調試」狀態

yech

+3

快速提示:正如你在你的問題中提到的,你的程序必須處於「休息」狀態才能使菜單選項可用。 – dss539 2011-08-22 20:37:17

4

建議的解決方案無法一直工作。即使在本機模式下進行調試時,程序在Native代碼段中被破壞,當試圖設置「新數據斷點」時,我會彈出一個彈出窗口「無法設置斷點。公共語言運行時不支持數據斷點「

另一種方法是直接從代碼中添加數據斷點。請參閱文章here

這在混合模式運行良好,只需要本機調試模式被激活(如上面所建議的)

1

其中工程到處一個非常有用的技巧是調用從代碼斷點在特殊條件下:

If (Condition) 
    System.Diagnostics.Debugger.Break()