3

GDBでは、のようなコマンドを発行することで、デバッグしている実行可能ファイルの一部である関数を呼び出すことができますcall foo("123")

OllyDbg(またはおそらく他の主にWindowsデバッガー)で同じことを行うにはどうすればよいですか?

4

2 に答える 2

5

OllyDbgを使用してそれを行う方法はわかりませんが、他のWindowsデバッガーについて言及しているので.call、WinDbgでコマンドを使用できます。

0:001> .call ABC!DoSomething(1,2)
Thread is set up for call, 'g' will execute.
WARNING: This can have serious side-effects,
including deadlocks and corruption of the debuggee.
0:001> r
eax=7ffde000 ebx=00000001 ecx=00000001 edx=00000003 esi=00000004 edi=00000005
eip=10250132 esp=00a7ffbc ebp=00a7fff4 iopl=0         nv up ei pl zr na po nc
cs=001b  ss=0023  ds=0023  es=0023  fs=0038  gs=0000             efl=00000246
ABC!DoSomething:
10250132 55               push    ebp
0:001> dd esp
00a7ffbc  00a7ffc8 00000001 00000002 ccfdebcc

それについての最も良い説明は、古い新しいものからです。

于 2012-11-07T13:39:09.280 に答える
0

デフォルトのインストールでは、OllydbgはエクスポートがあるDLLに対してのみこれを実行できます。

  • デバッグ>DLLエクスポートの呼び出し

エクスポートのない実行可能ファイルとDLLの場合、これを行うにはプラグインを作成する必要があります。

于 2013-01-28T23:13:58.277 に答える