我正在使用C#对应用程序进行编码,当我单击Visual Studio C#Express 2010中的“运行”按钮时,它运行得非常好。但是,当我转到Debug - >构建解决方案,运行.exe文件后,它显示“XXX.EXE已停止工作......”
我已经插入了断点并注释掉了我的代码块,重新构建了项目,并再次运行以尝试隔离问题,但我无法弄清楚导致这种情况的原因。它在调试模式下运行良好的事实很奇怪。
答案 0 :(得分:2)
有些事情要尝试:
检查系统事件日志中的ASP.NET错误。
尝试将构建设置为Release模式并使用Run - no debugging。看看它是否崩溃了。在崩溃期间/之后观察输出和其他窗口是否有任何错误。根据这些结果,检查调试和发布配置中的解决方案和项目属性是否正确。
您还可以在外部启动调试模式,而不是将Visual Studio调试器附加到进程。但当然,如果它在启动时崩溃而不起作用。
您可以添加Debug.Assert行以查看是否可以获取其中一行。
将您的代码包装在一个大的try / catch中,并确保您的catch处理程序以某种方式为您报告或记录完整的异常。
添加日志记录是个好主意。您可以登录到文件或系统事件日志。我建议使用log4net或类似的日志记录工具。
答案 1 :(得分:1)
尝试将您的应用程序添加到防病毒白名单或排除列表中。这是McAfee和Avast的已知问题!
答案 2 :(得分:0)
我可能误解了这个问题,但如果您尝试从其.exe文件(最初位于Visual Studio #### \ Projects \ ProjectName \ bin \ x86 \ Debug \ ProjectName.exe)运行您的应用程序,您必须确保该.exe文件位于该原始目录中。你不能移动它。我遇到了与XNA项目类似的问题。如果要将.exe文件移动到其他位置,可以创建快捷方式,但不要移动它。如果您尝试从其他位置运行它,或者从该目录移动任何其他文件,您将收到与您描述的错误消息完全相同的错误消息。
另请注意,某些Visual Studio项目(如XNA项目)不会作为独立项运行。构建项目不会将它们导出为独立格式,它们只能在安装了VS和所有项目框架的计算机上运行,并且其.exe文件必须保留在原始位置。
答案 3 :(得分:0)
我 只是 遇到了这个问题,并且当我将应用程序更改为基于程序的控制台时,我会看看是否可以通过控制台窗口发现错误停止崩溃,我注释掉所有的控制台写入并将其设置回一个Windows窗体应用程序,瞧,现在运行正常。
- 我知道这是一个老帖子,但它是公开的,没有答案所以我认为这是公平的游戏。