ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
904
904
EMPFEHLEN
-
17.08.09 10:43 #1Ringelsocke Tutorials.de Gastzugang
Vorabinfo: Betriebssystem Vista, die Batch habe ich einfach erstellt indem ich eine Textdatei erstellt habe und in .bat umbenannt habe und ich starte sie einfach per Doppelklick (bzw. später soll sie von einem C# Programm aufgerufen werden)
Hallo, ich habe eine Batchdatei die eine Xsl-Transformation durchführt. Das geht auch ganz gut und ich kann mir mit %ERRORLEVEL% anzeigen lassen ob die Transformation erfolgreich war oder es Fehler gab. Nun möchte ich aber nicht nur die "0" (bei Erfolg) oder "1" (bei Fehler) ausgeben sondern auch noch einen benutzerfreundlichen Fehlertext.
Dachte das wäre einfach über goto zu lösen, aber es funktioniert leider bei mir nicht, die Batchdatei geht in der ersten Zeile in der ich goto verwende zu, d.h. ich sehe auch die Fehlermeldung nicht (zum pause kommt er garnicht weiter, das Konsolenfenster geht einfach zu, zu schnell um noch was lesen zu können).
Hier die entsprechenden Zeilen:
--------------------------------------------------
IF %ERRORLEVEL% 0 goto FINISH_SUCCESS
goto FINISH_ERROR
@ECHO.
@ECHO.
:FINISH_SUCCESS
COLOR 2
@ECHO *****************************************
@ECHO Export finished.
@ECHO Exittime: %date% %time%
@ECHO *****************************************
@ECHO.
goto END_THIS
:FINISH_ERROR
COLOR 4
@ECHO *****************************************
@ECHO Export finished. Errors occured!
@ECHO Exittime: %date% %time%
@ECHO *****************************************
@ECHO.
goto END_THIS
:END_THIS
@ECHO.
pause
--------------------------------------
Hat jemand eine Idee was ich falsch mache? Beim googeln findet man sehr viele verschiedene Batch-Syntax, wenn ich das @ vor dem ECHO weglasse dann printet er mir scheinbar alles aber macht nichts. Manchmal wird bei der Sprungmarke goto :Sprungmarke geschrieben, machmal so wie ich's oben hab ohne das :. Hab aber beides erfolglos probiert.
Wäre für jeden Tipp dankbar!
gruß & thx
Ringelsocke
-
17.08.09 10:55 #2
- Registriert seit
- Jun 2005
- Beiträge
- 8.169
Hi.
Es muss entweder
oder (wenn die Befehlszeilenerweiterungen aktiviert sind):Code :1
IF ERRORLEVEL 0 goto FINISH_SUCCESS
heißen.Code :1
IF %ERRORLEVEL% EQU 0 goto FINISH_SUCCESS
Allerdings würde die erste Bedinung immer zutreffen, da die Bedingung wahr ist, falls der letzte Befehl bzw. das letzte ausgeführte Programm einen Code größer oder gleich dem angegebenen Wert hatte. Siehe help if
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
17.08.09 11:03 #3Ringelsocke Tutorials.de Gastzugang
Die zweite Variante geht! Danke!
gruß
Ringelsocke
-
17.08.09 11:05 #4
- Registriert seit
- Jun 2005
- Beiträge
- 8.169
Die erste Variante würde auch funktionieren, du mußt nur die größeren Fehlercodes immer zuerst prüfen:
GrußCode :1 2
IF ERRORLEVEL 1 GOTO FINISH_ERROR IF ERRORLEVEL 0 GOTO FINISH_SUCCESS
PS: statt vor jede Zeile ein @ Zeichen zu schreiben, kannst du auch am Anfang die Ausgabe der ausgeführten Befehle ausschalten:
Code :1
@echo off
Geändert von deepthroat (17.08.09 um 11:10 Uhr)
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
17.08.09 12:51 #5Ringelsocke Tutorials.de Gastzugang
danke für den Tipp, aber da mein Programm bei anderen Usern läuft will ich die ausgeführten Aktionen sehen, da ich im Fehlerfall einfach einen Screenshot anfordern kann (die Ausgabe der (dynamisch per Programm erzeugten) Batch-Datei ist in meinem Programm umgeleitet auf eine Programm-"Konsole")
gruß
Ringelsocke
Ähnliche Themen
-
START "Datei.exe" fehlgeschlagen -wie geht das batch-Programm trotzdem weiter?
Von chrysler im Forum Sonstige SprachenAntworten: 2Letzter Beitrag: 09.10.06, 17:27 -
Zwei goto- Befehle in einer on(Release)Anweisung - geht das?
Von Clausclaus im Forum Flash PlattformAntworten: 3Letzter Beitrag: 24.01.06, 11:00 -
batch-datei funktioniert nicht in tiefen verzeichnissen
Von wolb im Forum Sonstige SprachenAntworten: 0Letzter Beitrag: 03.09.05, 16:28 -
Batch Datei lässt sich nicht schließen
Von Bella_Isy im Forum Sonstige SprachenAntworten: 6Letzter Beitrag: 15.04.05, 14:44 -
datei.php?show=datei.php?blabla geht nicht?
Von DaRula im Forum PHPAntworten: 3Letzter Beitrag: 28.07.02, 12:28





Zitieren

Login





