2017-02-24 37 views
0

我正在爲本機\非託管應用程序編寫C#插件(DLL庫)。問題是,當我啓動調試器時,應用程序運行並幾乎立即退出(可能是因爲我的DLL未在應用程序啓動時加載,但稍後會加載)。選中「啓用本地代碼調試」有幫助,但會顯着降低應用程序的性能,這是不理想的,因爲我只想調試我的C#代碼。有沒有什麼辦法可以在不啓用該選項的情況下調試DLL?我正在使用Visual Studio 2015社區。Visual Studio調試器等待託管代碼

+0

有兩種選擇,不確定Community Edition是否同時支持...首選項,設置單元測試項目以測試功能...第二選擇是編寫一個託管測試用具程序,該程序使用您的庫並執行功​​能。你可以從任何一個進行調試。您真正需要調試的是調用庫的託管代碼中的某些內容。 – Kevin

+0

帶'sxe'的WinDbg使得這件事變得一團糟,你沒有被綁定到VS. – Mitch

+0

我在類似情況下使用的另一個選項是暫時在庫中添加'Debugger.Launch()'行。當這行被命中時,應用程序將暫停並觸發一個提示,允許您附加一個調試器。您顯然不希望在生產版本中這樣做。 – pquest

回答

0

我已經想通了。 :) 在選項 - >調試 - >常規中啓用「使用受管理的兼容模式」。