簡體   English   中英

C#和MASM dll庫如何調試?

[英]C# and MASM dll library how to debug?

描述

我的項目有一個問題,就是說-我無法調試加載到用C#編寫的程序中的dll(以MASM編寫)。 我的確在dll的過程中的各個位置都留下了斷點,但是什么也沒有發生。 程序執行只是通過該過程而不會停止。

我使用Visual Studio 2010,並具有以下解決方案的結構:

Solution
|
+--+ the masm dll project
|  |
|  +- *.asm 
|  |
|  +- *.def
|
+--+ C# dll library poject 
|  
+--+ my C# project

因此,我可以訪問dll的源代碼,並且它的項目與調用項目在同一解決方案內。

但是,當我在C#庫項目中設置斷點時,它可以工作。

而且我仍然無法調試這個錯誤。 誰能指出我要解決的問題?

卡姆福德給出

為了能夠調試非托管dll(不僅是masm,nasm等),您需要做的就是啟用未管理的代碼調試,該操作通過以下方式完成(在VS2010中):

啟用非托管代碼的調試

  1. 在解決方案資源管理器中選擇一個項目后,在“項目”菜單上,單擊“屬性”。
  2. 單擊調試選項卡。
  3. 選擇啟用非托管代碼調試復選框。

(從這里開始

您需要在c#項目的“調試”設置中啟用非托管代碼調試。 如果仍然不能解決問題,因為您擁有asm代碼,則可以在asm中插入int 3作為硬編碼的中斷指令,然后重新生成dll。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM