我正在尋找一種更好的方式來在我的Firefox擴展和.NET應用程序之間傳遞信息。目前,我正在使用文本文件通過使用FileSystemWatcher類將信息傳遞給.NET應用程序。當Firefox擴展寫入特定目錄時,.NET應用程序將監視新文件,然後將信息存儲在本地SQL Server數據庫中。現在,我想查詢FF擴展中的信息,但除了可能使用剪貼板之外,我還沒有找到一個好的方法來做到這一點。使用文本文件有點笨重,所以任何建議,將不勝感激。Firefox擴展和.NET應用程序之間的通信
2
A
回答
2
如果您使用.net 3.5+然後考慮使用named pipes。我已經看到他們非常有效地使用相應的庫/ DLL在Firefox擴展/插件和.net應用程序之間進行通信。 (Firefox的插件確實需要的本地C++代碼一點點)
另一種方法是包括在您的應用某種形式的服務器,讓你的Firefox擴展通過socket/TCP與溝通。如果您使用HTTP作爲您的協議,那麼您可以通過執行諸如從您的擴展中打http://localhost:12345/getdata?id=1這樣的通信。通過HTTP進行通信在兩端應該相對容易,但要確保建立一個良好的威脅模型,以便識別和緩解由於在服務器上運行服務器而產生的任何安全問題。
除此之外,我會搜索.net/windows IPC並查看其他Windows機制可能適合的內容。它們應該比編寫文本文件和註冊表鍵更健壯。 (我預見剪貼板路線非常脆弱。)這個question可能是一個好的開始。
相關問題
- 1. iOS應用程序和.NET應用程序之間的通信?
- 2. .Net 2.0和.Net 4.0應用程序之間的通信
- 3. 2個Firefox插件(交叉擴展通信)之間的通信
- 4. 擴展和插件之間的通信
- 5. 從C#應用程序到Firefox擴展的通信
- 6. Chrome擴展程序:內容腳本和background.html之間的通信
- 7. Chrome擴展程序:iframe和彈出窗口之間的通信
- 8. Windows應用程序和Android應用程序之間的通信
- 9. Web應用程序和Android應用程序之間的通信
- 10. C++應用程序和web應用程序之間的通信
- 11. iPhone應用程序和Rails應用程序之間的通信
- 12. Java應用程序和C++應用程序之間的通信
- 13. .NET程序之間的通信
- 14. 擴展:如何處理Ruby on Rails應用程序之間的通信?
- 15. Intranet應用程序之間的通信
- 16. Rails應用程序之間的通信
- 17. C++和vb.net應用程序之間的進程間通信
- 18. 工具來觀察應用程序之間的.NET Remoting通信?
- 19. 與手錶套件擴展和iPhone應用程序通信
- 20. Java和.NET應用程序通信
- 21. Delphi應用程序和使用Union的Android應用程序之間的通信
- 22. .Net WebBrowser和WinForms應用程序中的HTML之間的雙向通信
- 23. 如何通過存儲「回覆」塊來在iOS應用程序和WatchKit擴展之間進行通信?
- 24. 網絡應用程序和原生android應用程序之間的通信
- 25. Web應用程序和C應用程序之間的通信?Web服務?
- 26. Rails網絡應用程序和Mac應用程序之間的通信
- 27. java應用程序和html應用程序之間的跨域通信
- 28. 桌面應用程序和Web應用程序之間的通信
- 29. Android應用程序和C#窗體應用程序之間的藍牙通信
- 30. Android - 小部件和它的應用程序之間的通信
感謝您的建議。我去實現一個HTTP服務器。我在.NET應用程序中使用HttpListener創建了一個服務器類,並在擴展中使用了XPCOM作爲套接字。 – 2009-11-12 17:12:59