2013-04-24 3 views
0

Есть ли способ использовать сопоставленные папки сетевого диска вместо дисков при указании пути к файлу? Например, у меня есть файл с этим расположением пути; N: \ COMMON \ Test.xls и диск N: c103d213 на 'c103d213', поэтому папка \ c103d213 \ c103d213. Я не хочу жестко кодировать букву диска, потому что в зависимости от того, как люди настраивают свои диски, диск N: для них может быть совершенно другим, чем мой.Использовать папку вместо обозначения буквы диска в пути

+0

Как насчет размещения более readible имен для имен серверов/папок ('N: диск c103d213 на«c103d213» '). – I4V

+1

Просто используйте имя UNC - '@" \\ c103d213 \ c103d213'. – Tim

+0

Посмотрите на UNC в Википедии –

ответ

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; 
    } 
} 
Смежные вопросы