Jump to content

meiertom

Members
  • Gesamte Inhalte

    6
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von meiertom

  1. Hallo Dizzy

     

    danke zunächst für die Antwort. Hier (m)eine Batchdatei:

     

    robocopy.exe c:\temp\robocopy\src c:\temp\robocopy\dest /S /E /TEE /R:0 /W:0

    if errorlevel 16 echo ***FATAL ERROR*** & goto end

    if errorlevel 15 echo FAIL MISM XTRA COPY & goto end

    if errorlevel 14 echo FAIL MISM XTRA & goto end

    if errorlevel 13 echo FAIL MISM COPY & goto end

    if errorlevel 12 echo FAIL MISM & goto end

    if errorlevel 11 echo FAIL XTRA COPY & goto end

    if errorlevel 10 echo FAIL XTRA & goto end

    if errorlevel 9 echo FAIL COPY & goto end

    if errorlevel 8 echo FAIL & goto end

    if errorlevel 7 echo MISM XTRA COPY & goto end

    if errorlevel 6 echo MISM XTRA & goto end

    if errorlevel 5 echo MISM COPY & goto end

    if errorlevel 4 echo MISM & goto end

    if errorlevel 3 echo XTRA COPY & goto end

    if errorlevel 2 echo XTRA & goto end

    if errorlevel 1 echo COPY & goto end

    if errorlevel 0 echo --no change-- & goto end

    :end

     

     

    Im Zielverzeichnis sind zusätzliche Dateien, die im Quellverzeichnis nicht enthalten sind => somit müsste bei mehrfachem Aufruf der Batchdatei der Errorlevel 2 zurückgegeben werden. Es kommt aber immer 0.

    Weiteres Beispiel ist, wenn falsche Parameter (z.B. Quellverzeichnis nicht vorhanden) verwendet werden. Hier müsste Errorlevel 16 zurückkommen, aber auch hier kommt immer 0.

    Verwende ich statt Version XP026 die Version XP010 ist alles so wie es sein soll.

     

     

    PS: Meine Robocopy-XP026-EXE ist 212.992 Bytes gross - vieleicht gibt es ja auch noch unterschiedliche Binärstände mit der selben Versionsnummer ?

  2. Es gibt keine Fehlermeldung. Der Rückgabewert ist immer 0, egal ob Fehler beim Robocopy-Kopiervorgang aufgetreten sind oder nicht.

     

    Werden z.B. ein paar Dateien kopiert, so müsste der Errorlevel=1 sein, ist er aber nicht. Bei falschen Parametern kommt zwar ein Fehlertext von Robocopy, aber Errorlevel=0 statt der 16 (wie in XP010/XP027)

  3. Ja, die verschiedenen Versionen unterscheiden sich marginal voneinander (zumindestens laut der Hilfe robocopy /?)

     

    In dieser einfachen Parameterauflistung steht jedoch in keiner Version ein Hinweis auf den Robocopy-Rückgabewert (Errorlevel). Diese Info habe ich bisher lediglich in der offiziellen MS-Doku zu Robocopy XP010 gefunden. Für die neueren Version Xp026 und die aus Vista XP027 kann ich keine Doku finden. Da aber die neueste XP027 korrekt bezgl. des Rückgabewertes arbeitet (genauso wie in XP010) gehe ich derzeit davon aus, dass die XP026 ein Bug hat. Leider läuft die XP027 nicht unter Win XP/2003, sodass ich nachwievor nach einem Workaround/Bugfix suche.

  4. Hallo,

     

    ich habe ein Problem mit Robocopy.

     

    Es gibt derzeit 3 mehr oder minder aktuelle Versionen von robocopy:

     

    Version XP010:

    - Enthalten im Windows Server 2003 Resource Kit

    - vollständige, zugehörige Dokumentation ebenfalls enthalten

    - URL: Download details: Windows Server 2003 Resource Kit Tools

     

     

    Version XP026:

    - Enthalten im Paket von Microsofts Robocopy GUI

    - unvollständige, nicht zugehörige Dokumentation enthalten (die von XP010 ist enthalten)

    - URL: http://download.microsoft.com/download/f/d/0/fd05def7-68a1-4f71-8546-25c359cc0842/UtilitySpotlight2006_11.exe

     

     

    Version XP027:

    - Enthalten in Windows Vista

    - keine Dokumentation enthalten

    - Leider nicht lauffähig unter Windows XP/2003

     

     

    Folgendes Problem habe ich:

    Das Ergebnis eines Robocopy-Aufrufes (z.B. aus einer Batchdatei)

    kann mittels ERRORLEVEL abgefragt werden.

    Die Version XP010 und XP027 verhalten sich hierbei beide korrekt,

    nähmlich so wie in der Dokumentation von XP010 beschrieben:

     

    ==============================================================

    robocopy.exe [sRC] [DEST] /S /E

    if errorlevel 16 echo ***FATAL ERROR*** & goto end

    if errorlevel 15 echo FAIL MISM XTRA COPY & goto end

    if errorlevel 14 echo FAIL MISM XTRA & goto end

    if errorlevel 13 echo FAIL MISM COPY & goto end

    if errorlevel 12 echo FAIL MISM & goto end

    if errorlevel 11 echo FAIL XTRA COPY & goto end

    if errorlevel 10 echo FAIL XTRA & goto end

    if errorlevel 9 echo FAIL COPY & goto end

    if errorlevel 8 echo FAIL & goto end

    if errorlevel 7 echo MISM XTRA COPY & goto end

    if errorlevel 6 echo MISM XTRA & goto end

    if errorlevel 5 echo MISM COPY & goto end

    if errorlevel 4 echo MISM & goto end

    if errorlevel 3 echo XTRA COPY & goto end

    if errorlevel 2 echo XTRA & goto end

    if errorlevel 1 echo COPY & goto end

    if errorlevel 0 echo --no change-- & goto end

    :end

    ==============================================================

     

    Ein Auruf der Version XP010 und XP027 mit falschem Parametern ergibt z.B. immer den

    Errorlevel 16 - FATAL ERROR

     

    Die Version XP026 jedoch gibt IMMER den Errorlevel 0 zurück,

    sodass eine Überprüfung des Robocopyergebnisses faktisch nicht möglich ist.

     

    Kann das jemand bestätigen?

    Mache ich was falsch?

    Kennt jemand einen Workaround?

     

    Auch wäre interessant zu wissen, ob es jemandem gelungen ist, die Vista

    Version XP027 unter Windows XP/2003 zum Laufen zu bekommen.

     

    Gibt es zu der Version XP026 oder XP027 irgendwo doch eine aktuelle,

    "offizielle" Dokumentation?

     

     

    Ich hoffe auf "klärende" Hinweise, Danke schon mal.

     

     

    Gruß Tom

×
×
  • Neu erstellen...