Как добавить программу в список «открыть с помощью» каждого файла?

10

Как мне добавить программу в каждый файл, щелкнув правой кнопкой мыши список «Открыть с помощью ...» в Windows 7?

Например; Мне нравится регулярно просматривать файлы в HxD hexeditor; Существуют различные типы файлов, для которых я делаю это. Как добавить к каждому типу файлов в системе, что HxD будет в каждом отдельном меню «открыть с помощью»?

Der Hochstapler
источник

Ответы:

7

Короткий ответ: с большим трудом.

Более длинный ответ:

В реестре под HKEY_CLASSES_ROOT вы найдете запись для каждого зарегистрированного расширения файла. Вам нужно добавить ключ с именем «OpenWithProdids» к каждому расширению файла, которое вы хотите обработать. В этом ключе вам нужно строковое значение, где имя - это ProgId для HxD.

Однако есть гораздо более простой способ. Если вы поместите ярлык для HxD в C: \ Users \\ AppData \ Roaming \ Microsoft \ Windows \ SendTo, то для ЛЮБОГО файла в системе вы можете щелкнуть правой кнопкой мыши, а затем выбрать Send To-> HxD из контекстного меню.

Эндрю Купер
источник
Спасибо за ответ; надеялся, что мне не придется проходить этот долгий процесс
Вы можете иметь более короткий процесс с помощью инструмента. Посмотрите мой пост ниже;)
Дзунг Нгуен
И если вы поместите ярлык в папку SendTo в папке SendTo, вы можете отправить программу в папку SendTo, и она добавит туда ярлык. (Самый простой способ сделать это - создать ярлык на рабочем столе, а затем переместить его в папку «SendTo».) Избавляет вас от необходимости всегда перемещаться в папку «SendTo», чтобы поместить туда ярлыки.
RobH
2

Поместите следующее в текстовый файл и назовите его как-нибудь так Add HxD to Context Menu.reg, обновите пути, сохраните его и запустите.

REGEDIT4

[HKEY_CLASSES_ROOT\*\Shell\HxD]
@="&HxD"

[HKEY_CLASSES_ROOT\*\Shell\HxD\Command]
@="\"C:\\Program Files\\HxD\\HxD.exe\" \"%L\""
Synetech
источник
1

Вы можете использовать инструмент ShellExView для этого.

Джунг Нгуен
источник
Насколько мне известно, ShellExView позволяет только включать / отключать существующие меню; это НЕ позволяет вам создавать новые. Ответ @Synetech - это правильный способ добавления новых.
Алекс
0

Это, вероятно, не правильно, но что-то таким образом должно работать.

 REGEDIT4

 [HKEY_CLASSES_ROOT\HxD]

 [HKEY_CLASSES_ROOT\HxD\shell]

 [HKEY_CLASSES_ROOT\HxD\shell\open]

 [HKEY_CLASSES_ROOT\foo\shell\open\command]
 @="\"C:\\Program Files\\Application\\HxD.exe\" \"%1\""

Делая (что-то вроде этого), вы должны добавить контекстное меню (но оно может отсутствовать в том, что я опубликовал?), Которое должно отображаться для каждого типа файла, позволяя вам открыть файл с помощью HxD.

Vim делает это, предоставляя контекстное меню «Edit with Vim» для всех типов файлов.

(Существуют и другие ключи реестра, где можно выполнить то же самое.)

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

therube
источник
Это типы записей реестра, которые создает Vim, pastebin.com/a1ydzniP . Думая, что он должен быть адаптирован, упрощен для других приложений.
Therube
0

Список программ по умолчанию появляется при открытии файла неизвестного типа. Если файл уже связан, вы должны перейти в меню «Открыть с помощью». Разверните его, чтобы увидеть полный список программ по умолчанию. Фрагмент из пакетного скрипта, который добавляет foobar в список программ по умолчанию:

reg add "HKCU\Software\Classes\*\OpenWithList\foobar2000.exe" /f
reg add "HKCU\Software\Classes\Applications\foobar2000.exe\shell\open\command" /ve /d "\"%SCRIPTDIR%media\foobar2000\foobar2000.exe\" \"%%1\"" /f
yuliskov
источник
1
Вы проверяли это? Мой опыт работы с Windows 7 заключается в том, что он не работает. У меня тоже есть хорошая идея, поэтому это не удивительно. Что удивительно, так это то, что многие программы регистрируются там зря.
Norswap
0

Это создаст новый пункт «Открыть с помощью блокнота» в вашем контекстном меню. «Открыть с помощью» является более интуитивным (и более правильным), чем «Отправить». И это не требует углубления в подменю.

  • Откройте regedit, с правами администратора.
  • Перейдите к HKEY_CLASSES_ROOT * \ shell
  • Создайте новый ключ под оболочкой, назвав его «Открыть с помощью блокнота»
  • Создайте новый ключ под тем, который называется «команда».
  • Дважды щелкните значение (по умолчанию) в правой панели и введите следующее:

    notepad.exe% 1

http://www.howtogeek.com/howto/windows-vista/add-open-with-notepad-to-the-context-menu-for-all-files/

Джонни почему
источник
0

Это работает в Windows 8.1, поэтому не уверен насчет Windows 7. Я не знаю, каков ваш путь к HxD, поэтому я просто привел пример ниже. Замените расположение приложения ниже, а в Applications \ HxD.exe замените HxD.exe именем исполняемого файла, который будет запущен.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Applications\HxD.exe]

[HKEY_CLASSES_ROOT\Applications\HxD.exe\shell]

[HKEY_CLASSES_ROOT\Applications\HxD.exe\shell\edit]

[HKEY_CLASSES_ROOT\Applications\HxD.exe\shell\edit\command]
@="C:\\Program Files (x86)\\HxD\\HxD.exe %1"

[HKEY_CLASSES_ROOT\Applications\HxD.exe\shell\open]

[HKEY_CLASSES_ROOT\Applications\HxD.exe\shell\open\command]
@="C:\\Program Files (x86)\\HxD\\HxD.exe %1"
jagberg
источник