0

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();

なぜこれが起こっているのか、何か考えはありますか?これをトラブルシューティングして修正するにはどうすればよいですか?

4

2 に答える 2

1

プロジェクトのプロパティ ウィンドウでアンマネージ デバッグを有効にします。また、Visual Studio がすべての例外で中断するように設定されていることを確認します (Debug\Exceptions メニューの [Throw] オプションを確認してください)。

次に、アプリケーションを再度実行します。VS は例外で中断するようになりました。これは、アプリの失敗の原因となっているシェル拡張機能またはファイル ハンドラーである必要があります。

于 2011-08-24T14:07:38.640 に答える
0

SaveFileDialog新しいThreadであなたを呼び出してみて、それが機能するかどうか教えてください。

を持つことができA first chance exception of type 'System.Threading.ThreadAbortException' occurred in System.Windows.Forms.dll、それはアプリケーションをクラッシュさせます。

これは、現在のスレッドが実行に適していないために発生すると思いますSaveFileDialog

アドバイス: スレッドを扱っているかどうかを確認し (一部を修正するために)、新しいスレッドを起動して目的のファイル ダイアログを開始してみてください。

于 2014-02-24T20:13:12.137 に答える