Как настроить сопоставление файлов Microsoft Edge для открытия файлов .htm? - PullRequest
0 голосов
/ 17 октября 2018

В моем программном обеспечении я использую ShellExecuteEx, чтобы открыть отчет, представленный в виде локального .htm файла.Иногда в некоторых системах конечных пользователей для файлов .htm по умолчанию нет ассоциации файлов.

Чтобы установить такую ​​ассоциацию файлов в системе, предшествующей Windows 10, я бы установил следующие ключи реестра для использования IE:

Key: HKEY_CURRENT_USER\Software\Classes\htm.file\Shell\open\Command
REG_SZ name: ""
REG_SZ value: "C:\Program Files (x86)\Internet Explorer\iexplore.exe" "%1"

Key: HKEY_CURRENT_USER\Software\Classes\.htm
REG_SZ name: ""
REG_SZ value: htm.file

Key: HKEY_CURRENT_USER\Software\Classes\.htm
REG_SZ name: PerceivedType
REG_SZ value: Document

Затем я уведомляю Windows Explorer об изменении:

SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, NULL, NULL);

Это хорошо работает, но как вы делаете то же самое для Microsoft Edge в Windows 10?

PS.:
Я не хочу использовать IE там, потому что он всегдапоказывает дополнительную вкладку с подсказкой для переключения на Edge, что очень смущает моих конечных пользователей.

1 Ответ

0 голосов
/ 15 июня 2019

В Windows 10 это делается с помощью IApplicationAssociationRegistrationInternal (" 2a848e25-d688-4aa3-8e55-0c16cb3a2dfb ")

, созданной с помощью SHCreateAssociationRegistration1008 *

Set " AppX4hxtad77fbk3jkkeerkrm0ze94wjf3s9 " для Microsoft Edge ProgId

(проверено на Windows 10 - 1803, 17134.820 )

...