3

我正在尝试从 Go 语言调用 Windows COM 接口的方法。我怀疑我在调用调用的方式上做错了,并想看看在调用过程中寄存器是如何变化的。

但是我很难做到,因为我似乎无法在 WinDBG 中设置断点。命令“bu 64b6ea43”最终无法正常工作,并出现错误“仅部分 ReadProcessMemory 或 WriteProcessMemory 请求已完成”。完整的消息如下。

Microsoft (R) Windows Debugger Version 6.2.8400.0 X86
Copyright (c) Microsoft Corporation. All rights reserved.

CommandLine: C:\Users\ccherng\Go\bin\error.exe
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path.           *
* Use .symfix to have the debugger choose a symbol path.                   *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is: 
ModLoad: 00400000 00971000   image00400000
Unable to insert breakpoint 1 at 64b6ea43, Win32 error 0n299
"Only part of a ReadProcessMemory or WriteProcessMemory request was completed."
bp1 at 64b6ea43 failed
WaitForEvent failed
eax=00415a7b ebx=7ffdd000 ecx=00000000 edx=00000000 esi=00000000 edi=00000000
eip=77b37098 esp=0006fff0 ebp=00000000 iopl=0         nv up ei pl nz na po nc
cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000200
77b37098 89442404        mov     dword ptr [esp+4],eax ss:0023:0006fff4=00000000
4

2 回答 2

0

对我来说,这是因为 ASLR 的问题。运行 editbin /DYNAMICBASE:NO NameOfDetectedExe.exe 修复它。

于 2020-10-04T21:02:05.227 回答
-4

切换到有效的 Ollydbg。得知 WinDbg 很糟糕。

于 2012-07-30T20:41:15.213 回答