Supponiamo di avere un .exe e si desidera controllare se ha le opzioni della riga di comando. Come si può sapere se l'exe ha questa capacità. Nel mio caso, ora che Nir Sofers WebBrowserPassView.exe ha la possibilità di avviarlo tramite cmd.exe e WebBrowserPassView.exe/stext output.txt. Ma come posso sapere se non lo so?Come posso sapere se un file .EXE contiene le opzioni della riga di comando?
risposta
Il modo più semplice sarebbe utilizzare ProcessExplorer, ma richiederebbe comunque una ricerca.
Assicurati che il tuo exe sia in esecuzione e apri ProcessExplorer. In ProcessExplorer trovare il nome del file binario e fare doppio clic per visualizzare le proprietà. Fare clic sulla scheda Stringhe. Cerca l'elenco delle stringhe trovate nel file binario. La maggior parte delle stringhe sarà spazzatura in modo che possano essere ignorate. Cerca qualsiasi cosa possa assomigliare a un interruttore della riga di comando. Prova questo interruttore dalla riga di comando e controlla se fa qualcosa.
Nota che potrebbe essere il tuo file binario semplicemente non ha commutazioni a riga di comando.
Per riferimento, ecco i passaggi sopra riportati per l'eseguibile di Chrome. La linea di comando accettato da Chrome può essere visto nella lista:
Questo è stato estremamente utile per scoprire gli switch per MalwareBytes. Per velocizzare la tua ricerca, la maggior parte degli switch di programma iniziano con "/" o "-" quindi usare la finestra di dialogo Trova (in basso a destra dell'immagine sopra) con questi caratteri può aiutarti a trovare ciò che cerchi più velocemente. –
Che tipo di funzionalità supporta il "Trova" in questo pannello Proprietà di Process Explorer? RegEx? I caratteri jolly? Non riesco a capirlo a prima vista. –
@JohnSuit, solo la ricerca di base ho paura ma potresti notare il pulsante "Salva" che ti consente di esportare l'elenco in un file .txt. È possibile aprire questo documento con qualsiasi editor di testo che supporti RegEx, caratteri jolly ecc. E cercare in questo modo. – Adam
Richiamarlo dalla shell, con un argomento come /?
o --help
. Queste sono le normali opzioni di aiuto.
Non aiutano, dal momento che l'exe inizia appena, senza ulteriore output. – JohnnyFromBF
Sì, ma ci deve essere la possibilità di eseguire il debug di questo tramite RE o altre tecniche. – JohnnyFromBF
@Sei naturalmente sei libero di eseguire il debug attraverso l'app e cercare interruttori. – yas4891
A meno che lo scrittore dell'eseguibile non abbia specificamente fornito un modo per visualizzare un elenco di tutte le opzioni della riga di comando che offre, non c'è modo di farlo.
Come suggerisce Marcin, gli interruttori tipici per la visualizzazione di tutte le opzioni sono o /?
o /help
(alcune applicazioni potrebbero preferire la sintassi in stile Unix, rispettivamente, -?
e -help
,). Ma quelli sono solo una convenzione comune.
Se quelli non funzionano, sei sfortunato. Dovrai controllare la documentazione per l'applicazione, o magari provare a decompilare l'eseguibile (se sai cosa stai cercando).
Basta usare IDA PRO (https://www.hex-rays.com/products/ida/index.shtml) di smontare il file, e la ricerca di qualche opzione nota linea di comando (tramite Cerca ... testo) - in in quella sezione vedrai in genere tutte le opzioni della riga di comando - per il programma (LIB2NIST.exe) nello screenshot qui sotto, per esempio, mostra un'opzione di riga di comando documentata (/ COM2TAG) ma anche alcune non documentate, come/L. Spero che questo ti aiuti?
Davvero Si tratta di un'estensione per la risposta di Marcin.
Ma si potrebbe anche provare a passare argomenti "spazzatura" per vedere se si ottiene eventuali errori indietro. Ottenere qualsiasi risposta dall'eseguibile direttamente nella shell significa che è probabile che guardi gli argomenti che stai passando, con una risposta all'errore vicina alla garanzia che sia.
In caso contrario, potrebbe essere necessario chiedere direttamente agli editori/ai creatori/proprietari ... se si annusano i file binari, sembra proprio troppo lavoro per un utente finale.
Sysinternals ha un altro strumento che potrebbe usare, Strings.exe
Esempio:
strings.exe c:\windows\system32\wuauclt.exe > %temp%\wuauclt_strings.txt && %temp%\wuauclt_strings.txt
Grazie @ utente8027324. Ho aggiunto un po 'di formattazione alla tua risposta. ** Strings.exe ** non è esattamente un modo infallibile per farlo, ma l'ho sicuramente usato per quello scopo prima. –
- 1. Come posso sovrascrivere le opzioni .hgrc sulla riga di comando?
- 2. Opzioni della riga di comando Clang consigliate
- 3. Come posso sapere se un UITableView contiene un NSIndexPath specifico?
- 4. Impossibile analizzare le opzioni della riga di comando lunghe
- 5. C++ e opzioni della riga di comando
- 6. Come posso sapere rapidamente se un elenco contiene solo duplicati?
- 7. Come gestite le opzioni della riga di comando e i file di configurazione?
- 8. Errore riga di comando D8016: le opzioni della riga di comando '/ O2' e '/ RTC1' sono incompatibili
- 9. Come sapere se Array FileInfo [] contiene un file
- 10. Come posso sapere se una variabile VARCHAR contiene una sottostringa?
- 11. Aggiungi icona al file EXE esistente dalla riga di comando
- 12. Esiste un pacchetto per elaborare le opzioni della riga di comando in R?
- 13. Come sapere se l'opzione optparse è stata passata nella riga di comando o come predefinita
- 14. Come sapere se ModelState contiene errori
- 15. Come configurare PyCharm per eseguire py.test con le opzioni della riga di comando come -s?
- 16. Limitazione dei valori delle opzioni della riga di comando
- 17. Come visualizzare le opzioni di compilazione della riga di comando in Visual C++ 2008?
- 18. Cosa sono tutte le opzioni della riga di comando di Maven?
- 19. Come avviare PhantomJS con le opzioni della riga di comando in selenio?
- 20. Come sapere se un file è un EXE o una DLL?
- 21. Utilizzo delle opzioni della riga di comando per salvare un PDF come testo: è possibile farlo?
- 22. Come sapere se una stringa contiene accenti
- 23. Come sapere se un GraphicsPath contiene un punto in C#
- 24. Eseguire la riga di comando interattiva exe utilizzando C#
- 25. Come applicare le opzioni della riga di comando richieste con NDesk.Options?
- 26. Come specificare le opzioni della riga di comando per il servizio in TopSh
- 27. È possibile includere le opzioni della riga di comando nello shebang Python?
- 28. cmake - ottieni le bandiere della riga di comando usate "-D"
- 29. Salta il test singolo con Maven con le opzioni della riga di comando
- 30. ruby Test :: Unità Opzioni riga di comando?
Leggere il manuale o google. Non c'è un modo generico per recuperare queste informazioni – yas4891
Anche se questa non è una domanda centrata sulla programmazione, non penso che meriti necessariamente un downvote. Chiunque abbia downvoted questo: cura di spiegare? – yas4891