Я пытаюсь выяснить, существует ли файл на общем диске с компьютера с Windows в локальной сети.Диск можно легко смонтировать и получить к нему доступ с моей машины, и он не требует учетных данных.Я использую Visual Studio на Mac
Я использую следующий код на C # и существует ложь:
FileInfo fileInfo = new FileInfo(@"\\servername\folder\file.pdf");
bool exists = fileInfo.Exists;
Я думаю, что проблема в том, что FileInfo фактически не имеет доступа к общему дискуи путь в аргументе, но вместо этого проверяется следующее:
"/Users/me/Projects/CurrentProjectFolder/\\\\servername\\folder\\file.pdf"
Приведенный выше путь является значением свойства FullPath и FullName объекта fileInfo, и я считаю, что он не находит файл, поскольку на самом деле онпроверяет этот полный путь.
Например, попытка получить файлы для этого каталога вызывает исключение DirectoryNotFoundException.
Directory.GetFiles(@"\\servername\folder\");
Не удалось найти часть пути '/ Users/me/Projects/CurrentProjectFolder/\\servername\folder\'.
Я потратил довольно много времени на решение, и есть большое количество ответов, которые следуют той же самой операции, которую я вставилвыше - FileInfo с патчем UNC в качестве аргумента.
Спасибо