procedure TFmClient.CreateMemMapping();
var
szMappingName: string;
begin
szMappingName := '共享内存名字';
//如果打开失败,就创建
g_MemMappingHandle := OpenFileMapping(FILE_MAP_ALL_ACCESS, FALSE, PWideChar(szMappingName));
if (0 = g_MemMappingHandle) then begin
g_MemMappingHandle := CreateFileMapping(INVALID_HANDLE_VALUE, nil, PAGE_READWRITE, 0, 1024, PWideChar(szMappingName));
end;
if (0 = g_MemMappingHandle) then begin
DebuMsg('创建共享内存失败');
Exit;
end;
//关联地址
g_MemMapping := MapViewOfFile(g_MemMappingHandle, FILE_MAP_ALL_ACCESS, 0, 0, SizeOf(TMemMapping));
if (not Assigned(g_MemMapping)) then begin
DebuMsg('映射共享内存失败');
Exit;
end;
//填充数据
FillChar(g_MemMapping^, SizeOf(TMemMapping), #0);
end;
procedure TFmClient.DestroyMemMapping();
begin
UnmapViewOfFile(g_MemMapping);
CloseHandle(g_MemMappingHandle);
end;
内存映射
免责声明:文章转载自《内存映射》仅用于学习参考。如对内容有疑问,请及时联系本站处理。
宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=