如何获得可用的网络驱动器映射?
问题描述:
C#中是否有任何类或API可用于获取可用的网络驱动器或最后一个可用的映射驱动器?例如“Z:”。像这样的:如何获得可用的网络驱动器映射?
string mappeddrive = MappDriveUtil.GetLastAvailableMappedDrive(); // utility class
我可以只扫描本地和映射驱动器找出?如何查找已经在使用的所有本地和映射驱动器?
答
这是那些没有很好答案的问题之一。您当然可以使用DriveInfo.GetDrives来枚举所有当前可用的驱动器。从中可以推断出未映射的驱动器。
但问题是,你只能告诉驱动器是没有映射没有映射。在调用GetDrives()和驱动器的实际映射之间,其他程序完全可以出现并映射您选择的驱动器。你的解决方案必须考虑到这种可能性,否则它将遭受这方面的可靠性问题。
的确如此。实际上,我要做的是在映射到指定驱动器之前取消映射指定驱动器,而不是找到可用的驱动器。 – 2009-04-07 20:30:45