在USB驱动器中使用FolderBrowserDialog需要几分钟才能提供子文件夹(与子文件夹的数量无关)。而Windows资源管理器确实以相对快速的方式显示它们。
我正在使用的代码是:
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) {
//grab value
}
我导航到USB驱动器,然后单击root中的文件夹以等待很多时间。
这是Windows Server 2003 x64上的.NET 2.0 SP1(32位可执行文件)
这有什么原因吗?为什么它比Windows资源管理器花费的时间更长?
粗略的谷歌搜索似乎表明我一个人在这。我发现它在64位系统上崩溃的引用,但我实际上并没有崩溃,如果我等了好几分钟就结束了。答案 0 :(得分:0)
你有没有尝试调试Windows资源管理器,打开子文件夹时系统调用是否会受到影响?并为您的应用程序做同样的事情?要么系统调用存在差异,要么正在做更多事情。或者最后一种情况,它失败很多次,只有几次成功。
答案 1 :(得分:0)
您所连接的USB端口是什么版本? 1.0 / 1.1将比2.0更长的响应时间。此外,如果您的Windows版本可以对附加设备进行幕后索引,则可能在您在资源管理器中单击它时将其编入索引;你的功能就是“现场和面对面”,可以这么说。