.net SaveFileDialog在WindowsXP上以静默方式崩溃WinForms应用程序

.net SaveFileDialog在WindowsXP上以静默方式崩溃WinForms应用程序,.net,winforms,c#-4.0,windows-xp,showdialog,.net,Winforms,C# 4.0,Windows Xp,Showdialog,我正在使用C#、.NET4.0和DevXPress组件开发WinForms应用程序 在Windows7上,一切正常 在Windows XP SP3上, 显示并关闭SaveFileDialog几秒钟后,应用程序将以静默方式退出 没有未处理的异常,应用程序退出事件将不会触发,我只在Visual Studio输出窗口中收到消息: The program '[3164] MyApp.vshost.exe: Managed (v4.0.30319)' has exited with code 0 (0x0

我正在使用C#、.NET4.0和DevXPress组件开发WinForms应用程序

在Windows7上,一切正常

在Windows XP SP3上, 显示并关闭SaveFileDialog几秒钟后,应用程序将以静默方式退出

没有未处理的异常,应用程序退出事件将不会触发,我只在Visual Studio输出窗口中收到消息:

The program '[3164] MyApp.vshost.exe: Managed (v4.0.30319)' has exited with code 0 (0x0).
导致此问题的代码非常简单:

saveFileDialog1.ShowDialog();

你知道为什么会这样吗?如何排除故障并修复此问题?

在“项目属性”窗口中启用非托管调试。 并确保Visual Studio设置为在所有异常时中断(请选中“调试\异常”菜单中的“抛出”选项)


然后再次运行应用程序。VS现在应该会因异常而中断-应该是一个shell扩展或文件处理程序导致应用程序失败。

您可以尝试在一个新的线程中调用您的
SaveFileDialog
,并告诉我们它是否有效

在System.Windows.Forms.dll中可能会出现“System.Threading.ThreadAbortException”类型的第一次意外异常,这将使应用程序崩溃

我认为这是因为当前线程不适合运行
SaveFileDialog


建议:如果您正在处理线程,请检查(以便更正某些线程),并尝试启动一个新线程以启动所需的文件对话框。

不幸的是,它是空的。通常会记录.NET非故意异常,但不会记录任何异常:(您必须显示复制此异常的代码。仅显示并关闭“保存”对话框不会退出应用程序。感谢您的回答,但未捕获任何异常:(