大侠请指教:我们的软件是在一个平台上做的二次开发,用的也是winapi和C++。现在cordump了,但是drwtsn32生成不了dump文件,怎么回事呢?是不是只能在纯粹的windows平台下才可以生成呢?
我写了一个console程序:
#include "stdafx.h"int main(int argc, char* argv[])
{
try
{
int* j = (int*)(0x00000001);
*j = 54; }
catch (...)
{
}
printf("Hello World!\n");
return 0;
}
运行release版本可以生成dump文件。因此不是设置的问题。各位大侠看看还有什么技巧??指导一下,谢谢!!

解决方案 »

  1.   

    在编译时得同时生成map文件。
      

  2.   

    同时把drwtsn32设置成默认的调试器。
      

  3.   

    windows平台上可以产生,Drwtsn32可能有平台依赖性
      

  4.   

    [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AeDebug] 
    下的Debugger 项的值指定了调试器及使用的命令;Auto 项决定是否自动诊断错误, 
    并记录相应的诊断信息。 
      

  5.   

    http://hi.baidu.com/mryongzhang/blog/item/11a774edf9b513d72e2e2167.html
    使用指南
      

  6.   

    多谢楼上的大侠!我已经设成默认的了,因为我自己编的小程序,可以抓到dump文件;但是平台软件却不行
      

  7.   

    多谢 biweilun 大侠,问一下:[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AeDebug] 
    是什么路径?安装路径吗?我找不到这个路径啊。
      

  8.   

    设置好AEDEBUG。然后直接运行drwtsn32进行设置。要么你的平台程序接管了异常处理,不交给调试器了。
      

  9.   

     谢谢KeSummer 说得好像是这么回事?但是怎么设置AEDEBUG?能详细说下吗? drwtsn32我也不是太会用。
    软件有异常代码,是要把异常代码删掉吗?那我试试看