Comment démarrer un programme stocké sur un partage UNC à partir de la ligne de commande avec des paramètres?
-
08-07-2019 - |
Question
Nous utilisons un programme interne stocké sur un partage UNC afin que les mises à jour soient transparentes. J'aimerais lui fournir des paramètres de ligne de commande tels que:
\\server\share\in_house_thingy.exe myusername mypassword
Mais je n'arrive pas à le faire fonctionner dans CMD, PowerShell ou via un raccourci.
Quelqu'un a des idées?
La solution
Pour un raccourci, modifiez la cible de la manière suivante:
"\\server\share\in_house_thingy.exe" myusername mypassword
sauf si vous voulez vraiment utiliser PowerShell pour que cela fonctionne.
Autres conseils
Vous pouvez utiliser:
$app = '\\server\share\in_house_thingy.exe'
$arguments = 'myusername mypassword'
$process = [System.Diagnostics.Process]::Start($app, $arguments)
L'objet $ process vous donnera un objet de processus en direct si vous souhaitez obtenir un code de sortie ou d'autres informations de ce processus.
utilisez % ~ dp0
dans un fichier de traitement par lots pour le chemin actuel (unc), y compris le \
final
dans un script powershell, utilisez ceci pour le chemin actuel (unc) sans fin \
<*> = $myInvocation.MyCommand.Definition
$dp0 = [System.IO.Path]::GetDirectoryName(<*>)
Je viens de remarquer qu'il existe un fichier .CMD qui copie le fichier du partage dans le répertoire temporaire et l'exécute localement.
Si vous pouviez voter avec cette réponse s'il n'y avait pas de meilleure solution, cela fonctionnerait.