Announcement

Collapse
No announcement yet.

Wie Batch forsetzen bei Fehler? How to continue batch when an error occurs?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Wie Batch forsetzen bei Fehler? How to continue batch when an error occurs?

    Hi,

    wenn ich ein Batch per Kommandozeile laufen lasse und ein Fehler auftritt, bricht das Script ab. Gibt es einen Parameter der Irfanview anweist dennoch weiter zu machen?

    When I get an error (using commandline conversion options) Irfanview stopps working. Is there any way (parameter) to force it continue?

    Olaf

    #2
    Hallo Olaf,

    mit dem Parameter /silent kannst du die Fehlerausgabe unterdrücken.
    Ansonsten könnte es helfen, wenn du dein Skript hier zeigst. Dann werfe ich mal einen Blick drauf.

    Gruß
    Nils

    Comment


      #3
      Hallo Nils,

      /silent klappt NICHT... Irfanview soll den Fehler ja einfach ignorieren OHNE sich zu beenden! (Auch wenn ich das /cmdexit weglasse klappt es nicht: Irfanview bricht einfach ab.)

      beim ersten "dir ..." lege ich eine Verzeichnisliste an. Enthält dann der Name ein Sonderzeichen (öäüß) klappt es nicht mehr.
      Letztlich sieht es so aus (habe 2 irfanview Dateinamenparameter hervorgehoben damit sie nicht übersehen werden):

      dir z:\x\*.jpg /S /B >filelist_original.txt
      i_view32.exe /filelist=filelist_original.txt /cmdexit /resize_long=1280 /aspectratio /convert="h:\x\$D.\@eaTest\$F\SYNOPHOTO%%3ATHUMB_XL.jpg" /filepattern="*.jpg" /jpgq=80 /silent /resample
      Der DIR Befehl gibt mit eine vernünftige Liste (aber ASCII, Text) - erstelle ich eine Dateiliste mit Irfanview (Ansi, UTF) was dann auch nicht klappt! Ich denke irgendwo in der Konvertierung der Zeichensätze ist der Haken.

      PS: Wenn ich die Bilder mit der Slideshow Funktion von Irfanview als Textdatei speichere und diese dann verarbeiten lasse, erstellt Irfanview zwar die Verezihnisse - doch statt "Eingeschränkt" steht dann plötzlich "Auswahl (Eingeschränkt)" - Wenn ich das dann zurückkopiere zum Linux (Quell-)System wird der Name zwar wieder nochmal ... aber ... SEHR seltsam.
      Außerdem liest Irfanview die Namen der Bilder VIEL zu langsam ein. DOS "dir" ist da viel (!) schneller. (habe hier ca. 260.000 Bilder)

      Olaf
      Last edited by ong12; 14.09.2012, 10:47 AM.

      Comment


        #4
        Hallo Olaf,

        bzgl. des Abbrechens: kannst du dein Skript hier mal zeigen oder es mir per PN schicken? Dann kann ich mir das mal anschauen.

        Mit den Umlauten ist das so ein Problem. DOS und somit die DOS-Box können nur ASCII darstellen, Windows verwendet Unicode. Da Unicode viel, viel mehr Zeichen darstellen kann, gibt es immer wieder Probleme. Wenn du aber aus der DOS-Box eine Textdatei erstellen möchtest, die Du mit deutschen Umlauten in einem Windows-Programm weiterverarbeiten möchtest, versuche mal, die Codepage umzustellen:
        Code:
        chcp 1252
        Das kannst du natürlich auch im Skript einbauen.

        Der Standard 850 kann zwar Umlaute, man kommt damit dann auch einigermaßen klar, aber es gibt eben immer wieder Probleme. Mit 1252 kannst du die deutschen Umlaute dann in Windows weiterverarbeiten, aber die Darstellung von Verzeichnisnamen in der DOS-Box ist dann nicht mehr ok. Leider kenne ich hier kein passendes Mittel, um beide Varianten vernünftig zu verwenden, sprich wenn du im Skript eine Liste mit Dateien erstellst, die du dann mit einem Windows-Programm weiterverarbeiten willst und gleichzeitig als Fortschritsanzeige oder nur zur Infor in der DOS-Box darstellen möchtest, dann geht das leider nicht richtig. Hier musst du dann in den sauren Apfel beissen und die Codepage 1252 verwenden und eben mit der fehlerhaften Ausgabe in der DOS-Box leben. Oder man macht sich arbeit und ändert die einzelnen Zeilen für die DOS-Ausgabe durch Textersetzungen. Aber ich denke, das lohnt sich nicht.

        Wie es hier mit der PowerShell aussieht, kann ich nicht sagen. Da will ich mich in der nächsten Zeit tiefer einarbeiten, aber für viele Dinge ist die PS viel zu mächtig und das Laden dauert dann einfach zu lange.

        Zum Einlesen kann ich nicht viel sagen, ich weiss nicht, ob Irfan da nur die Verzeichnisstruktur und die Namen liest oder noch mehr macht.
        Und mit Linux / Unix kann ich aktuell nicht dienen, könnte nur schauen, wie das beim Zugriff auf OpenSolaris aussieht.

        Gruß
        Nils

        Comment


          #5
          Hallo,

          Codepage hatte ich schon versucht - hat aber nicht geklappt.
          PowerShell o.ä. (kleine) Tools will ich eigentlich nicht verwenden, da es ein Script werden soll was universell einsetzbar ist ohne noch irgendetwas anderes (außer iview) zu benötigen.

          Olaf

          Comment


            #6
            Hallo,

            habe mit TotalCommander einfach ein Suchen/Ersetzen drüberlaufen lassen und die "Sonderzeichen" zunächst umgewandelt. Werde sie nach der Konvertierung wieder zurückwandeln.

            Olaf

            Comment


              #7
              Hallo zusammen,

              Olafs Problem wurde nun an anderer Stelle gelöst, als in irfanview selbst.

              Mich würde eine Lösung für die ursprüngliche Frage interessieren:
              …. wenn ich ein Batch per Kommandozeile laufen lasse und ein Fehler auftritt, bricht das Script ab. Gibt es einen Parameter der Irfanview anweist dennoch weiter zu machen?


              Ich kopiere Fotos (ohne sie zu verändern) von Ort_A nach Ort_B mittels Skript und filelist. Irfanview bricht aber ab, wenn an Ort_A kein Foto vorhanden ist. Ich hätte gern, dass das Programm die filelist weiterabarbeitet, ggf. den Fehler in ein logfile schreibt, aber auf jeden Fall nicht abbricht. Gibt es eine solche Einstellung?

              Mein Befehl ist:
              i_view32.exe /filelist=B:\Ort_A\sollfotos.txt /convert=B:\Ort_B\*.jpg

              Danke und Gruß
              Diana

              Comment

              Working...
              X