Acad2008和Acad2010需要修改安裝目錄下的acad.exe.config文件內容,才可以捕獲斷點:
<configuration> <startup> <!--We always use the latest version of the framework installed on the computer. If you are having problems then explicitly specify .NET 2.0 by uncommenting the following line. --> <supportedRuntime version="v2.0.50727"/> </startup> </configuration>
cad快捷方式,目標,設置/nologo這樣默認打開就不會有logo出現: "C:\Program Files (x86)\AutoCAD 2008\acad.exe" /nologo
同理,c#項目調試的這里也可以加/nologo達到一樣的效果.
調試的時候可以允許編輯代碼...請用vs2017以上,因為cad.net對於vs版本沒有限制,所以建議追新...我是在vs2019上面實現的...
vs菜單欄: 工具--選項--按圖設置一下,勾選一下 "編輯並繼續"的框框...打鈎√√√√
勾選了之后,設置斷點在修改的代碼行前面.
然后要注意一個問題,一個解決方案內,調試的代碼不可以共用,如果發生共用一份代碼,那么共用的項目要卸載,否則不能成功在斷點捕捉的時候修改代碼.
共用代碼的時候,斷點捕捉會有小鎖頭,不給你改代碼.
這個時候就要卸載其他工程,保留下你這個正在修改的版本,做完再編譯其他版本.
演示:
帶有using的引用命名空間不能改,除了頂部引用的using不能更改(添加了新的using就需要重啟)之外,
其他地方只要再斷點以下,可以隨意修改代碼,函數內修改和新增函數沒啥問題,
包括using(transctio...... 事務管理器中的代碼,只要不把CAD整崩潰了都行.
*********************************************************************************************
20191007更新vs2019到16.3.2
更新了新版本之后,無論是否有斷點都可以進行修改代碼,但是應用修改的時候就要捕捉一次斷點.
*********************************************************************************************
調試錯誤:
反復空格導致錯誤產生,彈出錯誤語句: System.ArgumentException:“Form is not active”
在這句中產生: EditorUserInteraction UI = ed.StartUserInteraction(this)
檢查是否因為允許捕捉面板的輸入,如果是空格則進行了close()退出面板.