代码之家  ›  专栏  ›  技术社区  ›  hamishmcn

应用程序不再工作-有任何想法

  •  0
  • hamishmcn  · 技术社区  · 16 年前

    我不知道为什么我的应用突然停止工作-也许社区的集体意识可以帮助…
    背景:
    我有一个很大的申请,最近才开始工作。现在,当我尝试运行它时,会得到错误“应用程序未能正确初始化(0xc000005)”。
    这种情况发生了 之前 应用程序到达 _tmain() . 它在发布和调试版本中都会发生。我尝试过清理和重建项目,并重新启动了我的电脑。

    调用堆栈只显示kernel32.dll和ntdll.dll的条目。
    输出窗口显示:

    First-chance exception at 0x00532c13 in a.exe: 0xC0000005: Access violation reading location 0xabababdb.
    First-chance exception at 0x7c964ed1 in a.exe: 0xC0000005: Access violation.
    Unhandled exception at 0x7c964ed1 in a.exe: 0xC0000005: Access violation.
    

    有什么想法吗?

    编辑:
    好吧-发现问题了-它 动态链接库相关
    我的应用程序使用共享的dll a.dll和b.dll(及其他)
    A.dll几乎没有任何变化( 使用B.DLL )
    B.dll今天早上被另一个开发人员更改,A.dll没有重建。

    depends.exe没有显示任何缺少的dll,但是a.dll由于更改为b.dll而不再工作。

    5 回复  |  直到 14 年前
        1
  •  1
  •   Wouter van Nifterick Andrey    16 年前

    应用程序可能需要某些.dll文件,但找不到该文件,或者不允许访问该文件。

    您使用的是某些DLL,还是任何类型的运行库?

        2
  •  2
  •   Drake    16 年前

    此链接似乎将三个问题描述为可能的原因:

    • 数据执行预防
    • 驱动程序或系统更新
    • 故障RAM

    详情如下: http://www.updatexp.com/0xC0000005.html

    如果你找到原因请告诉我们

        3
  •  1
  •   z -    16 年前

    检查权限?

        4
  •  1
  •   Sergio    16 年前

    可能是Windows更新弄乱了系统。

        5
  •  1
  •   Cj Anderson    16 年前

    您是否使用了SysInternals套件来检查发生了什么?这将帮助您精确定位任何故障,例如,如果它正在访问文件、DLL或注册表项,并且访问被拒绝。

    如果你把程序安装到别处,它能正常工作吗?(另一台计算机)这可能有助于隔离问题。

    --您可以检查事件日志(应用程序、系统等)以查看是否记录了有关该问题的任何信息。

    --另一件事…自从你更新了龟,也许它使用了一个你的应用也使用的DLL。您应该检查是否有任何DLL版本发生了更改。你可以卸载那个新版本的乌龟。或者更激烈,尝试注册表还原。( http://support.microsoft.com/kb/322756 )或者如果你使用幽灵/诅咒恢复到你的操作系统的早期图像。

    最后,我建议你要非常具体地找出问题所在。我在解决问题时提到了一些激烈的措施,但希望您能具体地(即,dll ver x导致问题)缩小范围。否则,对于应用程序的客户机或用户来说,遇到同样的事情会很糟糕。