2012-04-17 4 views
1

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

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

私が一番よく考えているのは、それがネットワーク関連の問題だということです。ネットワークは時折不安定であることが知られています(かなり簡単に頻繁に上/下に行く)。これは問題を引き起こす可能性がありますか?

Explorer crash

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

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

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

EDIT:OR私は予想通りであり、私が対処する必要がありますするつもりだだけで、Windowsのバグです... =(

+1

あなたはアドレスにエクスプローラとだけタイプを開くとどうなりますか –

+0

あなたは 'System.Diagnostics.Process.Startを試してみましたか? (Path) '? –

+0

@LouFrancoこれは正しく機能しています。私が現在使用しているコールは適切に機能しています。 yが発生する。 – ImGreg

答えて

2

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

SHOpenFolderAndSelectItems(folder, 1, &folder, 0); 
関連する問題