Versuchen Catch auf ausführbare exe in Powershell?

8

Ich möchte in Powershell einen Catch für eine .exe ausführen, was ich so habe:

%Vor%

Wenn ich eine ungültige Domain sage, gibt es einen Fehler wie psftp.exe : Fatal: Network error: Connection refused zurück, aber mein Code fängt das nicht ein.

Wie würde ich Fehler finden?

    
JBurace 10.09.2012, 21:03
quelle

1 Antwort

15

try / catch in PowerShell funktioniert nicht mit nativen ausführbaren Dateien. Überprüfen Sie nach dem Aufruf von psftp.exe die automatische Variable $LastExitCode . Das enthält den Beendigungscode von psftp, z. B .:

%Vor%

Das obige Skript geht davon aus, dass die exe bei Erfolg 0 zurückgibt und andernfalls nicht null. Wenn dies nicht der Fall ist, passen Sie die Bedingung if (...) entsprechend an.

    
Keith Hill 10.09.2012, 21:12
quelle

Tags und Links