0

私は Windbg をまったく初めて使用することを認めます。うまくいけば、これはインターネット上で答えを見つけることができなかった初歩的な質問です。

とにかく、ここに私のシンボル パスがあります: SRV*c:\symbols* http://msdl.microsoft.com/download/symbols

作成した小さなコマンド ライン プログラムがあるので、[ファイル] -> [実行可能ファイルを開く] に移動します。

.exe を選択し、その画面から 2 つの引数を指定します。次に、コマンド ウィンドウに移動し、'g' を押してプログラムを実行します。次の出力が得られます。

CommandLine: C:\Users\me\devcode\folder\program\myprogram.exe input1 outputdir
Symbol search path is: SRV*c:\symbols*http://msdl.microsoft.com/download/symbols
Executable search path is: 
ModLoad: 01320000 01367000   image01320000
ModLoad: 779b0000 77b30000   ntdll.dll
ModLoad: 76e30000 76f40000   C:\Windows\syswow64\kernel32.dll
ModLoad: 76790000 767d7000   C:\Windows\syswow64\KERNELBASE.dll
(19a8.1cf0): Break instruction exception - code 80000003 (first chance)
eax=00000000 ebx=00000000 ecx=cb5b0000 edx=0026ddf8 esi=fffffffe edi=00000000
eip=77a50fab esp=001af830 ebp=001af85c iopl=0         nv up ei pl zr na pe nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000246
ntdll!LdrpDoDebuggerBreak+0x2c:
77a50fab cc              int     3
0:000> g
(19a8.1cf0): Stack overflow - code c00000fd (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
*** ERROR: Module load completed but symbols could not be loaded for image01320000
eax=008872a8 ebx=7efde000 ecx=008872a8 edx=00887e60 esi=00000000 edi=00000000
eip=01327076 esp=000b2fe4 ebp=000b3028 iopl=0         nv up ei pl nz na pe nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010206
image01320000+0x7076:
01327076 53              push    ebx

私が最も懸念しているのは、次の行です。

*** ERROR: Module load completed but symbols could not be loaded for image01320000

image01320000 はどこから来たのですか? これは私の実行可能ファイルの名前であるべきではありませんか? 作成された .pdb ファイルがあります。

はい、プログラムはデバッグ モードでビルドされています。スタック トレースを取得しようとしているだけなので、報告されているスタック オーバーフローのソースを見つけることができます。

ありがとうございました!

4

0 に答える 0