![]() |
Probleme mit batch dateien und ä, ö, ü
Hi,
ich lass mir von nem tool ne batch datei generieren (selbstgebastelt), die meine mp3 sammlung aufrämt. Funzt ansich mit der move funktion. Das problem ist wenn ein ä, ö oder ü im Dateinamen ist:
Delphi-Quellcode:
dann kommt bei ausführung:
move "N:\Sabaton - Metal Crüe.mp3" "N:\Attero Dominatus\Sabaton - Metal Crüe.mp3"
Delphi-Quellcode:
Warum ist das so, bzw wie erstelle ich meien batch datei so, das die eingeabeaufforderung mich versteht?
N:\>move "N:\Sabaton - Metal - Cr³e.mp3" "N:\Attero Dominatus\Sabaton - Metal Cr³e.mp3"
Das System kann die angegebene Datei nicht finden. MfG und Danke Edit: Mit allen anderen dateien geht es btw! |
Re: Probleme mit batch dateien und ä, ö, ü
Zwei (evt. blöde) optionale Ansätze:
o Dateinamen ändern o eigenen "Mover" programmieren MfG |
Re: Probleme mit batch dateien und ä, ö, ü
das mim selber moven hab ich probiert.
Aber delphi bringt mir bei RenameFile sowie MoveFile immer ein false und es passiert nichts! |
Re: Probleme mit batch dateien und ä, ö, ü
Dafür gibts AnsiToOEM und OemToAnsi. ;-)
Aber sinnvoller wäre es ja wohl eher zu schauen warum es mit Delphi nicht klappt. Wie sieht denn der nicht funktionierende Code dazu aus? |
Re: Probleme mit batch dateien und ä, ö, ü
ich übergeb nen filename und ein drectory an die prozedur (es ist sicher das das dir mit \ endet, wird vor der prozedur überprüft). In der Prozedur steht in album der albumstitel.
Delphi-Quellcode:
if not DirectoryExists (dir + album) then CreateDir (dir + album); // hab den code grade ausm gedächtniss geschrieben, weiß nimmer obs createdir hieß oder net, das erstellen von verzeichnissen jedenfalls klappt
RenameFile (dir + FileName, dir + album + '\' + filename); |
Re: Probleme mit batch dateien und ä, ö, ü
Der Code funktionuiert bei mir 1:1. :stupid:
Delphi-Quellcode:
Die Datei b:\test.txt wurde in das neu erstellte Verzeichnis b:\zzz verschoben.
var
dir, album, FileName: String; begin dir := 'b:\'; album := 'zzz'; FileName := 'test.txt'; if not DirectoryExists (dir + album) then CreateDir (dir + album); // hab den code grade ausm gedächtniss geschrieben, weiß nimmer obs createdir hieß oder net, das erstellen von verzeichnissen jedenfalls klappt RenameFile (dir + FileName, dir + album + '\' + filename); Und in dir steht auch das Laufwerk mit komplettem Pfad drin? |
Re: Probleme mit batch dateien und ä, ö, ü
also bei mir gibt renamefile hier immer false zurück, sogar bei deinem code...ich nutze btw delphi 7...falls das relevant ist...
|
Re: Probleme mit batch dateien und ä, ö, ü
Was steht denn z.B. exakt in den Variablen drin? Versuch es mal mit fixen Werten wie ich und poste das. Abgesehen von Rechteproblemen oder dass das von einem Laufwerk aufs andere nicht geht (ist ja nicht der Fall) wüsste ich da keine Probleme.
Mit Delphi 7 klappt das wunderbar, ich habs darunter gerade kurz getestet. |
Re: Probleme mit batch dateien und ä, ö, ü
also rechteprobleme denk ich net (winXP adminacc) und ich hab mir alles schon per showmessage ausgeben lassen. das passt eigentlich alles perfekt.
|
Re: Probleme mit batch dateien und ä, ö, ü
Also bei mir funktionieren diese beiden Methoden problemlos:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var dir, album, FileName: String; begin dir := 'N:\'; album := 'Attero Dominatus'; FileName := 'Sabaton - Metal Crüe.mp3'; if not DirectoryExists (dir + album) then CreateDir (dir + album); RenameFile (dir + FileName, dir + album + '\' + filename); end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var testoem: String; test: TextFile; begin SetLength(testoem, 81); AnsiToOEM('move "N:\Sabaton - Metal Crüe.mp3" "N:\Attero Dominatus\Sabaton - Metal Crüe.mp3"', PChar(testoem)); AssignFile(test, 'b:\test.bat'); Rewrite(test); WriteLn(test, testoem); CloseFile(test); ShellExecute(Handle, 'open', 'b:\test.bat', '', '', SW_SHOWNORMAL); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:39 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz