1

私が使用している C# winforms アプリケーションがあります。ユーザーをローカルシステムのネットワークドライブ上の特定のパスに移動させる「出力フォルダーの参照」ボタンがあります。

ただし、Explorer.exe からこれらの奇妙な例外が発生し、特別な理由もなく実際のエラー メッセージが表示されずにクラッシュします。これは、フォルダが適切に開いてしばらく放置されている場合に発生し、「動作が停止しました」というメッセージが表示され、閉じるように求められます。この問題は非常に再現性があります。

この問題についての私の最善の推測は、それがネットワーク関連の問題であるということです。ネットワークは時折グリッチが発生することが知られています (かなり頻繁に短時間アップ/ダウンします)。これにより問題が発生する可能性はありますか?

エクスプローラーのクラッシュ

私が使用するコードは次のとおりです (通常、フォルダー パスが有効であることを確認します)。

string Path = "\\\\serverPath\\data\\My Folder\\";
System.Diagnostics.Process.Start("Explorer.exe", Path);

基本的な質問の要約: Explorer.exe へのこの呼び出しを不適切に行っていますか? この問題を回避するためのより適切で安全な方法はありますか?

編集: OR は私が期待したとおりであり、私が対処しなければならない単なる Windows のバグです... =(

4

1 に答える 1

2

フォルダを開く別の方法が必要な場合は、 を使用してみてくださいSHOpenFolderAndSelectItems。フォルダーを開くには、親と選択と同じ PCITEMIDLIST を使用できると思います。

SHOpenFolderAndSelectItems(folder, 1, &folder, 0);
于 2012-04-17T20:53:42.040 に答える