下你所需,载你所想!
汇集开发技术源码资料

托盘图标通知模块支持Win10 Metro通知/Win7气泡

:23.737KB :1 :2019-12-17 08:22:53

部分简介

.子程序 Data_CompressEx, 逻辑型, 公开, 成功返回真.NTDLL.RtlCompressBuffer
.参数 源字节集, 整数型, , 源数据指针
.参数 源长度, 整数型, , 原数据长度
.参数 最大压缩, 逻辑型, 可空, 真=最大化压缩,速度稍慢
.参数 返回数据, 字节集, 参考, 接受压缩后返回数据
.局部变量 压缩格式, 整数型, , , 2 or 256
.局部变量 缓存长度, 整数型
.局部变量 页边界, 整数型, , , 4096
.局部变量 缓存地址, 整数型
.局部变量 压缩保存, 整数型
.局部变量 压后长度, 整数型
.局部变量 len, 整数型
.局部变量 bool, 逻辑型

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

.如果真结束
返回 (bool)

托盘图标通知模块支持Win10 Metro通知/Win7气泡

热门推荐

相关文章