
Windows 8 добавила приложения Metro. Поскольку приложения Metro не запускаются так же, как другие программы, ассоциация файлов, похоже, отличается от других программ. Как ассоциируются файлы в Windows?
решение1
Тип открытия по умолчанию указан под клавишей выбора пользователя в:HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\FileExts\\.[desiredFileExtension]\\UserChoice\\ProgId
Если этот ключ не существует, то по умолчанию:HKEY_CLASSES_ROOT\\.[desiredFileExtension]\\(default)
Затем этот тип необходимо проверить, чтобы определить, что с ним делать, он проверяется в:HKEY_CLASSES_ROOT\\[openingType]\\shell
Значение по умолчанию здесь должно указывать, какой глагол используется, например, под оболочкой:HKEY_CLASSES_ROOT\\[openingType]\\shell\\open
Выполняемая команда находится ниже:HKEY_CLASSES_ROOT\\[openingType]\\shell\\[verb]\\command
Если команда не DelegateExecute, то все готово! Ура, в противном случае придется продолжать копать...
Под глаголом должны находиться ActivatableClass и PackageId:HKEY_CLASSES_ROOT\\[openingType]\\shell\\[verb]\\ActivatableClassId HKEY_CLASSES_ROOT\\[openingType]\\shell\\[verb]\\PackageId
Запомните эти значения и проверьте значение по адресу:HKEY_CLASSES_ROOT\\ActivatableClasses\\Package\\[PackageId Value]\\ActivatableClassId\\[ActivatableClassId Value]\\Server
Наконец, проверьтеHKEY_CLASSES_ROOT\\ActivatableClasses\\Package\\[PackageId Value]\\Server\\[Server Value]\\EXEPath
Теперь вы/Windows знаете, какое приложение связано с нужным типом файла! Легко, да?...
Примечание: Я понял это примерно через неделю простого ручного просмотра реестра и решил, что должен разместить это здесь, если кому-то это когда-нибудь понадобится снова. Если я что-то упустил или сказал что-то неправильно, пожалуйста, дайте мне знать.