Ich verzweifle hier nochmal mit der Windows
API. Es geht darum, dass ich eine auf CD befindliche temporäre Datei auf die Festplatte kopieren möchte, und dafür wollte ich die Windows
API benutzen (unter anderem, weil ich später den Cache umgehen möchte - das ist aktuell aber zweitrangig). Nun scheitere ich insofern, dass CreateFile immer INVALID_HANDLE_VALUE zurückliefert. Wenn ich die temporäre Datei von einer lokalen Festplattenpartition öffne, funktioniert es ohne Probleme. Woran kann das liegen? Hier mal ein Code-Auszug:
Delphi-Quellcode:
var DateiPfad : PAnsiChar;
FDateiRead : THandle;
begin
DateiPfad:='g:\tempfile.txt'; {Laufwerk G ist das CD-Laufwerk, die Datei "tempfile.txt" existiert auf der eingelegten CD}
FDateiRead:=CreateFile(DateiPfad,
GENERIC_READ or GENERIC_WRITE,
0,
nil,
OPEN_ALWAYS,
FILE_ATTRIBUTE_NORMAL,
0);
if (FDateiRead = INVALID_HANDLE_VALUE) then ShowMessage('Fehler beim Öffnen der temporäten Datei aufgetreten.');
end;