2017-11-17 15 views
-1

Ich versuche, ein Powershell-Skript ausgeführt werden soll, wie folgt:Fenster Eingabeaufforderung öffnet und schließt sofort beim Laufen Powershell-Skript

Start-Process -FilePath "C:\svn\Services\trunk\Services.In4m.Agent.Host\bin\agent.exe" -Argument --help 

Gibt es Gründe, warum dies geschehen könnte. Wie schreibt man ein Skript, damit das Eingabeaufforderungsfenster nicht sofort geschlossen wird?

+0

Dies geschieht, weil die agent.exe abgeschlossen ist und schließt. Sie könnten versuchen -Wait – ArcSet

+0

Mit dem -Warten auch, es schließt. jede andere Lösung zu diesem –

+0

Powershell nicht Ehre -warte Anfrage –

Antwort

1

Es sieht aus wie das Programm endet. Wenn der Befehl nur den Hilfetext ausgibt und endet, wird das Fenster nach Abschluss geschlossen.

Die beste Möglichkeit besteht darin, die Ausgabe des Befehls zu erfassen und sie dem Benutzer anzuzeigen.

& "C:\svn\Services\trunk\Services.In4m.Agent.Host\bin\agent.exe" --help | Write-Host 

Wenn Sie ein separates Fenster öffnen möchten, und warten, bis der Benutzer es zu schließen drücken Sie die Eingabetaste, Sie so etwas tun könnte:

Start-Process 
    -FilePath "powershell.exe" 
    -ArgumentList "& 'C:\svn\Services\trunk\Services.In4m.Agent.Host\bin\agent.exe' --help; Read-Host" 

Es kommt nur darauf an, was Sie versuchen erreichen.

+0

Das Befehlsfenster wird immer noch geschlossen. –

+0

Ich versuche, agent.exe zu öffnen und halte das Fenster, das von agent.exe ausgelöst wird. –

+0

Welchen Befehl oben hast du ausgeführt, der damit endet, dass das Fenster zu früh schließt? Was passiert, wenn Sie agent.exe unabhängig von PowerShell über die Befehlszeile ausführen? Geht es sofort zur Eingabeaufforderung zurück? –

0

Fügen Sie dies am Ende Ihres Powershell-Skripts hinzu:
Es fordert den Benutzer auf, eine beliebige Taste zu drücken und wartet, bis der Benutzer eine Taste drückt.

Write-Host "Press any key to continue ...". 
$x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") 
+0

auszuführen Dies wird das Powershell-Fenster enthalten, nicht das Cmd-Fenster, das über agent.exe generiert wird –

+0

Oh, Sie können dann Noexit-Tag verwenden. – SparkWerk

+0

@the_coder_in_me Das Problem klingt wie Ihr Programm. – TheIncorrigible1

Verwandte Themen