Einzelnen Beitrag anzeigen

peanut
(Gast)

n/a Beiträge
 
#8

Re: FS-Dateinamen in DOS-Dateinamen

  Alt 1. Aug 2006, 18:02
Hi!

Zitat von himitsu:
Also entweder vor der Schleife ein SetLength einfügen,
SetLength(sBuffer, MAX_PATH);
Ok, das kam vom Copy&Paste. Ich wollte den Quellcode fürs Forum etwas kürzen, dabei ist das dann wohl flöten gegangen

  sDrive := 'A:'; sDrive[1] := #64; Das ist nicht falsch, nur umständlich programmiert. Eigentlich hätte ich sDrive := '@:' schreiben müssen. Schöner wäre inc(sDrive[1]) vor until gewesen, ich gebe es zu ...

function GetFullPathNameA(lpFileName: LPCTSTR; nBufferLength: DWORD; lpBuffer: LPTSTR; lpFilePart: LPTSTR): DWORD; stdcall; external 'kernel32.dll'; Diese Funktion hatte ich bei meiner Suche auch gefunden. Klappt nicht auf anderen Partitionen. Gibt man beispielsweise "device\harddiskvolume2\cmd.exe" (d:\cmd.exe) als ersten Parameter an, so liefert die Funktion stets das root-Verzeichnis, wie in der MSDN beschrieben... In meinem Falle ist das "c:\". Trotzdem danke für den Hinweis.
  Mit Zitat antworten Zitat