我使用Visual Studio在调试模式下启动我的程序,但是当它崩溃时,Visual Studio似乎没有捕获到错误。我根本没有获得执行堆栈。
当我启动应用程序时,我可以在Visual Studio的输出中看到此消息:
'C:\Windows\SysWOW64\ntdll.dll', Cannot find or open the PDB file
有人可以帮我吗?我真的不知道我能给你什么信息,所以请问!
感谢。
配置: Visual Studio C ++ 2010 Premium Windows Server 2008
在输出中,最后的消息是(法语抱歉,但如果需要,我可以翻译一些句子)
'app.exe' : Chargé 'C:\Windows\SysWOW64\msimg32.dll', Cannot find or open the PDB file.
Exception de première chance à 0x0048d6f7 dans app.exe : 0xC0000005: Violation d'accès lors de la lecture de l'emplacement 0x0000aa96.
'app.exe' : Déchargé 'C:\Windows\SysWOW64\msimg32.dll'
'app.exe' : Déchargé 'C:\Windows\SysWOW64\WSHTCPIP.DLL'
'app.exe' : Déchargé 'C:\Windows\SysWOW64\nlaapi.dll'
'app.exe' : Déchargé 'C:\Windows\SysWOW64\NapiNSP.dll'
'app.exe' : Déchargé 'C:\Windows\SysWOW64\winrnr.dll'
'app.exe' : Déchargé 'C:\Windows\SysWOW64\FWPUCLNT.DLL'
Le thread 'Thread Win32' (0x1840) s'est arrêté avec le code 1 (0x1).
Le thread 'Thread Win32' (0x4740) s'est arrêté avec le code 1 (0x1).
Le thread 'Thread Win32' (0x2554) s'est arrêté avec le code 1 (0x1).
Le thread 'Thread Win32' (0x743c) s'est arrêté avec le code 1 (0x1).
Le thread 'Thread Win32' (0x3f2c) s'est arrêté avec le code 1 (0x1).
Le programme '[1780] app.exe: Natif' s'est arrêté avec le code 1 (0x1).
注意: PDB上的主题:PDB auto download
答案 0 :(得分:0)
有时调试器难以解码调用堆栈。您可以通过下载调试器需要了解堆栈的所有PDB文件来帮助调试器。调试时必须连接互联网。
当出现异常时,转到调用堆栈,右键单击某些无法识别的行,例如在带有ntdll.dll或user32.dll的行上,并在菜单中选择Load Symbols From> Microsoft符号服务器。调试器现在将在调用堆栈中有更多信息。
重复此过程,直到您在调用堆栈上有足够的信息来查找代码中的行。