在路径中使用文件夹而不是驱动器号

时间:2013-04-24 21:19:48

标签: c# networking filepath

在列出文件路径时,有没有办法使用映射的网络驱动器文件夹而不是驱动器?例如,我有一个具有此路径位置的文件; N:\ COMMON \ Test.xls和N:驱动器在'c103d213'上是c103d213,因此该文件夹是\ c103d213 \ c103d213。我不想在那里硬编码驱动器号,因为根据人们如何设置驱动器,N:驱动器可能与我的完全不同。

1 个答案:

答案 0 :(得分:2)

您可以使用WMI获取映射。我之前在项目中使用过这个:

string mapping = null;

var searcher = new ManagementObjectSearcher("root\\cimv2", "select Caption,ProviderName from Win32_MappedLogicalDisk");
foreach (ManagementObject drive in searcher.Get())
{
    if (drive["Caption"].ToString() == driveLetter)
    {
        mapping = drive["ProviderName"].ToString();
        break;
    }
}