【发布时间】:2012-01-27 14:56:24
【问题描述】:
我们尝试访问网络目录中的目录但得到错误结果(C#/Windows):
var exists = Directory.Exists("Z:\\Sessions\\Data1");
“Z”是网络目录,“Sessions”是录音软件不断创建目录(例如“Data1”)并放入一些数据的目录。 似乎Windows缓存了有关Data1的错误状态:该方法返回false。但是当我通过资源管理器访问目录时,它就在这里。当我在使用资源管理器访问目录后运行方法 (Directory.Exists) 时,它返回 true。当然我可以保证在第一次尝试时该目录确实存在。
这种行为的原因是什么?我该怎么办?
编辑: windows似乎无法将网络驱动器连接到远程计算机。当我尝试使用资源管理器导航到目录时,它会自动尝试连接驱动器。
所以问题发生了变化: 有没有办法强制 Windows 尝试通过 .NET 重新连接?
【问题讨论】:
-
如果您在命令提示符下使用
DIR命令访问该目录,您得到的信息是否正确?即:dir Z:\Sessions\Data1. -
否,通过命令提示符访问目录不会刷新网络驱动器连接。请查看我的编辑...
标签: c# .net windows networking