0

USB ドライブで FolderBrowserDialog を使用すると、(サブフォルダーの数に関係なく) サブフォルダーを提供するのに数分かかります。一方、Windows エクスプローラーは比較的迅速にそれらを表示します。

私が使用しているコードは次のとおりです。

if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) {
  //grab value
}

USB ドライブに移動し、ルートにあるフォルダーをクリックして、長時間待たなければなりません。

これは、Windows Server 2003 x64 上の .NET 2.0 SP1 (32 ビット実行可能ファイル) です。

これには既知の原因がありますか? Windows エクスプローラーよりも時間がかかるのはなぜですか?

Google でざっと検索すると、これは私だけであることがわかります。64ビットシステムでクラッシュするという言及を見つけましたが、実際にクラッシュすることはありません。数分待ってから動作するようになります。

4

2 に答える 2

0

接続している USB ポートのバージョンは何ですか? 1.0/1.1 は 2.0 よりも応答に時間がかかります。また、接続されたデバイスのバックグラウンド インデックス作成を行う Windows のバージョンを使用している場合、エクスプローラでクリックした時点でインデックスが作成されている可能性があります。あなたの機能は、いわば「ライブで直接」行っています。

于 2010-03-03T21:04:12.307 に答える
0

サブフォルダーを開くときにシステムコールを参照しているWindowsエクスプローラーをデバッグしようとしたことがありますか? そして、あなたのアプリケーションにも同じことをしますか? システムコールに違いがあるか、それ以上のことを行っています。または最後のケースでは、何度も失敗し、成功するのは数回だけです。

于 2009-06-24T16:05:30.977 に答える