我尝试使用WinDbg调试.NET控制台应用。我通常通过File -> Open Executable
执行此操作,然后WinDbg将加载选定的exe。这适用于提到的.NET应用程序。但现在我每次都得到以下输出:
Microsoft (R) Windows Debugger Version 6.11.0001.404 X86
Copyright (c) Microsoft Corporation. All rights reserved.
CommandLine: "C:\xxxxxxx\MultiTS\bin\Release\SimepleTS.exe"
Symbol search path is: D:\xxxxxx\Debug
Executable search path is:
ModLoad: 00400000 00408000 SimepleTS.exe
Unable to insert breakpoint 0 at 036a3ff7, Win32 error 0n299
"Only part of a ReadProcessMemory or WriteProcessMemory request was completed."
bp0 at 036a3ff7 failed
WaitForEvent failed
eax=00402f7e ebx=7ffd8000 ecx=7c910060 edx=7c90e920 esi=0079faa0 edi=00d4f558
eip=7c810705 esp=0012fffc ebp=7c91005d iopl=0 nv up ei pl nz na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00000200
7c810705 ?? ???
首先启动应用程序并附加到进程也不起作用。但是,打开其他.NET可执行文件,例如我所拥有的WinForm项目仍在正常运行。
有任何疑问,这里有什么问题?
答案 0 :(得分:4)
我的猜测是你之前在一个模块上使用了一个旧的断点,该模块像以前一样被加载到不同的地址。由于工作空间已保存,因此bp(它必须是bu
- 也会保存到工作空间中)。清除bp(bc0)并重新保存工作区(如有必要)。
答案 1 :(得分:1)
您的.NET应用程序是否编译为32位或64位应用程序?我正在网上阅读关于这个错误的很多内容,一个流行的情况是人们试图使用32位WinDbg调试64位图像(好吧,这就是它的样子)。