Есть ли способ использовать сопоставленные папки сетевого диска вместо дисков при указании пути к файлу? Например, у меня есть файл с этим расположением пути; N: \ COMMON \ Test.xls и диск N: c103d213 на 'c103d213', поэтому папка \ c103d213 \ c103d213. Я не хочу жестко кодировать букву диска, потому что в зависимости от того, как люди настраивают свои диски, диск N: для них может быть совершенно другим, чем мой.Использовать папку вместо обозначения буквы диска в пути
0
A
ответ
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;
}
}
Как насчет размещения более readible имен для имен серверов/папок ('N: диск c103d213 на«c103d213» '). – I4V
Просто используйте имя UNC - '@" \\ c103d213 \ c103d213'. – Tim
Посмотрите на UNC в Википедии –