2008-09-14 95 views
1

了解异常代码,有没有办法找到更多关于抛出的实际异常的含义?C++异常代码查找

我的问题异常: 0x64487347

异常地址:为0x1

调用堆栈显示任何信息。

我正在评论一个崩溃的.dmp,而不是真正在Visual Studio中进行调试。

回答

4

因为你正在评论崩溃转储我假设它进来了来自客户,你不能轻易地与更多的仪器重现故障。

我没有太多的帮助提供保存,注意异常代码0x64487347是ASCII“dShG”,开发人员在编写这样的幻数时常常使用例程或故障条件的首字母。

一个小Googling在适当的情况下打开了一重击为DHSG,在谷歌图书搜索功能的名称“使用Visual C++ 6”由凯特·格雷戈里。不幸的是,单是没有帮助。

+0

酷我从来不知道在异常代码中的幻数。 – 2008-09-15 00:39:51

0

如果你知道哪个块抛出了exceptioon,你可以在catch块中放置更多特定的处理程序来尝试并以这种方式隔离它吗?

你是否抛出了自己翻滚的异常?

编辑:我忘了您指出this article上的Visual C++例外,我发现是非常有用的。

罗布

6

一个真实的C++异常从微软的运行时抛出将有0xe06d7363的SEH代码(E0 + 'MSC')。你有其他的例外。

.NET使用代码0xe0434f4d(E0 +'COM')生成SEH异常。

NT的状态代码记录在ntstatus.h中,并且通常启动0x80(警告)或0xC0(错误)。最着名的是0xC0000005,STATUS_ACCESS_VIOLATION。