应用程序错误
“0x30313845”指令引用的“0x30313845”内存。该内存不能为“read”应用程序在有的机子上双击会有这个错误提示,
怎么查到底是什么原因导致的呢?

解决方案 »

  1.   

    可能内存越界。如果debug版本没问题,release有问题,可能你内存没初始化。
      

  2.   

    windbg 试下还有个工具,可以检测使用非法资源的,具体忘了总之,有些工具还是很强大的,可以帮助定位这类问题
      

  3.   

    我编译的是release版本的,
    有的机子运行没任何问题,但是有的会出现这个问题
    debug下当然调试时没问题,我才release的啊
      

  4.   

    1.有没有调试环境?有的话调试一下了。(估计是没有,有的话就不会发帖了)2.启动华生,开始->运行->drwtsn32.exe, 设置进行转储. 然后启动程序,让他崩溃。看华生的转储.
      (分析时,注意xxd.dll的版本) 据我分析,10有8,9是库版本不对.3.有没有控件没注册什么的?
      

  5.   

    1、安装的机子没有调试程序的
    2、我用的是static library连接的库
    3、安装程序一共做两步:一是注册一个IE插件的dll,二是安装一个应用程序
       出问题的是应用程序 
      

  6.   

    到“有的机子上双击会有这个错误提示”去Debug。
      

  7.   

    有的机子会,有的机子会,而软件又是相同,说明两台机子中已存在的东西差异引起,
    但又是什么原因了呢?如果说两台机子中有的DLL没有,如MFC程序需要的一些基本C语言运行库DLL等,如果是这些DLL两台电脑不相同,但是应该会提示没有找到***.dll的。所以应该不是MFC等基本DLL不存在。
    应该是程序本身有些不确定性的代码引起的。看提示是某个指针出错了,找到问题还是应该要调试才能知道问题出在哪?