Seite 1 von 2
Programm Exitcode
Verfasst: 20.11.2005 14:19
von rolf
Hallo,
kann ich eigendlich einem Programm einen Exitcode bei der Beendung des Programmes setzen?
Verfasst: 20.11.2005 14:22
von FISCHAUGE
Verfasst: 20.11.2005 14:22
von Green Snake
Meinst du sowas?
End MessageRequester("","",0)
Verfasst: 20.11.2005 14:24
von ts-soft
PureBasic.chm hat geschrieben:Syntax
End [ExitCode]
Beschreibung
Beendet ordentlich die Programmausführung. Der optionale 'ExitCode' Parameter kann angegeben werden, wenn das Programm einen Fehlercode zurückgeben soll (häufig in Konsolen-Programmen genutzt).
Verfasst: 20.11.2005 14:29
von rolf
Ja genau ExitCode war genau das was ich gesucht habe.
Vielen Dank.
End [ExitCode] funktioniert irgendwie nicht
Verfasst: 25.11.2005 11:07
von rolf
Hallo,
ich möchte für ein Netzwerkmonitoringsystem (Nagios) mit Purebasic einige kleine Prüfroutinen schreiben.
Ich habe hierzu ein Consolenprogramm geschrieben, das mit dem End Befehl einen Exitcode an das Netzwerkmonitoringsystem übergeben soll.
Der Rückgabe bedeutet hierbei
0=OK, 1=WARNING, 2=CRITICAL ...
Egal welcher Returncode ich zurückgebe, im Monitoing erscheint immer der Status OK.
Mit anderen Programmiersprachen (c, perl, php, shellscript) funktionieren diese Returncodes ohne Probleme.
Ich hab bereits folgende Versuche unternommen den Rückgabewert zu erhalten:
end 2
end "2"
end print("2")
Das Problem besteht sowohl unter Linux als auch unter Windows.
Hat jemand einen Tip für mich?
Verfasst: 25.11.2005 13:15
von ts-soft
Für das Programm per Batch aus und schreibe den Rückgabewert in eine Datei, oder was ähnlichem. Elegantere Möglichkeit kenne ich im Moment leider nicht.
Verfasst: 25.11.2005 13:55
von rolf
Ich hab das eben mal probiert, ich erhalte aber überhaupt keinen Rückgabewert.
Mein Purebasic Code:
OpenConsole()
Print("Test ")
CloseConsole()
End 1
Und das Perlskript:
#!/usr/bin/perl -w
$Check = `/tmp/check_test`;
print $Check;
Das einzige was auf der Console erscheint ist die Ausgabe Test.
Verfasst: 25.11.2005 14:05
von ts-soft
Ich hab Deinen Source zu Console.exe compiliert und folgenden Batch unter Windows verwendet:
Es wurde mit 1 angezeigt, sollte in Linux ähnlich gehen
Verfasst: 25.11.2005 14:39
von rolf
Also ich hab das jetzt auch mal unter Windows compiliert.
Mein %errorlevel% ist immer 0.