[英]Creating a single process in C# to receive multiple Chrome Native Messages
本質上,我想做的就是擁有一個始終保持打開狀態的應用程序(單個進程),並且有一個線程正在監聽Chrome的本機消息。
我目前的理解是Chrome為每個本機消息啟動一個單獨的過程。 如果要使用Mutex創建單個流程,那么我將無法將標准輸入傳遞給主流程,因為我必須先使用適當的參數再次啟動流程。 Chrome可能與此類似,因此需要多個過程。
在我看來,必須有一個中間進程通過套接字或類似的方式進行通信,以通知Chrome消息的主要進程。 是這樣嗎 有沒有辦法用一個過程來實現呢?
輸入非常感謝!
另外,Chrome似乎會以靜默方式啟動其本機消息傳遞應用程序進程(無顯示)。 這是我做錯了還是正常的?
使用chrome.runtime.connectNative,您可以創建長時間運行的本機實例。 然后,您需要在后台腳本中保留該JavaScript參考,以便您可以重用它。
manifest.json的;
"background": {"scripts": ["background.js"]},
background.js;
var nativePort = null;
function getNativePort(){
if (nativePort == null)
nativePort = chrome.runtime.connectNative("...");
}
如果要從內容腳本發送消息,則必須先將其轉發到后台腳本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.