在VS2010 VC++项目中引用Lib静态库(以Openssl为例)

Openssl是个为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。

  首先下载Openssl包:(http://www.openssl.org/),这是一个C语言类库包,在Windows下可以通过Perl对该类库包进行MakeBuild,产生libeay32、ssleay32的Lib以及Dll文件,具体操作详见:http://blogger.org.cn/blog/more.asp?name=OpenSSL&id=18972,通过编译产生这样一系列文件:

image

  inc32里面放置C语言头文件。

  1. 现在我要在VS2010的工程项目中使用到它,首先我要创建一个VC++.NET的项目,我这里创建了一个MFC应用程序:

image

  在项目名称中点击“右键”,选择“属性”,从里面找到“VC++目录”:

image

  找到两个目录选项:

image

  其中包含目录指向你的Openssl的头文件的目录,库目录指向你的Lib、Dll所在的目录。image

image

  从这里新建目录来指向引导的目录:

  然后切换到“链接器”-> “输入”:

image

  在“附加依赖项”中,加入两个Lib文件:

image

  这样就完成了静态库的引用。

  2. 现在看下项目中怎么引用它(以SHA256算法为例):

  #include <openssl/sha.h>

  方法展示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// SHA256算法字符串加密
void  sha256( char * string, char  outputBuffer[64])
{
     unsigned char  hash[SHA256_DIGEST_LENGTH];
     SHA256_CTX sha256;
     SHA256_Init(&sha256);
     SHA256_Update(&sha256, string, strlen (string));
     SHA256_Final(hash, &sha256);
     int  i = 0;
     for (i = 0; i < SHA256_DIGEST_LENGTH; i++)
     {
         sprintf (outputBuffer + (i * 2), "%02x" , hash[i]);
     }
}

  调用:

1
2
static  unsigned char  buffer[64];
sha256(signature, ( char *)buffer);

  由于Openssl包需要利用Perl进行编译形成Lib以及Dll文件,这里我附上已经制作好的文件,方便大家使用!

  Openssl最新版openssl-1.0.0d的Windows执行包下载:openssl_out32dll.rar

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值