15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


Связываем тип файла (расширение) с нашим приложением


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

Для этого достаточно придумать Ваше собственное расширение для файла данных, и связать его (расширение) с Вашим приложением. Обычно для этого достаточно добавить два ключа в реестр в раздел HKEY_CLASSES_ROOT. Допустим мы решили назвать наше расширение как ".ext", тогда первый ключ, который необходимо добавить - это собственно само расширение:

HKEY_CLASSES_ROOT\
                      .ext\

и установить значение строки "default" данного ключа в "internal name" для Вашего типа файла - например MyApp.Document:

HKEY_CLASSES_ROOT\
                      .ext\
                          Default = "MyApp.Document"

Затем необходимо создать другой ключ с именем:

HKEY_CLASSES_ROOT\
                   MyApp.Document\

Создайте в нём подключ с названием "shell", далее в shell создайте подключ "open", а в open создайте подключ "command". Значение default в ключе command - это расположение и имя Вашего приложения, заканчивающегося на "%1", которое представляет параметр, в котором приложению будет передаваться имя файла данных:

HKEY_CLASSES_ROOT\
                  MyApp.Document\
                          shell\
                              open\
                                  command\
                                        Default = "C:\myapp\myapp.exe %1"

Думаю, что в любом компиляторе проделать данную процедуру программно не составит труда.