如何解决 Windbg 上显示的此错误?
我加载了一个 .exe 并给出了此错误:
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.
CommandLine: "C:\Users\Public\SoundLog\Code\Código Python\SoundLog\dist\SoundLog.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 0061c000 image00400000
ModLoad: 771a0000 772dc000 ntdll.dll
ModLoad: 76e10000 76ee4000 C:\Windows\system32\kernel32.dll
ModLoad: 75460000 754aa000 C:\Windows\system32\KERNELBASE.dll
ModLoad: 76550000 76619000 C:\Windows\system32\USER32.dll
ModLoad: 76b30000 76b7e000 C:\Windows\system32\GDI32.dll
ModLoad: 77310000 7731a000 C:\Windows\system32\LPK.dll
ModLoad: 76ef0000 76f8d000 C:\Windows\system32\USP10.dll
ModLoad: 75650000 756fc000 C:\Windows\system32\msvcrt.dll
ModLoad: 65ee0000 65f83000 C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.4926_none_508ed732bcbc0e5a\MSVCR90.dll
(c8.704): Break instruction exception - code 80000003 (first chance)
eax=00000000 ebx=00000000 ecx=0012fb0c edx=771e64f4 esi=fffffffe edi=00000000
eip=7723e60e esp=0012fb28 ebp=0012fb54 iopl=0 nv up ei pl zr na pe nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000246
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntdll.dll -
ntdll!LdrVerifyImageMatchesChecksum+0x633:
7723e60e cc int 3
0:000> g
然后我按 F5 并在执行程序时给出了此错误(这就是我需要解决的问题):
ModLoad: 6f980000 6ff11000 C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
ModLoad: 6f8e0000 6f97b000 C:\Windows\WinSxS\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.4927_none_d08a205e442db5b5\MSVCR80.dll
ModLoad: 752f0000 752fb000 C:\Windows\system32\profapi.dll
ModLoad: 6e670000 6f168000 C:\Windows\assembly\NativeImages_v2.0.50727_32\mscorlib\8c1770d45c63cf5c462eeb945ef9aa5d\mscorlib.ni.dll
ModLoad: 03d90000 03dac000 SoundLogC++WrapperDLL.dll
ModLoad: 03db0000 03dcc000 SoundLogC++WrapperDLL.dll
ModLoad: 6afa0000 6affb000 C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
ModLoad: 04dd0000 04e13000 msvcm90.dll
ModLoad: 04e20000 04e63000 msvcm90.dll
ModLoad: 76aa0000 76b23000 C:\Windows\system32\CLBCatQ.DLL
ModLoad: 75280000 752df000 C:\Windows\system32\sxs.dll
ModLoad: 60340000 60348000 C:\Windows\Microsoft.NET\Framework\v2.0.50727\culture.dll
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): CLR exception - code e0434f4d (first chance)
(b78.9c8): CLR exception - code e0434f4d (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): CLR exception - code e0434f4d (!!! second chance !!!)
eax=0012e2a4 ebx=e0434f4d ecx=00000001 edx=00000000 esi=0012e32c edi=002bada0
eip=75469617 esp=0012e2a4 ebp=0012e2f4 iopl=0 nv up ei pl nz ac po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000212
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\system32\KERNELBASE.dll -
KERNELBASE!RaiseException+0x54:
75469617 c9 leave
谁能告诉我这是什么以及如何解决它?
I've loaded a .exe and it gave this error:
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.
CommandLine: "C:\Users\Public\SoundLog\Code\Código Python\SoundLog\dist\SoundLog.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 0061c000 image00400000
ModLoad: 771a0000 772dc000 ntdll.dll
ModLoad: 76e10000 76ee4000 C:\Windows\system32\kernel32.dll
ModLoad: 75460000 754aa000 C:\Windows\system32\KERNELBASE.dll
ModLoad: 76550000 76619000 C:\Windows\system32\USER32.dll
ModLoad: 76b30000 76b7e000 C:\Windows\system32\GDI32.dll
ModLoad: 77310000 7731a000 C:\Windows\system32\LPK.dll
ModLoad: 76ef0000 76f8d000 C:\Windows\system32\USP10.dll
ModLoad: 75650000 756fc000 C:\Windows\system32\msvcrt.dll
ModLoad: 65ee0000 65f83000 C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.4926_none_508ed732bcbc0e5a\MSVCR90.dll
(c8.704): Break instruction exception - code 80000003 (first chance)
eax=00000000 ebx=00000000 ecx=0012fb0c edx=771e64f4 esi=fffffffe edi=00000000
eip=7723e60e esp=0012fb28 ebp=0012fb54 iopl=0 nv up ei pl zr na pe nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000246
*** ERROR: Symbol file could not be found. Defaulted to export symbols for ntdll.dll -
ntdll!LdrVerifyImageMatchesChecksum+0x633:
7723e60e cc int 3
0:000> g
Then I pressed F5 and while executing the program gave me this error (this one is what I need to solve):
ModLoad: 6f980000 6ff11000 C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
ModLoad: 6f8e0000 6f97b000 C:\Windows\WinSxS\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.4927_none_d08a205e442db5b5\MSVCR80.dll
ModLoad: 752f0000 752fb000 C:\Windows\system32\profapi.dll
ModLoad: 6e670000 6f168000 C:\Windows\assembly\NativeImages_v2.0.50727_32\mscorlib\8c1770d45c63cf5c462eeb945ef9aa5d\mscorlib.ni.dll
ModLoad: 03d90000 03dac000 SoundLogC++WrapperDLL.dll
ModLoad: 03db0000 03dcc000 SoundLogC++WrapperDLL.dll
ModLoad: 6afa0000 6affb000 C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll
ModLoad: 04dd0000 04e13000 msvcm90.dll
ModLoad: 04e20000 04e63000 msvcm90.dll
ModLoad: 76aa0000 76b23000 C:\Windows\system32\CLBCatQ.DLL
ModLoad: 75280000 752df000 C:\Windows\system32\sxs.dll
ModLoad: 60340000 60348000 C:\Windows\Microsoft.NET\Framework\v2.0.50727\culture.dll
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): CLR exception - code e0434f4d (first chance)
(b78.9c8): CLR exception - code e0434f4d (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): C++ EH exception - code e06d7363 (first chance)
(b78.9c8): CLR exception - code e0434f4d (!!! second chance !!!)
eax=0012e2a4 ebx=e0434f4d ecx=00000001 edx=00000000 esi=0012e32c edi=002bada0
eip=75469617 esp=0012e2a4 ebp=0012e2f4 iopl=0 nv up ei pl nz ac po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000212
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\system32\KERNELBASE.dll -
KERNELBASE!RaiseException+0x54:
75469617 c9 leave
Can anyone tell me what is this and how can I solve it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您的第一个问题是您没有设置符号路径。您可以按照消息中的建议运行“.symfix”,以使用 Microsoft 的公共符号服务器自动选择符号路径。第二个是未处理的异常。您需要首先获得正确的符号,然后运行“k”来获取堆栈跟踪,这应该可以让您更深入地了解正在发生的情况。
Your first issue is that you do not have a symbol path set. You can run ".symfix", as suggested in the message, to automatically select a symbol path using Microsoft's public symbol server. The second is an unhandled exception. You need to get proper symbols first, and then run "k" to get a stack trace that should give you more insight into what is happening.
您需要提供调试符号的路径。这可以通过 .sympath 命令来完成。
其他信息位于使用 Microsoft 符号服务器获取调试符号文件
You need to provide the path of the debug symbols. This can be done via the .sympath command.
Additional information is at Use the Microsoft Symbol Server to obtain debug symbol files
第一条错误消息告诉您,您的符号路径设置不正确。第二个错误是未处理的异常,但由于您的符号未加载,因此很难判断发生了什么。
如果您在调试时可以访问互联网,则可以使用
.symfix
命令将符号路径设置为指向 Microsoft 的符号服务器。这将为您提供 Microsoft DLL 的公共符号。确保在开始调试之前执行此操作。The first error message is telling you, that your symbol path is not set up correctly. The second error is an unhandled exception, but since your symbols are not loaded, it is hard to tell what is going on.
If you have internet access while debugging you can use the
.symfix
command to set the symbol path to point to Microsoft's symbol server. That will give you public symbols for Microsoft DLLs. Make sure to do this before you start debugging.