Hallo,
ich brauche ganz schnell ein Programm, das mir tausend Bilder umbenennt.
Die Dateien haben sehr lange Namen (AlteNr_NeueNr_Agentur_Kunde_Titel_Format.jpeg) und, und das ist das Problem,
sie haben eine vierstellige Endung und können vom Archiv Programmen nicht verarbeitet werden.
Da habe ich mir gedacht, schreibe ich mir schnell ein Tool, dass die Endungen in .jpg ändert.
Dazu verwendete ich folgenden, gefundenen Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| function RenameFileEx(const AOldName, ANewName: string; ARenameCheck: boolean = false): boolean; var sh: TSHFileOpStruct; begin sh.Wnd := Application.Handle; sh.wFunc := fo_Move;
sh.pFrom := PChar(AOldName + #0); sh.pTo := PChar(ANewName + #0); sh.fFlags := fof_Silent or fof_MultiDestFiles; if ARenameCheck then sh.fFlags := sh.fFlags or fof_RenameOnCollision; Result:=ShFileOperation(sh)=0; end; |
Nun bekomme ich aber folgende Meldung: "Das Ziel unterstützt keine langen Dateinamen!"
Dann wird mir ein neuer Name vorgeschlagen, der nur noch 8 Zeichen hat.
Die Daten in den Dateinamen sind aber sehr wichtig und dürfen nicht verloren gehen.
Mit Ziel ist meine Festplatte gemeint? Und wer zur Hölle erzeugt überhaupt dieses Meldungsfenster?
Ich möchte die Dateinamen nur ungern zu Fuß ändern und ich wollte eigentlich auch kein Renamer Programm suchen und installieren.
Es bleibt noch die Möglichkeit der Stapelverarbeitung in Photoshop, aber ich bin etwas enttäuscht, dass sich das nicht über Delphi regeln lässt.
Was ist der Grund?