Link Shell Extension

Хочу ознакомить Вас с одной очень полезной, при работе с медиа данными(да вообщем то не только медиа, а вообще любыми данными) утилитой - LinkShellExtension


С появлением Windows Vista в наши повседневные пк-пользовательские будни, незаметно пришло такое явление как simlink. Она же Symbolic link. Это виртуальные папки(библиотека, документы, папка с профилем юзера).
Для того, что-бы наглядно продемонстрировать что это означает, нам понадобится файловый менеджер, в котором можно включать просмотр скрытых файлов. Например Total Commander.
Зайдите TotalCommander-ом в папку в которой хранятся профили Windows(c:\users). Теперь включите отображение скрытых файлов и папок(конфигурация/настройка/содержимое панелей/показывать скрытые-системные файлы => поставьте тут галочку и нажмите ОК). У Вас появятся несколько папок, не видимых до этого. Одна из них: All Users. Войдите в неё. Что мы видим в адресной строке?
c:\Users\All Users
Вроде бы всё как обычно… никакого подвоха… Верно? )) Окиньте взглядом содержимое папки и визуально запомните находящиеся в ней данные. Не обязательно всё запоминать… просто что-бы иметь приблизительное представление.
А теперь поднимитесь на два уровня вверх. В корень диска С. Тут тоже появились новые папки(если у Вас ранее не отображались скрытые файлы и папки). Зайдите в папку Program Data и так же окиньте взглядом то, что Вы видите… Знакомо?
Открою Вам тайну… Папки c:\Users\All Users и c:\ProgramData - это одна и та же папка!

Но мы её наблюдаем сразу в двух местах. :smile_ai:
Не верите? Выделите всё содержимое этих папок(по очереди), сравните их объём и обратите внимание на общее кол-во папок и файлов в них. Они абсолютно одинаковы. Байт-в-байт.
На самом деле, ничего в этом удивительного нет. Мы имеем дело с “расширенной версией ярлыка”. то-есть одна из этих папок - самозванец. Что-бы выяснить кто именно, достаточно посмотреть свойства самих этих папок.

Разница очевидна… Более того, в свойствах All Users есть закладка, окончательно проясняющая ситуацию…

В недрах папок профилей windows, есть ещё много таких парадоксов, но речь сейчас не о них и не о целях с которыми они там есть… Теперь я рекомендую Вам отключить отображение скрытых файлов и папок и забыть всё, что я Вам показал)))
Перейдём к основной цели моего месседжа…


Итак: LinkShellExtension.
Скачать её можно тут для Windows x64
http://schinagl.priv.at/nt/hardlinkshellext/HardLinkShellExt_X64.exe
И тут для Windows x32
http://schinagl.priv.at/nt/hardlinkshellext/HardLinkShellExt_win32.exe


Запуск установки, обязательно делаем от имени Администратора.
Процесс установки тривиален и не заслуживает описания… Нужно только отметить, что по окончании установки, инсталлер предложит перезапустить Проводник Windows. После нажатия на Yes, проводник исчезнет и тут же снова появится. Страшного в этом ничего нет.

После завершения установки, мы можем перейти к использованию утилиты…

Смоделирую ситуацию, отталкиваясь от своих реалий и задач… У Вас есть большое кол-во папок, с разрозненной тематикой и информацией. Например видео-футаж. Проекты AE. Ваши исходные файлы. Как обычно, Вы когда качали всё это и сливали с камеры - сложили всё в самые всевозможные “Новые Папки” :smile_bm:
Навести в этом порядок нереально. Копирование отберёт много времени… А время жмёт и нам нужно собирать проект. Данная утилита, окажется весьма полезной, для быстрого наведения порядка в наших “Новых папках”.
Создадим папку в которую нам нужно будет собрать, весь необходимый для работы материал. Например:
“Project 2014-04-25 Дима и Таня”
Находим среди прочего, ту папку, в которой лежит видео снятое для нашего проекта. Правой клавишей мышки, открываем контекстное меню этой папки и выбираем там пункт “Запомнить источник ссылки”
Переходим в нашу папку для проекта, и на пустом пространстве кликнув правой мышкой, выбираем пункт Поместить как > Символическую ссылку. Через мгновение, папка с нужным материалом, чудесным образом, не заняв ни одного лишнего мегабайта, окажется в папке для проекта и пометится оверлейным значком ярлыка зелёного цвета. Теперь с файлами находящимися в этой папке, может работать любая программа(Premiere, After Effects, Photoshop…) так, словно она работает с исходными файлами. Если в Photoshop Вы сохраните открытую из такой папки фотографию, то она обновится и в исходном расположении…
Замечу, что теперь, “вклеенную папку” Вы можете переименовать как Вам заблагорассудится. В исходном расположении название не изменится. Можете позже удалить её. Опять-же исходная папка останется на месте. Кроме того, если речь идёт о футаже например, то можно создавать сколько угодное количество таких ярлыков. К примеру если один и тот же футаж используется в разных проектах… В папке с каждым из проектов, может лежать свой дубликат нужного материала.
Вообщем мы имеем дело, с простой в использовании и очень удобной тулзой, для каталогизации, упорядочивания и прочего-прочего рутинного процесса…

Но это ещё не всё. Пользуясь этой утилитой, я открыл для неё ещё одно, очень полезное применение…
Многие сейчас пользуются бесплатными облачными сервисами хранения данных(Yandex.Диск, OneDrive, DropBox и т.д.) Очень полезные сервисы. Но у всех у них есть один досаднейший недостаток. Синхронизировать с сервером, можно только одну единственную папку на компьютере… :smile_af: Понимаете о чём я? :wink:
Используя сабж, мы можем добавить в синхронизируемую папку, другие папки, находящиеся совершенно в разных местах не то что диска, а вообще компьютера. Да-да… утилита создаёт связь даже между папками расположенными на физически разных дисках! Таким образом мы избавляем себя от необходимости содержать все синхронизируемые данные, в одной папке!

Надо заметить, что ярлыки используемые этой утилитой, бывают шести видов. У каждого из них есть свои достоинства и свои недостатки.
Однако всё что описано здесь мною, касается только ярлыка Символическая ссылка.
Описание особенностей остальных видов ярлыков, займёт очень много времени и места на странице)))) Но для “наших” задач Символическая ссылка - самое оно! :smile_ay:

3 Likes

в XP не хочет работать

На офф.сайте написано, что поддерживает:

…The NTFS file system implemented in NT4, Windows 2000, Windows XP, Windows XP64, and Windows7/8/10 supports…

папку на сервере слинковать, но что то не срослось. время будет посвободнее посмотрю что и как более основательно.
в любом случае сенкс, давно искал как подобные вещи можно реализовать.

@dimatsu, скорее всего не установлен runtime:

И имейте ввиду, что нельзя смонтировать папку с удалённого сервера на локальный компьютер.

@photik, да да именно с этим и столкнулся. А на локальной машине все работает ок.

@dimatsu, можно “сложить” все нужные папки в одну, на удалённом сервере, а потом, просто подключить эту папку как сетевой диск на локальной машине.

очень полезно. добавил в закладки. Спасиб!