2016-12-03 201 views
1

我已被分配到Windows服務項目上工作。我使用安裝程序類(ProjectInstaller.cs)將其安裝在我的機器中。我想調試源代碼,有時需要在調試模式下進行更改。我通過調試菜單連接調試進程的正常工作的項目,但同時我想編輯或繼續的源代碼就拋出一個錯誤:Windows服務:託管兼容模式不支持編輯並繼續

管理兼容性模式不支持編輯並繼續

我用Google搜索,並試圖噸的解決方案,但沒有他們的工作對我來說,他們夫婦的情況如下:

  • 未選中使用從管理工具兼容模式 - >選項

  • 未經檢查的託管從調試兼容模式 - >附加到進程 - >附接至 - >選擇...

  • 從調試經過託管(V4.6,V4.5,V4.0) - >附加到 過程 - >附加到 - >選擇...

  • 在Project Build中與平臺目標一起玩過。

  • 新增{351668CC-8477-4fbf-BFE3-5F1006E4DB1F}在我的.csproj文件中的字段

錯誤消息取決於不同的解決方案,我實現了。

下面的鏈接我最後一次嘗試:

https://blogs.msdn.microsoft.com/visualstudioalm/2013/10/16/switching-to-managed-compatibility-mode-in-visual-studio-2013/

我猜測:最後一個沒有工作,因爲我沒有一個exe項目爲我服務,而不是我已經實現ProjectInstaller。 cs類並通過命令提示符手動安裝它。

歡迎任何建議/建議。

+1

使用調試>附加將*永不*給你E + C,你必須停止嘗試。通常,調試服務的最佳方式是編寫代碼,以便它可以首先作爲控制檯模式應用程序運行。 –

回答

4

編輯並繼續需要許多對用戶不明顯的因素。您的情況根本不受支持(主要用於附加案件)。

請參閱Supported Code Changes (C#)在MSDN中。特別是:

編輯並繼續不在以下調試方案可供選擇:[...]

調試已經從Debug菜單中選擇啓動附加到的,而不是運行的應用程序的應用程序。

1

爲每個調試附加我的過程對我來說是頭痛的事。

想和大家分享的是通過編寫一個簡單的方法,把它在的Main()方法裏面Program.cs的節省了我很多時間的鏈接。

這也讓我靈活地編輯和繼續我的代碼,就像WinForm/Web Form一樣簡單。愛它。

https://coding.abel.nu/2012/05/debugging-a-windows-service-project/