Windows下使用curl库:
到http://curl.haxx.se/下了个curl的源码下来,源码是用VC6编译的,我在VS2005下重新进行编译,居然只有一个警告。
cUrl的实现代码是放在动态库中,将动态库以静态方式编译生成libcurl.lib,然后将cUrl源码目录下的“include/curl”文件夹复制到自己的项目下(如图1)。
图1
接下来就可以直接调用curl库了,下面是一个网上找来的简单例子:
- #include "curl/curl.h"
- #pragma comment(lib, "ws2_32.lib")
- #pragma comment ( lib, "libcurl.lib" )
- #pragma comment ( lib, "ws2_32.lib" )
- #pragma comment ( lib, "winmm.lib" )
- #pragma comment ( lib, "wldap32.lib" )
- int main()
- {
- CURL *curl;
- CURLcode res;
- curl = curl_easy_init();
- if ( curl )
- {
- curl_easy_setopt( curl, CURLOPT_URL,
- "http://www.baidu.com" );
- res = curl_easy_perform( curl );
- curl_easy_cleanup( curl );
- }
- }
提示:在VS2005中编译示例程序时,会提示“LNK2001: 无法解析的外部符”,解决办法如下(引用:http://www.cnblogs.com/zdxster/archive/2011/01/27/1945877.html):
1、给工程添加依赖的库:项目->属性->链接器->输入->附加依赖项,把libcurl.lib ws2_32.lib winmm.lib wldap32.lib添加进去
注意,debug配置用libcurld.lib
2、加入预编译选项:项目->属性->c/c++ ->预处理器->预处理器,把 ;BUILDING_LIBCURL;HTTP_ONLY复制进去(注意不要丢了";")