VC++调用libcurl的VC库使用详解

1.开发环境。我这里环境是vc++.net 2003+windows XP sp3.

2.下载官方库。地址:http://curl.haxx.se/download.html  搜索  Win32 - MSVC,下面有两个版本的库,一个是带ssl的,一个是不带ssl的。我把两个都下载了下来:

不带ssl的:http://curl.haxx.se/download/libcurl-7.18.0-win32-msvc.zip

带ssl的:http://curl.haxx.se/download/libcurl-7.19.3-win32-ssl-msvc.zip

3.解压缩。把下载后的两个zip包分别加压缩,我这里保存到E:\source目录下面,两个目录分别是:

E:\source\libcurl-7.18.0-win32-msvc

E:\source\libcurl-7.19.3-win32-ssl-msvc

4.VC.net设置。

不带ssl的:工具-》选项-》项目-》VC++目录-》

平台默认是win32,选择显示以下文件的目录-》包含文件,添加新行:

路径选择为刚才解压缩的目录E:\source\libcurl-7.18.0-win32-msvc\目录下的include目录,全路径为:

E:\source\libcurl-7.18.0-win32-msvc\include

再选择库文件,添加新行:

路径设置为libcurl的存放目录,我这里设置为E:\source\libcurl-7.18.0-win32-msvc。

如果使用ssl的包的话,那只需要替换为路径E:\source\libcurl-7.19.3-win32-ssl-msvc即可。

5.新建win32项目.默认设置即可。我这里新建curl项目,默认curl.cpp文件中添加:

include头文件:

#include <curl/curl.h>

引用库文件,:

#pragma comment(lib, "libcurl.lib")

如果为ssl的包的话,则引用库文件为:

#pragma comment(lib, "libcurl_imp.lib")

然后在man函数中添加代码:

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);

       /* always cleanup */

       curl_easy_cleanup(curl);

    }

    system("pause");

6.执行。

因为直接使用VC的包,所以需要把相应的dll文件copy只项目目录下的debug目录下,要不会提示找不到dll。

不带ssl的包,只需拷贝libcurl存放路径下的libcurl.dll文件到debug目录即可。

包含ssl的包,需要拷贝libcurl目录下的所有dll文件到debug目录。

7.若为ssl的包的话,到这里可以正常执行,不包含ssl的包,这里执行则会报错:

没有找到zlib1.dll文件。

通过Google找到的zlib1.dll文件不能直接使用,仍然会报错:

无法定位序数55于zlib1.dll

这时,到http://gnuwin32.sourceforge.net/downlinks/zlib-bin-zip.php下载zib包,将dll文件拷贝至debug目录,程序即可正常执行了。

8,如果你生成release版本的程序,则相应的把dll文件copy至项目的release目录即可

 

参考文章:

0.http://blog.xuite.net/kim11913/acgworld/28440792 (需要拿梯子才能访问)

1.http://blog.chinaunix.net/u/25096/showart_388890.html

Tags: vc++

上一篇: 快钱招聘信息安全工程师
下一篇: 一种被混淆过的Java类的反编译算法

访客评论

  1. #1 拆墙部队 2010-07-02, 14:16
    我经常路过这里,今天还得知你是我好友“独自等待”的好友,吼吼。
    这里太安静了,居然没有留下黄豆大的文字,不行这气氛得改改。
  2. #2 clyee 2010-09-24, 03:01
    你用的SaBlog后台强大吗,看起来界面很简洁,正在考虑要不要试试看,看官网描述安全性很强大
  3. #3 Neeao 2010-09-25, 14:13
    引用 clyee 说过的话:
    你用的SaBlog后台强大吗,看起来界面很简洁,正在考虑要不要试试看,看官网描述安全性很强大
    还不错吧,功能够用就好了,多了反而显得臃肿不堪。
  4. #4 jay 2011-07-26, 14:46
    是按照你的方法去做了,可是运行时会出现错误:缺少libsasl.dll.可是当我安装了这个文件,它又出现“无法定位程序输入点sasl_errdetail于动态链接库libsasl.dll”,这该如何解决啊。

发表评论

评论内容 (必填):