Mi piacerebbe eseguire un comando (exe da qualche parte sul disco) con argomenti in un semplice addon di WebExtensions e possibilmente ottenere il suo stdout. C'è un modo per farlo in WebExtensions, dal momento che le API precedenti vengono deprecate?Come eseguire un programma da riga di comando in Firefox Webextensions?
risposta
Questo post del blog ricorda come - https://blog.mozilla.org/addons/2016/06/09/webextensions-for-firefox-49/
Leggere la sezione runtime.connectNative
. Dicono:
runtime.connectNative
Questa API consente di comunicare con altri processi sul sistema operativo dell'host. È un'API comunemente usata per gestori di password e software di sicurezza che deve comunicare con processi esterni.
Per comunicare con un processo nativo, esiste un processo in due passaggi. Innanzitutto, il programma di installazione deve installare un file manifest JSON in un percorso file appropriato sul computer di destinazione. Quel manifest JSON fornisce il collegamento tra Firefox e il processo. In secondo luogo, l'utente installa il componente aggiuntivo. Poi l'add-on può chiamare il connectNative, sendNativeMessage e altre API:
chrome.runtime.sendNativeMessage('your-application', { text: "Hello" }, function(response) { console.log("Received " + response); });
Firefox inizierà il processo, se non è già iniziato, e comandi tubo attraverso il processo. Seguire insieme all'avanzamento di runtime.connectNative su Bugzilla.
- 1. Come arrestare correttamente un programma da riga di comando java
- 2. Come eseguire un comando windows da firefox addon?
- 3. chrome/firefox- come eseguire un comando javascript
- 4. Come si chiama un programma da riga di comando da un'estensione shell di gnome?
- 5. eseguire un'applicazione da riga di comando interattiva da java
- 6. Java esegui il programma da riga di comando
- 7. Come si esegue un programma da riga di comando in Delphi?
- 8. Utilizzo di * nella riga di comando in un programma Java
- 9. Come eseguire TestNG dalla riga di comando
- 10. Posso eseguire dal programma della riga di comando creato da Eclipse?
- 11. come eseguire un programma di erlang con funzione di arity maggiore di 1 da una riga di comando
- 12. Java eseguire il programma da riga di comando 'find' restituisce l'errore
- 13. Come posso scoprire se un programma è in esecuzione da riga di comando o dal web?
- 14. come eseguire un comando al terminale dal programma java?
- 15. Come precompilare l'input da riga di comando
- 16. Come si esegue una classe principale sbt dalla shell come normale programma da riga di comando?
- 17. Come eseguire un .class Java dalla riga di comando
- 18. Come progettare un programma da riga di comando riutilizzabile per uno sviluppo futuro di una GUI?
- 19. non può eseguire un file di Windows da riga di comando SQL comando source usando
- 20. Come convertire un argomento da riga di comando in int?
- 21. Esegui comando da riga di comando da NSIS
- 22. Impossibile eseguire git dalla riga di comando
- 23. Come posso lanciare un URL in Firefox in background dalla riga di comando di Ubuntu?
- 24. Impossibile eseguire UIAutomationTest dalla riga di comando
- 25. Python, eseguendo gli strumenti da riga di comando in parallelo
- 26. Eseguire un comando di Linux nel programma c
- 27. Esegui comando vim da riga di comando
- 28. Come eseguire ffmpeg dalla riga di comando in android
- 29. Passare gli argomenti nel programma C dalla riga di comando
- 30. Eseguire una shell di comando Django dalla riga di comando
Poiché il blog elenca questa API come "in corso", suppongo che non possa essere utilizzata in questo momento? –
@MichaelBednarek probabilmente può essere utilizzato solo in Nightly e Dev Edition. Se vuoi creare un addon SDK Addon per Firefox, puoi usare 'child_process' - https://developer.mozilla.org/en-US/Add-ons/SDK/Low-Level_APIs/system_child_process – Noitidart