Saltar al contenido

Ejecutar un archivo EXE usando un script de PowerShell

Hola usuario de nuestra página web, descubrimos la solución a tu búsqueda, has scroll y la encontrarás más abajo.

Solución:

& "C:Program FilesAutomated QATestExecute 8BinTestExecute.exe" C:tempTestProject1TestProject1.pjs /run /exit /SilentMode

o

[System.Diagnostics.Process]::Start("C:Program FilesAutomated QATestExecute 8BinTestExecute.exe", "C:tempTestProject1TestProject1.pjs /run /exit /SilentMode")

ACTUALIZACIÓN: lo siento, me perdí la oración “(Invoqué el comando usando el operador” & “)”. Tuve este problema cuando estaba evaluando la ruta dinámicamente. Pruebe la construcción Invoke-Expression:

Invoke-Expression "& `"C:Program FilesAutomated QATestExecute 8BinTestExecute.exe`" C:tempTestProject1TestProject1.pjs /run /exit /SilentMode"

Parece que está especificando tanto el EXE como su primer argumento en un solo string p.ej; '"C:Program FilesAutomated QATestExecute 8BinTestExecute.exe" C:tempTestProject1TestProject1.pjs /run /exit /SilentMode'. Esto no funcionará. En general, invoca un comando nativo que tiene un espacio en su camino así:

& "c:some path with spacesfoo.exe" 

Es decir & espera ser seguida por una string que identifica un comando: cmdlet, función, ruta relativa o absoluta del exe nativo.

Una vez que consigas este trabajo:

& "c:some path with spacesfoo.exe"

Comience a trabajar citando los argumentos según sea necesario. Aunque parece que sus argumentos deberían estar bien (sin espacios, sin otros caracteres especiales interpretados por PowerShell).

  1. clon $ argumentos
  2. empuja tus argumentos en nuevo array
  3. & $ruta $argumentos

Manifestación:

$exePath = $env:NGINX_HOME + '/nginx.exe'
$myArgs = $args.Clone()

$myArgs += '-p'
$myArgs += $env:NGINX_HOME

& $exepath $myArgs

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *