問題タブ [chrome-native-messaging]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Chrome ネイティブ メッセージング拡張機能のネイティブ アプリケーションでネイティブ ホスト メッセージを使用する方法
Native Host メッセージングを使用した Chrome 拡張機能に取り組んでいます。ホスト アプリケーションでメッセージ テキストを使用できません。接続の確立から拡張での応答の取得まで、すべて正常に機能しています。単純なテキスト データ型 (文字列/文字) でさらに使用/実行するには、アプリケーションでメッセージ テキストを使用する必要があります。メッセージが UTF8 でエンコードされた形式であることはわかっていますが、デコードしようとしましたが、まだ問題が発生しています。
メッセージ chrome 拡張コンソールをデコードすると、エラーが表示されます:「ネイティブ メッセージング ホストとの通信中にエラーが発生しました。」「cout」の後にそのメッセージテキストを使用すると、「ネイティブメッセージングホストとの通信中にエラーが発生しました」という同じエラーが発生します。メッセージの直接送受信は問題なく動作します。
コードは次のようなものです:
google-chrome - 「ネイティブ メッセージング ホストとの通信中にエラーが発生しました。」ネイティブ ホストからブラウザ拡張機能にメッセージを送信する場合 (Windows)
「Inside onDisconnected(): ネイティブ メッセージング ホストと通信中にエラーが発生しました」というメッセージが表示されます。ネイティブ ホスト アプリからブラウザ拡張機能にメッセージを送信するとき。
これにはいくつかの原因が考えられます:
1) メッセージの先頭で送信された長さが正しくないか、送信された長さバイトの順序が正しくありません (エンディアン)。
2) 書き込む前に stdout をバイナリ モードにしない (stdout がテキスト モードの場合、コードとは別に余分なバイトを追加できます)。
3) メッセージを UTF-8 の有効な json として送信しない。実際、無効なjsonが拒否されるかどうかはわかりませんが、ドキュメントにはメッセージがjsonであるべきだと書かれています。
コードは次のとおりです。
考えられる原因の 3 つすべてが発生していないようです。しかし、特定のエラー メッセージの原因に関する詳細な情報を (Google が提供するソースを見ても) 見つけることができません。WriteFile() は成功し、書き込まれたバイト数は 22 バイトです。合計 22 バイトが書き込まれ、そのうち 4 バイトは長さバイトです。最初の 4 バイトが (16 進数ではなく 10 進数で) 18,0,0,0 であることを確認しました。これは、リトルエンディアン形式で、json メッセージを構成するために続くバイト数を示します。DebugView を使用して json メッセージを確認すると、常に {"results":"0000"} になります。これは 18 バイト/文字です。エスケープされた二重引用符が好まれる場合に備えて、送信することも実験しました。ブラウザの拡張機能で ' s バックグラウンド ページ onDisconnected() イベントが呼び出され、最後の chrome ランタイム エラー メッセージが報告されます (ここで、この質問を定義するエラー メッセージが表示されます)。これは、拡張機能とネイティブ ホスト アプリの間の接続がシャットダウンされていることを意味します。助けていただければ幸いです。
sockets - ネイティブ メッセージングまたは http
Web アプリケーションでローカル シェル コマンドを実行できるようにしたいと考えています。
Chrome ネイティブ メッセージングAPI はそれには適しているようですが、バックグラウンドでのサービスも必要であるため、小さな http サーバーとの実際の違いはわかりません。それらの間に実際の構造上の違いはありますか?ご覧のとおり、インターフェースとして使用されるソケットがどこかにあります。
そのための他の解決策はありますか?
javascript - Chrome Native Messaging で「指定されたネイティブ メッセージング ホストが見つかりません」というメッセージが表示されるのはなぜですか?
私はこれにしばらく取り組んできましたが、これを理解することはできません。Chrome Native Messagingのドキュメントを読みましたが、「指定されたネイティブ メッセージング ホストが見つかりません」というメッセージが引き続き表示されます。拡張子からのエラー。
レジストリが指すマニフェスト:
拡張スクリプト:
connectNative() するとすぐにエラーが発生することに注意してください。拡張マニフェストに「nativeMessaging」権限があります。
レジストリ:
デバッグ: デバッグを行ったところ、connectNative nativeName を com.fordcars.chromekeys から別の名前に変更しても、同じエラーが発生することがわかりました。つまり、レジストリ キーが見つからないか、レジストリ キーが見つからないかのどちらかです。良い manifest.json があります。
ありがとう!
google-chrome-extension - Chrome ネイティブ メッセージ ホストの保護
Chrome 拡張機能を介して起動する Chrome ネイティブ メッセージングを使用してアプリケーションを開発しています。
私の質問は次のとおりです: ホスト アプリケーションが実際に私が提供したものと同じであることを確認するにはどうすればよいですか?
拡張機能によって呼び出されたアプリケーションの信頼性を確保する必要があります。レジストリを読み取ったり、何かが変更されたかどうかを確認したりする権限がない場合、どうすれば取得できますか?
windows - Chrome 拡張機能 - バッチ ファイルへのメッセージ パッシング
サンプル プロジェクト https://developer.chrome.com/extensions/samplesを使用し ました。Python ネイティブ アプリを実行できます。
native-messaging-example-host.bat 内でメッセージを取得する方法はありますか
Python スクリプトをロードしたくない
ここでやりたいことは、chrome {text: "xyz.bat"} からメッセージを送信することです
バッチファイルは START xyz.bat を実行する必要があります
native - ネイティブ メッセージング ホストの起動に失敗しました
ネイティブ メッセージングの例をダウンロードしました。
何も変更せずに実行しようとしていますが、エラーが発生します:
接続に失敗しました: ネイティブ メッセージング ホストを起動できませんでした。