Где в Windows хранятся настройки "Открыть с помощью"?

Я пытаюсь программно проверить ассоциации файлов по расширению файла (например, .jnlp файлы). Я продолжаю читать это

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\JNLPFile\Shell\Open\Command

ключ реестра для проверки Однако, если вы измените связь через Windows Explorer:

Открыть с помощью> Выбрать программу> (Всегда использовать выбранную программу)

изменение не отражено в этом ключе реестра. Где еще хранится эта информация?

3 ответа

Решение

Взгляните на:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\

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

Вы также можете прочитать http://support.microsoft.com/kb/950505 где говорится о вашей проблеме.

Это поиск из двух частей.

Сначала вы ищите значение по умолчанию HKEY_CLASSES_ROOT\[file_extension]. Для ваших расширений, .jnlp, значение равно "JNLPFile". Давайте назовем это [file_descriptor].

Теперь вы можете найти значение по умолчанию HKEY_CLASSES_ROOT\[file_descriptor]\Shell\[action]\command (где [action] - интересующее вас действие оболочки, например: Open, Print, Edit и т. Д.).

На:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jnlp\OpenWithList

Совет: Edit>Find очень удобен в таких ситуациях.:)

Другие вопросы по тегам