Come si avvia un programma memorizzato su una condivisione UNC dalla riga di comando con parametri?
-
08-07-2019 - |
Domanda
Esiste un programma interno che utilizziamo ed è archiviato in una condivisione UNC in modo che gli aggiornamenti siano trasparenti. Vorrei fornire alcuni parametri della riga di comando in questo modo:
\\server\share\in_house_thingy.exe myusername mypassword
Ma non riesco a farlo funzionare in CMD o PowerShell o tramite un collegamento.
Qualcuno ha qualche idea?
Soluzione
Per una scorciatoia, cambia l'obiettivo in modo che sia:
"\\server\share\in_house_thingy.exe" myusername mypassword
a meno che tu non voglia davvero usare PowerShell per farlo funzionare.
Altri suggerimenti
Puoi usare:
$app = '\\server\share\in_house_thingy.exe'
$arguments = 'myusername mypassword'
$process = [System.Diagnostics.Process]::Start($app, $arguments)
L'oggetto $ process ti darà un oggetto processo live se vuoi ottenere un codice di uscita o altre informazioni da quel processo.
usa % ~ dp0
in un file batch per il percorso corrente (unc) incluso il \
in uno script PowerShell usalo per il percorso (unc) corrente senza trascinare \
<*> = $myInvocation.MyCommand.Definition
$dp0 = [System.IO.Path]::GetDirectoryName(<*>)
Ho appena notato che esiste un file .CMD che sta copiando il file dalla condivisione alla directory temporanea ed eseguendolo localmente.
Se tutti potessi votare questa risposta se non esiste una soluzione migliore, funzionerà.