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的定义
程序可以编译通过,但是运行还是有点问题: