📄 xmemory.txt
字号:
unit xMemory;
//测试某段内存是否可读,p:指向内存开头,Size:内存大小。
function IsMemAddressReadable(P: Pointer; Size: DWORD = 4): Boolean;
//测试某段内存是否可写,p:指向内存开头,Size:内存大小。
function IsMemAddressWritable(P: Pointer; Size: DWORD = 4): Boolean;
//测试某段内存是否可读,p:指向内存开头,Size:内存大小。若不能读产生异常。
procedure TryReadMemAddress(P: Pointer; Size: DWORD = 4);
//测试某段内存是否可写,p:指向内存开头,Size:内存大小。若不能写产生异常。
procedure TryWriteMemAddress(P: Pointer; Size: DWORD = 4);
//打开文件内存映象
//MapName:映象名称; Size:映象大小; Ptr:指向映象内存的指针。
//用于建立可被所有进程,模块分享的全局数据结构。
//例如:
{
var
pGlobal: ^TSharedData;
hMap: THandle;
hMap := FileMapOpen('MyMapFile',Sizeof(TSharedData),Pointer(pGlobal));
//与其它模块共享pGlobal指向的TSharedData结构,可任意读写此结构的数据。
FileMapClose(hMap,Pointer(pGlobal));
}
function FileMapOpen(const MapName: string; Size: Integer; var Ptr: Pointer): THandle;
//关闭文件内存映象
procedure FileMapClose(Handle: THandle; var Ptr: Pointer);
//文件内存映象是否已存在?
function IsFileMapExists(const MapName: string): Boolean;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -