我正在使用C#,.NET 4.0和DevExpress组件开发WinForms应用程序。
在Windows 7上,一切正常。
在Windows XP SP3上, 显示并关闭SaveFileDialog几秒钟后,应用程序将以静默方式退出。
没有未处理的异常,应用程序退出事件不会触发,我只在Visual Studio输出窗口中收到消息:
The program '[3164] MyApp.vshost.exe: Managed (v4.0.30319)' has exited with code 0 (0x0).
导致此问题的代码非常简单:
saveFileDialog1.ShowDialog();
你有什么想法为什么会这样?我该如何排除故障并解决此问题?
答案 0 :(得分:1)
在项目属性窗口中启用非托管调试。 并确保将Visual Studio设置为中断所有异常(请检查Debug \ Exceptions菜单中的“Throw”选项)。
然后再次运行您的应用程序。 VS现在应该打破异常 - 它应该是一个shell扩展或文件处理程序,导致你的应用程序失败。
答案 1 :(得分:0)
您可以尝试在新的主题中调用SaveFileDialog
,并告诉我们它是否有效。
您可以拥有A first chance exception of type 'System.Threading.ThreadAbortException' occurred in System.Windows.Forms.dll
,这会导致您的应用程序崩溃。
我认为这是因为当前的Thread不适合运行SaveFileDialog
。
建议:检查您是否正在处理线程(为了纠正某些线程),并尝试启动新线程以启动所需的文件对话框。