调用系统内核自带函数对数据压缩模块

易语言 2020-04-10 16:46:48

调用系统内核自带函数对数据压缩模块

取压缩工作空间长度_NT (压缩格式, 缓存长度, 页边界)
缓存地址 = LocalAlloc (64, 缓存长度)
.如果真 (缓存地址 > 0)
len = 源长度 + 8192
压缩保存 = HeapAllocate (GetProcessHeap (), 0, len + 8)
.如果真 (压缩保存 > 65535)
Ki_CompressBuffer (压缩格式, 源字节集, 源长度, 压缩保存, len, 页边界, 压后长度, 缓存地址)
LocalFree (缓存地址)
.如果 (压后长度 = 0)
bool = 假
.否则
返回数据 = 指针到字节集 (压缩保存, 压后长度)
bool = 真
.如果结束
HeapFree (GetProcessHeap (), 0, 压缩保存)