スタック オーバーフローの善良な人々のおかげで、Chrome 拡張機能からネイティブ (C++) アプリにメッセージを送信することができました。ネイティブ ホスト アプリがメッセージを受信すると、任意の応答データを返すことができます。ただし、これはネイティブ アプリが拡張機能からデータを受信することへの応答です。また、拡張機能によって送信されるメッセージは同期的ではないため、拡張機能はホスト アプリからの応答を待ちません。
私の要件は、ネイティブ アプリから通信接続を開始することです。つまり、ネイティブ アプリは定期的に Chrome 拡張機能に更新を送信します。ネイティブ アプリからメッセージの送信を開始し、それを適切な Chrome 拡張機能に渡すメカニズムはありますか?
私は基本的に次のことを達成したいと考えています: webRequest.OnBeforeSendHeaders のようなイベントにメッセージを投稿し、メッセージへの応答で、URL 要求をブロックする必要があるかどうかを判断したいと考えています。応答の受信がコールバックで行われる場合、これはほとんどが別のスレッドで行われるため、webRequest.OnBeforeSendHeaders スレッドで応答を待つことができません。ネイティブ アプリがリクエストに応答するのを待っている間に、webRequest.OnBeforeSendHeaders を一時停止する方法はありますか? または、webRequest.OnBeforeSendHeaders はメッセージ バッファーを (ループで) 覗いて、ネイティブ アプリが応答したかどうかを確認できますか?
または、これを達成する別の方法はありますか?