Нужна функциональность символической ссылки БЕЗ символического пути
Под управлением Windows 10 Pro.
Я пытаюсь обойти ограничение MAX_PATH в 260 символов, встроенное в Win32 API.
Я создал серию резервных копий, которые, как мы скажем, предназначены для резервного копирования "TRUNCATED" имен файлов.
Например, мы будем ссылаться на файл с полным именем файла:
D:/Folder1/Folder2/Folder3/Folder4/Folder5/Folder6/Folder7/Folder8/Folder9/file.txt
Для начала, я теоретически сократил это имя файла, переместив файл в скрытую папку Short_Name
ближе к корню, так что теперь файл буквально существует как
D:/Short_Name/Folder9/file.txt
Тем не менее, чтобы сохранить исходную структуру файлов без изменений, чтобы я мог повторно использовать эту тактику для выполнения такого же сокращения пути в другом месте, но при этом использовать те же файлы конфигурации и программное обеспечение для выполнения дублирования и синхронизации файлов В исходной папке (папках). )
(такой как D:/Folder1/.../Folder9/
)
Я включил символическую ссылку с именем " Folder9
"
(достигается с помощью C:\Windows\system32>
mklink
/J
(или /D
) "D:/Folder1/.../Folder9/"
"D:/Short_Name/Folder9/"
в командной строке)
в
D:/Folder1/Folder2/Folder3/Folder4/Folder5/Folder6/Folder7/Folder8/
такой, что ссылка выглядит
D:/Folder1/.../Folder9/
но указывает на D:/Short_Name/Folder9/
.
СЕЙЧАС, очевидно, я мог бы вместо этого использовать обычный, заурядный
Щелкните правой кнопкой мыши> «Создать ярлык»
но целевой путь ссылки такой символической ссылки будет абсолютным.
(т. е. ярлык на D:
указатель на D:/Short_Name/Folder9/file.txt
будет скопирован, C:
но скопированный ярлык на ярлык C:
все равно будет указывать D:/Short_Name/Folder9/file.txt
.)
Символические ссылки, с другой стороны ...
(то есть те, которые созданы через C:\Windows\system32>
mklink
...
)
... скопировать относительные ссылки без проблем ...
(т.е. D:/Folder1/.../Folder9/
будет скопирован как C:/Folder1/.../Folder9/
)
... и цель ссылки будет копировать с
D:/Short_Name/Folder9/
в
C:/Short_Name/Folder9/
... НО -
Проблема ЗДЕСЬ заключается в том, что СЕЙЧАС ЛИТЕРАЛЬНЫЕ ИМЕНА ИСПОЛЬЗУЮТСЯ, как их более длинные, НЕРАЗРЕШЕННЫЕ версии, что НЕ произошло бы при использовании
Щелкните правой кнопкой мыши> «Создать ярлык»
метод.
Насколько я могу судить, при использовании mklink
для создания символической ссылки на каталог (НЕ файл - я не знаю, работает ли он по-разному для файлов), LITERAL системное имя файла любого файла, размещенного в каталоге, как D:/Short_Name/Folder9/
кажется, всегда быть полнотой mklink
символического пути, т. е.
D:/Folder1/Folder2/Folder3/Folder4/Folder5/Folder6/Folder7/Folder8/Folder9/file.txt
даже если фактическое местоположение файла только
D:/Short_Name/Folder9/file.txt
,
ВОПРОС:
Есть ли ЛЮБОЙ способ создания символической ссылки, которая будет функционировать как стандартная папка, но которая ТАКЖЕ будет поддерживать ОТНОСИТЕЛЬНУЮ, ЛИТЕРАЛЬНУЮ, УСТАНОВЛЕННУЮ версию файла, когда копируется на новый диск?
Пожалуйста и спасибо.
0 ответов на вопрос
Похожие вопросы
-
12
Почему папка / winsxs становится такой большой и ее можно уменьшить?
-
2
Повышенные привилегии для запуска приложений в Windows?
-
14
PDF Viewer в Windows
-
-
7
Какие службы Windows можно безопасно отключить?
-
8
Firefox PDF плагин для просмотра PDF в браузере на Windows
-
1
Windows теряет макет экрана
-
1
Есть ли способ предотвратить установку / обновление, чтобы засорять мой жесткий диск загадочными пап...
-
1
Как я могу получить доступ к принтеру Windows Vista из Ubuntu по сети?
-
6
Просмотр журнала в Windows
-
3
Фоновая проблема Windows с двумя экранами