我有一個老的DLL寫在Visual Studio 6中,我從C#寫的Visual Studio 2010中調用。該DLL工作不正常,我想調試到它。我怎樣才能做到這一點?我有源代碼項目,但看不到我可以如何進入它。調試從C#調用VC++ 6 DLL#
注意:當我說「不起作用」時,對DLL的調用會成功,並且會在失敗之前通過DLL中的代碼獲得一些方法,但我想要精確地追蹤到哪裏。
我有一個老的DLL寫在Visual Studio 6中,我從C#寫的Visual Studio 2010中調用。該DLL工作不正常,我想調試到它。我怎樣才能做到這一點?我有源代碼項目,但看不到我可以如何進入它。調試從C#調用VC++ 6 DLL#
注意:當我說「不起作用」時,對DLL的調用會成功,並且會在失敗之前通過DLL中的代碼獲得一些方法,但我想要精確地追蹤到哪裏。
打開Visual C++的Dll項目,在需要的地方設置斷點。在調試會話的項目屬性Debug,Executable中,輸入使用此Dll的.NET可執行文件。開始調試(Go)。調用VC++函數時,調試器會中斷。使用這種方法,您只能調試非託管VC++代碼。
另一種方法是以混合調試模式從.NET客戶端開始調試。將VC++項目添加到解決方案並重建它以調試託管代碼和非託管代碼。
你已經試過了什麼?例如,你有沒有試過將VS6附加到調試? –
我已經嘗試將VC6調試器附加到C#應用程序,但該進程不顯示在生成 - >調試 - >附加到進程 – Jonnster