Einzelnen Beitrag anzeigen

marlem

Registriert seit: 10. Mär 2006
59 Beiträge
 
Delphi 6 Personal
 
#1

lange Dateinamen in kurze umwandeln

  Alt 24. Nov 2008, 10:25
hallo,

wie kann ich mit Delphi 1 lange datei-und verzeichnisnamen in kurze umwandeln.
habe in der code-libary schon geschaut, aber nichts gefunden.

ich möchte im selben verzeichnis eine datei kopieren und ihr einen anderen namen geben.
zum kopieren habe ich diese funktion genommen die ich beim googeln gefunden habe:

Delphi-Quellcode:
function CopyFile( src, dest: String): Boolean;
var s, d: TOFStruct;
    fs, fd: Integer;
    fnSrc, fnDest: PChar;
begin
  src:=src + #0;
  dest:=dest + #0; { Trick, um aus einem String ein ASCIIZ zu machen:}
  fnSrc:=@src[1];
  fnDest:=@dest[1];
  fs := LZOpenFile( fnSrc, s, OF_READ );
  fd := LZOpenFile( fnDest, d, OF_CREATE );
  if LZCopy( fs, fd ) < 0
    then Result:=False
    else Result:=True;
  { Dateien schliessen}
  LZClose( fs );
  LZClose( fd );
end;
das ding bringt keine fehlermeldung und macht einfach gar nichts! und mein Verdacht ist, dass es an den langen datei-und Verzeichnisnamen liegt!
es ist ein 16bit Delphi-Programm das unter nt läuft!

jetzt brauche ich ne konvertierungsrotine die aus einem langen pfad einen 16bit-tauglichen macht!
weiß jemand wie das geht?
gruß und danke

Markus
  Mit Zitat antworten Zitat