你的應用進入了中斷狀態,但當前未執行任何受選定除錯引擎支援的程式碼(例如,僅在執行本機執行時程式碼)
阿新 • • 發佈:2018-11-26
錯誤資訊
環境
IDE:VS2017,除錯外部程式(程式碼為外部程式載入外掛)
外部程式API:.NetFramework 4.0;
外掛:.NetFramework 3.5、C++(本機程式碼);
除錯模式選擇:託管(v4.6、v4.5、v4.0)
錯誤截圖如下:
錯誤說明
僅在外掛UI上執行的程式碼會出現這種情況。
在外掛入口,到UI顯示這段時間可以正常進入斷點。當UI顯示之後,在外掛UI上操作的程式碼都無法進入斷點,會進入無法除錯的中斷。
解決方案
修改外部程式配置檔案(exe檔案同名+.config字尾),修改啟動的.NetFramework為3.5,啟動除錯,即可正常進入斷點。
如:外部程式為:xxx.exe;配置檔案則為:xxx.exe.config;
配置修改如下:
初始: <configuration> <startup useLegacyV2RuntimeActivationPolicy="true"> <supportedRuntime version="v4.0"/> </startup> <runtime><generatePublisherEvidence enabled="false"/> </runtime> </configuration> 改為: <?xml version="1.0"?> <configuration> <startup useLegacyV2RuntimeActivationPolicy="true"> <supportedRuntime version="v2.0.50727"/> </startup> <runtime><generatePublisherEvidence enabled="false"/> </runtime> </configuration>