Edge (хром) требует двоичного файла, отличного от UWP, для NativeMessaging? - PullRequest
0 голосов
/ 17 июня 2020

Edge Legacy требует наличия собственного хост-приложения для обмена сообщениями UWP. Можно ли использовать это же собственное хост-приложение для обмена сообщениями UWP для Edge на основе хрома или требуется для использования двоичного файла хоста Win32?

Ответы [ 2 ]

0 голосов
/ 27 июня 2020

Pieter,

В настоящее время ответ - «Нет», поскольку исполняемый файл UWP имеет зашифрованный путь при развертывании на машине Windows 10. Это делает относительно невозможным узнать его путь назначения, чтобы вы могли указать его в манифесте собственного хоста сообщений.

0 голосов
/ 18 июня 2020

Встроенный обмен сообщениями в расширении MS Edge Chromium будет работать аналогично тому, как он работает для Chrome расширений Google.

Чтобы зарегистрировать собственный узел обмена сообщениями, приложение должно установить файл манифеста, который определяет конфигурация хоста для обмена сообщениями. Ниже приведен пример файла манифеста:

{
    "name": "com.my_company.my_application",
    "description": "My Application",
    "path": "C:\\Program Files\\My Application\\chrome_native_messaging_host.exe",
    "type": "stdio",
    "allowed_origins": [
        "chrome-extension://knldjmfmopnpolahpmmgbagdohdnhkik/"
    ]
}

Местоположение файла манифеста зависит от платформы.

На Windows файл манифеста может находиться в любом месте файла система. Установщик приложения должен создать раздел реестра

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Edge \ NativeMessagingHosts \ com.my_company.my_application

или

HKEY_CURRENT_USER \ SOFTWARE \ Google \ Chrome \ NativeMessagingHosts \ com.my_company.my_application

и установите для этого ключа значение по умолчанию, равное полному пути к файлу манифеста. Например, используя следующую команду оболочки:

REG ADD "HKCU\Software\Microsoft\Edge\NativeMessagingHosts\com.my_company.my_application" /ve /t REG_SZ /d "C:\path\to\nmh-manifest.json" /f

или используя следующий файл .reg:

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Edge\NativeMessagingHosts\com.my_company.my_application]
@="C:\\path\\to\\nmh-manifest.json"

Когда Microsoft Edge ищет собственные узлы обмена сообщениями, 32-разрядный реестр сначала запрашивается, а затем - 64-разрядный реестр.

Для получения дополнительных сведений перейдите по ссылке ниже.

Встроенный обмен сообщениями для расширений Edge Chromium

Чтобы узнать разницу в подходе для устаревших расширений Edge, вы можете обратиться к ссылке ниже.

Собственный обмен сообщениями в устаревших версиях Microsoft Edge

...