回答
更多的可能性:
- (简易)使用procmon,看看有什么资源(文件,注册表,等等),该程序正在访问或得到拒绝访问
- (比较难)使用简单的调试器像WinDbg or ProcExp
- (最难)安装一个大醇”调试器进程(attach Visual Studio's debugger from the EXE's Registry settings;或检查出big guide to debugging in production)
1)将事件处理程序附加到AppDomain.UnhandledException事件并记录异常对象。
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
2)安装一个线程异常处理
Application.ThreadException +=
new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
WPF和Silverlight应用程序使用更多的异常处理程序,例如分别是Application.DispatcherUnhandledException和Application.UnhandledException,但在这种情况下这些不是您感兴趣的。我包括他们的完整性。
它被处理 - 没有日志记录。 – alex 2009-10-20 13:21:31
修改代码以在每个相关部分之后包含日志步骤,然后检查日志文件以查看其发生的位置。
如果它甚至不启动,那么这会告诉你的东西太...
你可以尝试使用ELMAH,这将记录几乎所有未处理的异常:
http://www.hanselman.com/blog/ELMAHErrorLoggingModulesAndHandlersForASPNETAndMVCToo.aspx
我们也有类似的问题。我们有一个AppDomain.UnhandledException的事件,但它甚至跳过了这个。原来,这是我们测试剪贴板内容时导致的SystemAccessViolation。
如果它是类似的(EG跳过AppDomain.UnhandledException事件),那么我会建议记录来自您的流程之外的互操作性和“敌对”数据调用的所有内容,并且代码将全部检查。我们花了几个星期的时间来追踪它,并修改了一行。
另外,打开VS中的MDAs并运行你的程序,看看你是否得到错误。
- 1. C4模板刚刚消失
- 2. WM_SETFOCUS,获取刚刚失去焦点的应用程序
- 3. UITableView单元刚刚消失回调?
- 4. 如何找到我刚刚用protobuf-net反序列化的消息?
- 5. 如何验证应用程序刚刚启动?
- 6. 如何判断ClickOnce应用程序是否刚刚更新?
- 7. 如何在刚刚插入的记录上解决mysqli-mariaDB更新失败
- 8. PHP程序刚刚停止
- 9. R.java文件刚刚失踪
- 10. 刚刚读取条形码的应用程序
- 11. 检测刚刚启动的应用程序
- 12. iTunes Connect - 无法删除我刚刚创建的应用程序
- 13. 刚刚启动后的Android应用程序
- 14. 刚刚在应用程序开始处的内存警告
- 15. 无法让我的应用程序工作。刚刚崩溃
- 16. 谷歌应用程序脚本和GmailApp:刚刚收到新消息
- 17. 刚刚使用网页构建IOS应用程序
- 18. 如何使这个简单的iPhone应用程序:刚刚启动邮件
- 19. 确定是否刚刚下载应用程序
- 20. Cordova - 检查应用程序是否刚刚启动
- 21. 刚刚重新启动应用程序后,UITableView单元更新
- 22. 刚刚看到在Android Studio中调试应用程序输出
- 23. 动作栏中的图标刚刚消失
- 24. Python程序刚刚结束循环
- 25. 如何删除刚刚在Android程序中拍摄的照片
- 26. 如何在刚刚产生用来取消固定节点
- 27. 如何解决所有合并冲突以支持刚刚弹出的存储?
- 28. 帮助!我的jQuery手风琴刚刚分手了。如何解决它?
- 29. Django会话刚刚登录后会间歇性消失
- 30. 刚刚完成动画后图表消失
您是否进行任何p/invoke调用? – 2009-10-20 13:19:07
不是直接。我们使用Crystal Reports,它可以进行这种调用。无论如何,应用程序工作了一年没有问题。 – alex 2009-10-20 13:20:25
你使用任何COM组件吗? – 2009-10-20 13:25:26