2018年7月5日16:03:12
错误 6 error LNK2019: 无法解析的外部符号 _aeWait,该符号在函数 _WSIOCP_SocketSend 中被引用 E:\document\visual_studio_2013\hiredis\redisconnect_test\redisconnect_test\Win32_Interop.lib(win32_wsiocp.obj) redisconnect_test
错误 7 error LNK2019: 无法解析的外部符号 _listAddNodeTail,该符号在函数 _WSIOCP_SocketSend 中被引用 E:\document\visual_studio_2013\hiredis\redisconnect_test\redisconnect_test\Win32_Interop.lib(win32_wsiocp.obj) redisconnect_test
按照网上各种方法都试了,都没有用,后来找到一篇文章windows c++使用hiredis异步操作,比较完美的解决了问题。主要操作如下:
-
预处理器定义:
-
_OFF_T_DEFINED
-
WIN32
-
LACKS_STDLIB_H
-
_DEBUG
-
_CONSOLE
-
%(PreprocessorDefinitions)
-
NO_QFORKIMPL
-
_WIN32_WINNT= 0x0501
-
入口函数必须是:
-
int main(int argc, char **argv)
-
文件后缀.c 或包含头文件时加 extern "C"{
-
-
}
-
-
在项目源文件中添加adlist.c ae.c zmalloc.c(这三个文件在redis的src文件夹下)
然后在头文件wchar.h里添加
#include <win32_types.h> //_off_t的定义
程序可以编译通过,但是运行还是有点问题: