Как я могу создать пункт меню, вызываемый правой кнопкой мыши, чтобы управлять точкой соединения?

14869
Tom Wijsman

Поскольку я использую SSD, но он имеет ограниченный размер, я хочу иметь возможность использовать точки соединения для переназначения файлов и каталогов на мой жесткий диск, это будет работать идеально, если я смогу создать для него расширение оболочки, которое делает это.

Идеальным вариантом было бы щелкнуть правой кнопкой мыши каталог или точку соединения и выбрать опцию
«Управление точкой соединения», в которой я могу выполнить следующие действия:

  • Создать: для каталога переместите каталог в указанное мной место и замените его точкой соединения.
    (Dir) C: \ Пример превращается в (JP) C: \ Пример -> D: \ Пример

  • Обмен: Для точки соединения я хочу поменять точку соединения с ее местоположением.
    (JP) C: \ Example -> (Dir) D: \ Пример превращается в (Dir) C: \ Example <- (JP) D: \ Example

    Это означает, что он удалит точку соединения, переместит данные и разместит точку обратного соединения.

  • Удалить: для точки соединения я хочу удалить ее и переместить каталог обратно.
    (JP) C: \ Example -> (Dir) D: \ Пример превращается в (Dir) C: \ Пример

Мои самые важные вопросы:

  • Какой подход я должен использовать, чтобы сделать это? Сценарий? Bash? Исполняемые?
  • Как мне создать пункт меню?

Менее важные вопросы:

  • Такое решение уже существует?
  • Есть ли лучшие команды или вызовы API для проверки и управления точками соединения?

Я уже знаю о Microsoft mklinkи Sysinternals junction.

11
Просто чтобы сказать об этом - я не могу придумать ситуацию (или признать ту, на которую вы ссылались), когда это необходимо, то есть я бы попробовал другие подходы для решения более широкой проблемы, какой бы она ни была. Зачем связывать файлы SSD с HDD? cregox 13 лет назад 0
Потому что не все подходит для SSD, поэтому я должен переместить вещи, которые не требуют быстрой работы, на мой жесткий диск, не ломая ничего ... Я не хочу обходной путь, я хочу решение. Tom Wijsman 13 лет назад 0
Мы сделали сообщение в блоге о [продлении срока службы вашего SSD] (http://blog.superuser.com/2011/05/10/maximizing-the-lifetime-of-your-ssd/). Tom Wijsman 13 лет назад 0
связанные: http://superuser.com/questions/95862/what-directories-in-a-windows-7-ssd-install-would-you-link-junction-to-an-hdd cregox 13 лет назад 0

2 ответа на вопрос

17
Isxek

Поскольку вы спросили, существуют ли уже такие решения, вы взглянули на Junction Link Magic или Link Shell Extension. ?

Junction Link Magic позволяет создавать, изменять и удалять точки соединения. Это бесплатное программное обеспечение, и оно поддерживает Windows 7.

Link Shell Extension также предоставляет те же функциональные возможности, а также является бесплатной. Он также поддерживает Windows 7.

ОБНОВЛЕНИЕ : оригинальный сайт для Junction Link Magic сейчас 404. Я заменил ссылку Softpedia для тех, кто все еще хочет установить JLM.

По какой-то причине я смутно помню, как @TomWij упомянул об этом программном обеспечении в комментарии к вопросу о точке с жесткой связью / точкой соединения здесь, на SU. Я просто не могу найти * актуальный * вопрос в данный момент. Isxek 13 лет назад 0
Точно, но я хочу лучший способ сделать это, хотя я не знал о расширении, я сейчас проверяю это ... Tom Wijsman 13 лет назад 0
Это позволяет упростить работу с точками соединения, я пока воспользуюсь этим и оставлю это открытым в ожидании лучшего решения ... Я хотел бы, чтобы исходный код был доступен, чтобы я мог удалить текст, который он добавляет к имя каталога и удалить параметры, которые я никогда не буду использовать. Tom Wijsman 13 лет назад 0
Просто добавлю: вы, вероятно, уже нашли их, но вот несколько ссылок на CodeProject (с источником), связанных с точками соединения: http://www.codeproject.com/KB/winsdk/junctionpoints.aspx и http: / /www.codeproject.com/KB/vista/ReparsePointID.aspx Isxek 13 лет назад 0
Кажется интересным, может быть, я либо потратил награду здесь, либо решил потратить некоторое время на исследования и реализацию на днях ... Tom Wijsman 13 лет назад 0
После использования в течение некоторого времени, это, кажется, работает просто отлично. Я не буду делать обмен слишком много, поэтому я могу сделать шаги вручную ... Tom Wijsman 13 лет назад 0
2

Я просто использую то, MKLINKчто встроено в Windows 7. Я полагаю, что в итоге вы будете писать командные файлы, но это не сложно использовать.