当我从Visual Studio中运行命令行应用程序时,一个命令总是失败并出现以下错误:
The program '[7316] MyProgram.vshost.exe' has exited with code -1073741819 (0xc0000005) 'Access violation'.
当我调试代码时,这发生在最后一个执行行之后。这意味着应用程序正常运行它然后崩溃。当我构建项目并在命令行中运行exe文件时,我没有错误,它工作正常。
该项目使用第三方dll,而AFAIK又调用C或C ++ dll,例如。没有用.Net编码的东西。
我的问题:我可以忽略此错误,因为应用程序在构建时工作正常吗?如果没有,可能是什么潜在的问题,我该如何解决?
答案 0 :(得分:2)
我可以忽略此错误,因为应用程序在构建时工作正常吗?
我不会忽视这个问题。如果您的应用程序在关闭期间失败,则可能在解析对象并将句柄返回到Windows(可能是后者)时出现问题。这可能最终使您进入生产场景。
如果没有,可能是什么潜在问题,我该如何解决?
如上所述,我认为释放句柄是个问题。如果你使用一些用C ++编写的第三方DLL,可能会出现问题。尝试设置一些日志记录,看看异常的堆栈跟踪是什么。这可能会让您了解问题的原因。也许这甚至是一个问题,您可以向DLL的供应商报告。