В моей тестовой системе (Windows 10 x64) UNC PATH \\Mac\Home\Documents
сопоставляется с Y:\Documents
. Существует ли функция Delphi для преобразования пути UNC в соответствующий сопоставленный путь к диску (если он есть)?
function ConvertUNCPathToDrivePath(const AUncPath: string): string;
Это преобразует \\Mac\Home\Documents
в Y:\Documents
.
Я проверил Реестр, но сопоставлений нет: app.screencast.com/FCne4K1puPZRJ Я единственный пользователь на этой тестовой системе (Windows 10 x64).
Такой функции не может быть, потому что общий сетевой ресурс/UNC-путь не нужно сопоставлять с диском или путем. Или может быть сопоставлен с более чем одним из любых. Какую настоящую проблему вы пытаетесь решить?
@AmigoJack Ваша аргументация неверна: я не утверждал, что каждый путь UNC должен иметь сопоставленный путь к диску. Вам нужно ПОНИМАТЬ то, что вы читаете, а не просто читать буквы.
Я сделал. Ваше добавление «(если оно есть)» появилось через много часов после моего комментария. Если вы формулируете это как 1:1, но имеете в виду иначе, это вам нужно улучшаться. Или почему мой комментарий получил 4 плюса? Потому что мне "нужно ПОНЯТЬ"?
Насколько мне известно, нет функций для преобразования пути UNC в путь сопоставленного диска.
Однако существуют функции Win32 API, такие как WNetGetConnection() и WNetGetUniversalName(), которые можно использовать для преобразования пути сопоставленного диска в его путь UNC.
Вы можете перечислить буквы локальных дисков и посмотреть, преобразуются ли какие-либо из них в интересующий вас UNC.
Я предполагаю, что вам нужно получить список/перечисление сетевых ресурсов ваших пользователей и проверить, является ли UNC частью одного из них, например, с Windows cmd "net use"