使用的redis库:https://github.com/yuanqinguo/RedisClient,编译windows客户端x64版本。
修改1,RedisClient-master\hiredis-win32-master\hiredis.h,line45(从其他地方学来的):
#pragma pack(8)
#include <winsock2.h>
#pragma pack()
修改2,RedisClient-master\hiredis-win32-master\hiredis.c,line744(调试发现):
arg = va_arg(ap,char*);
size = va_arg(ap,size_t);
#ifdef _WIN64
size &= 0x00000000FFFFFFFF;
#endif
if (size > 0)
newarg = sdscatlen(curarg,arg,size);
如不做修改2,x64使用%b参数时异常;