2011-12-05 43 views
0

我正在編寫一個Silverlight應用程序,該應用程序利用添加到Silverlight 5中的P/Invoke功能。我編寫了一個本機.dll,它從託管代碼獲取位圖,使用第三方庫(OpenCV)來處理它。在Silverlight 5應用程序中調試本機.dll

我的.dll被正確加載並正常工作,但我無法打到任何設置在本機代碼中的任何斷點。 Visual Studio表示,由於沒有爲文檔加載符號,斷點不會被擊中。我試圖將相應的.pdb文件複製到加載.dll的路徑,但它沒有幫助。此外,調試時,模塊窗口中不會顯示.dll,因此我無法手動加載符號。

是否有任何其他方式讓調試器加載所需的符號?

+0

檢查項目調試設置,請參見[「啓用非託管代碼調試」](http://stackoverflow.com/a/5631560/1010666)。 –

回答

1

當您啓動一個SL5應用程序時,VS啓動一個.NET調試器。該調試器無法調試本機進程。

您可以啓動另一個Visual Studio實例,並使用調試菜單下的「附加到進程」對話框,並將本機調試器附加到目標進程。請注意,我不確定是否可以在同一個進程中同時附加Native和.NET調試器。

相關問題