Существует ли Windows API для изменения ассоциации типов файлов для расширения? - PullRequest
3 голосов
/ 19 сентября 2009

Я ищу способ программно настроить особенности ассоциации файлов в системе Windows. Например, параметр «Пользователь приложения для выполнения этого действия» для действия «Открыть» для определенного типа файла.

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

В моих целях мне нужно записать это в файл VBScript (.VBS), потому что он является частью пакета, который будет использоваться с VMWare ThinApp, который его обязывает. Тем не менее, я перенесу / перенесу / все, что мне нужно сделать на этой неделе, поэтому я открыт для любого решения (включая использование .NET Framework)

Ответы [ 2 ]

3 голосов
/ 19 сентября 2009

Microsoft документирует , что официальная процедура создания файловых ассоциаций заключается в модификации реестра. Единственный другой API, который вам нужно вызвать - это SHChangeNotify с SHCNE_ASSOCCHANGE, чтобы сообщить запущенным приложениям, что ассоциации изменились.

0 голосов
/ 19 сентября 2009

Посмотрите на этот ответ: Меню ассоциации файлов реестра Windows

Ассоциации файлов находятся в реестре.

...