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

Я развертываю маленький инструмент преобразования в некоторых системах и хочу, чтобы пользователи смогли выполнить его от щелчка правой кнопкой Open with меню. Но я не хочу изменяться, пользователи программы по умолчанию связались к этому типу файла.

Легко связать расширение файла / тип к программе, но как сделать это (программно, конечно), не изменяя программу по умолчанию?

7
задан CharlesB 2 June 2010 в 09:29
поделиться

4 ответа

У меня сработали следующие ключи:

key HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/App Paths/<progname>: "" = <appPath>

key HKCR/Applications/<progname>/SupportedTypes: <fileExt> = ""
key HKCR/<fileExt>: "" = <progID>

key HKCR/<progID>/OpenWithList/<progName>
key HKCR/<fileExt>/OpenWithList/<progName>
key HKCR/SystemFileAssociations/<fileExt>/OpenWithList/<progName>

delete key and subkey at HKCU/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/fileExts/<fileExt>
5
ответ дан 7 December 2019 в 14:29
поделиться

В диалоговом окне Windows «Типы файлов» вы можете нажать «Дополнительно» для своего типа файла и создать там настраиваемое действие, привязанное к вашему приложению.

Возможно, вы также сможете найти способ сделать это программным способом или, по крайней мере, создать файл .REG с эквивалентными параметрами реестра.

0
ответ дан 7 December 2019 в 14:29
поделиться

вот рабочий пример для XP, добавляющего параметр командной строки в папки. Создайте файл .reg

Редактор реестра Windows версии 5.00

[HKEY_CLASSES_ROOT \ Directory \ shell \ Командная строка]

[HKEY_CLASSES_ROOT \ Directory \ shell \ Command Prompt \ command] @ = "cmd.exe / k cd \"% 1 \ ""

-2
ответ дан 7 December 2019 в 14:29
поделиться

Вы можете добавить скрипты в контекстное меню (ниже Open with), добавив его в реестр windows:

  1. Откройте regedit
  2. Выберите HKEY_CLASSES_ROOT\ваш_класс\Shell
  3. Добавьте новый ключ и дайте ему имя
  4. Отредактируйте (Default) значение этого ключа и вставьте текст, который вы хотите отобразить в контекстном меню
  5. Добавьте новую клавишу с именем Command под созданной клавишей
  6. Отредактируйте значение (Default) этой клавиши и вставьте команду, которую вы хотите выполнить
  7. Наслаждайтесь!
1
ответ дан 7 December 2019 в 14:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: