Windows コンソール アプリケーションと、双方向通信を行おうとしているクロム パッケージ アプリがあります。彼らがpythonアプリで持っている例に従いましたが、運がありませんでした。
次の手順を実行しました。
HKEY_LOCAL_MACHINE\SOFTWARE\Google\NativeMessagingHosts: my.app.name : c:\path\to\my.app.name.json のレジストリにこのエントリを作成しました
その場所に json ファイルを作成しました: { "name": "my.app.name", "description": "Chrome Native Messaging API", "path": "c:\path\to\my.app .name\consoleApp.exe", "type": "stdio", "allowed_origins": [ "chrome-extension://offmjeicniagcebcbclkdlkllfibllfh/" ] }
パッケージ化されたアプリ スクリプトに以下を追加しました。
function connect() { var hostName = "my.app.name"; appendMessage("Connecting to native messaging host <b>" + hostName + "</b>") port = chrome.runtime.connectNative(hostName); port.onMessage.addListener(onNativeMessage); port.onDisconnect.addListener(onDisconnected); } function appendMessage(text) { document.getElementById('messages').innerHTML += "<p>" + text + "</p>"; } function onNativeMessage(message) { appendMessage("Received message: <b>" + message + "</b>"); } function onDisconnected() { appendMessage("Failed to connect: " + chrome.runtime.lastError.message); port = null; }
接続機能を呼び出すボタンをクリックすると、次のエラーが発生します。
「無効なネイティブ メッセージング ホスト名が指定されました」
考えられるあらゆる方法でこれを試してみましたが、ドキュメントやサンプル コードはほとんどありません (ほとんどありません)。誰にもアイデアはありますか?
ありがとう