1

Я ищу эффективный способ открыть пути Mac в Windows. Я объясняю ситуацию:

Я использую программное обеспечение на моем Mac, которое ссылается на файлы, расположенные на сетевом диске. Когда я открываю тот же "проект" в версии этого программного обеспечения для Windows на другом компьютере, я хочу, чтобы он без проблем связывался с файлами. (обе машины, конечно, подключены к сетевому диску)

Предположим, что мой файл находится здесь (mac path): /Volumes/NetworkDrive/Project/Test/MyFile.txt эквивалентный путь в Windows: \MyServer \NetworkDrive \Project \Test \MyFile.txt

То, что я хотел бы, чтобы обмануть окна, либо в реестре, переменной среды, или что-нибудь подобное, что "поверх" любых программ, так что «/Volumes/NetworkDrive» будет пониматься как «\MyServer\NetworkDrive»

Таким образом, любой файл в любом программном обеспечении может быть открыт.

Я хотел бы, чтобы это работало так же, как работает файл hosts для IP-адресов (создание псевдонимов и перенаправление для серверов).

ИЛИ - это может быть сделано, монтируя поддельные папки? Трюк может быть сделан на Mac или ПК, если он работает!

Спасибо !

1 ответ1

2

То, что вы спрашиваете, просто невозможно в Win32. Вы сможете достичь этого с помощью подсистемы (такой как SUA) или уровня эмуляции, такого как только Cygwin.

Прямая и обратная косая черта здесь не проблема, потому что Windows прекрасно это понимает.

Ни одно решение для Windows (точнее, в подсистеме Win32) не предоставит то, что вы хотите, во всех программах. В то время как вы могли бы написать расширение оболочки, чтобы Windows Explorer показывал это так, как вам нужно, командная строка и другие программы не будут иметь понятия, как пространство имен оболочки в значительной степени ограничено Explorer (и другими инструментами управления файлами, которые выбирают для реализации Это).

Самое близкое, что вы могли бы получить - это поделиться (через Samba) с помощью /Volumes/NetworkDrive , переименовав вашу машину в Volumes и назвав общий ресурс NetworkDrive . Таким образом, добавляя еще одну косую черту (или обратную косую черту), то есть \\Volumes\NetworkDrive , вы получите что-то близкое к тому, что вы хотите.

В то время как у систем Unixoid, таких как Mac, есть один корень, подсистема Win32 (которая является видимой для пользователя частью всех современных версий Windows) имеет несколько корней (каждая буква диска). Сама ОС имеет понятие единого "корневого объекта" (очень похоже на то, как оно работает на Unixoid системах), но это выходит за рамки вопроса (если вам интересно, прочитайте "Windows Internals" и повозитесь с WinObj). от Sysinternals).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .