Hi,
ich mal wieder...
Ich möchte mir eine Art MemoryStream oder besser gesagt einen Dateiöffner basteln.
So klappts anscheind nicht, da die Daten nur Müll enthalten:
Delphi-Quellcode:
var
mem: pointer = nil;
function(FName: PChar): bool;
var
hFile: THandle;
Size: Cardinal;
dummy: Cardinal;
begin
Result := False;
hFile := CreateFileA(FName, GENERIC_READ, FILE_SHARE_READ, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
try
if hFile <> 0 then
begin
Size := GetFileSize(hFile, nil);
GetMem(mem, Size);
ReadFile(hFile, mem, size, dummy, nil);
end;
finally
CloseHandle(hFile);
end;
result := (hFile <> 0) and (mem <> nil);
end;
// function MemDone ...
// FreeMem(mem);
// mem := nil
Nu ist die Frage, hab ich es richtig so ?