Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VisualStudioC++执行堆栈在我的程序崩溃后没有出现_C++_Visual Studio 2010_Debugging_Callstack - Fatal编程技术网

VisualStudioC++执行堆栈在我的程序崩溃后没有出现

VisualStudioC++执行堆栈在我的程序崩溃后没有出现,c++,visual-studio-2010,debugging,callstack,C++,Visual Studio 2010,Debugging,Callstack,我使用VisualStudio以调试模式启动程序,但当程序崩溃时,VisualStudio似乎没有捕捉到错误。我根本没有得到执行堆栈 启动应用程序时,我可以在Visual Studio的输出中看到以下消息: 'C:\Windows\SysWOW64\ntdll.dll', Cannot find or open the PDB file 有人能帮我吗?我真的不知道我能给你什么信息,所以请问 谢谢 配置: Visual Studio C++ 2010高级版 Windows server 2008

我使用VisualStudio以调试模式启动程序,但当程序崩溃时,VisualStudio似乎没有捕捉到错误。我根本没有得到执行堆栈

启动应用程序时,我可以在Visual Studio的输出中看到以下消息:

'C:\Windows\SysWOW64\ntdll.dll', Cannot find or open the PDB file
有人能帮我吗?我真的不知道我能给你什么信息,所以请问

谢谢

配置: Visual Studio C++ 2010高级版 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文件来帮助调试器。调试时必须连接internet

引发异常时,转到调用堆栈,右键单击某些无法识别的行,例如,在带有ntdll.dll或user32.dll的行上,然后在菜单中选择“从>Microsoft符号服务器加载符号”。调试器现在将在调用堆栈中包含更多信息


重复此过程,直到您有足够的关于调用堆栈的信息来查找代码中的行。

这样它最终会在提到的文件中显示调用堆栈,例如ntdll.dll?或者也可以在我自己的程序中找到?调试时我没有internet,我将尝试手动下载PDB文件。您必须在调用堆栈中至少有一些项,以便可以在它们上执行右键单击。您还可以编写转储文件,然后从其他具有internet连接的计算机进行调试。菜单调试>另存转储为。我从来没有试过,但有可能它会起作用。我从另一台机器上自动下载了一些PDB。我需要完成它,但问题是我没有任何调用堆栈。。。在菜单Debogage->Windows中,我看不到调用堆栈异常由代码处理,因此调试器没有理由停止程序。您可以强制它停止调试+异常,勾选Win32异常的抛出复选框。