Registriert seit: 10. Dez 2005
32 Beiträge
|
CreateFileMapping unter VCL.Net
7. Okt 2007, 15:14
Hallo !
Wie bekomme ich CreateFileMapping implementiert unter VCL.Net ??
Soweit :
Delphi-Quellcode:
fFileHandle : THandle;
FSpeicher : IntPtr;
Buffer : IntPtr;
AuxString : String;
fFileHandle := CreateFileMapping($FFFFFFFF, nil, PAGE_READWRITE, 0, 1024, 'WunschName');
if fFileHandle <> 0 then begin
FSpeicher := MapViewOfFile(fFileHandle, FILE_MAP_WRITE, 0, 0, 0);
AuxString := '1';
Buffer := Marshal.StringToHGlobalAuto(AuxString);
...
// Wie kann ich hier Buffer in FSpeicher schreiben ??
end;
Und falls ich AuxString im FileMapping ich wieder auslesen möchte, dachte ich es könnte so machen :
Delphi-Quellcode:
fFileHandle2 : THandle;
AuxString2 : String;
Buffer2 : IntPtr;
LSpeicher : IntPtr;
fFileHandle2 := OpenFileMapping(FILE_MAP_READ, False, 'WunschName');
if fFileHandle2 <> 0 then begin
LSpeicher := MapViewOfFile(fFileHandle2, FILE_MAP_READ, 0, 0, 0);
Buffer2 := Marshal.AllocHGlobal(1024 * Marshal.SystemDefaultCharSize);
// ?? Hier müsste ich den Inhalt von MapViewofFile in Buffer2 bekommen
AuxString2 := Marshal.PtrToStringAuto(Buffer2);
end;
Danke für eure Hilfe
|
|
Zitat
|