-
-
未解决
[已解决]zlib压缩后,解压的数据不正确.多出若干0x0D字节
-
发表于:
2019-3-11 00:44
2115
-
未解决 [已解决]zlib压缩后,解压的数据不正确.多出若干0x0D字节
请问各位大佬,为什么我使用zlib解压数据会出现多余字节. 解压不正确.
是我哪里用错了吗?
下面是我的压缩和解压代码:
===================================================================
//读取并打包资源文件;
UINT ReadLen = fread(TmpData, sizeof(char), FileLen, TmpFile);
//申请压缩缓冲区;
UINT zliblen = compressBound(ReadLen);
void *zlibData = LocalAlloc(LMEM_ZEROINIT, zliblen + 10);
if (!zlibData)return FALSE;
/压缩资源包数据;
compress((Bytef*)zlibData, (uLongf*)&zliblen, (Bytef*)TmpData, FileLen);
//解压出文件
FILE *pf = fopen("E:\\ProjectCode\\C&C++\\Game\\Resource\\Debug\\New\\uncompress.db", "w");
//临时解压数据置零
ZeroMemory(TmpData, FileLen);
//解压数据
uncompress((Bytef*)TmpData, (uLongf*)&FileLen, (Bytef*)zlibData, zliblen);
//写出解压数据到文件;
fwrite(TmpData, FileLen, 1, pf);
fclose(pf);
如下图,解压数据会多出 0x0D字节; 而且很多.
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
最后于 2019-3-11 00:54
被ezrealik编辑
,原因: 已解决