VC2008下使用OpenSSL 1.0.0g(免编译)
来源:互联网 发布:mac word 繁简转换 编辑:程序博客网 时间:2024/06/16 06:28
FROM :
http://blog.csdn.net/akof1314/article/details/7241829
OpenSSL整个软件包大概可以分成三个主要的功能部分:密码算法库、SSL协议库以及应用程序。官网:http://www.openssl.org/
OpenSSL for Windows:http://www.slproweb.com/products/Win32OpenSSL.html
//////////////补充//////////////////////////////////////////////////////////////////////////////
本人是下载 : Win32OpenSSL-1_0_1e.exe
Win32OpenSSL_Light-1_0_1e.exe(试过,失败!!!!)
/////////////////////////////////////////////////////////////////////////////////////////////
在这里,我使用已编译好的OpenSSL库(上面第二个网址下载),安装过程如下:
安装过程中,会提示将DLL拷贝到系统目录,还是OpenSSL目录下的bin文件夹,如下图所示:
下面进行测试使用OpenSSL:
1.打开VS2008,新建一个Win32控制台应用程序,勾选"空项目";
2.菜单→"项目"→"添加新项"→"C++ 文件(.cpp)",名称为"main";
3.输入以下测试代码:
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21#include <string>
#include <iostream>
#include "openssl/md5.h"
int main()
{
std::string str = "1234";
std::string strMd5 = "";
unsigned char md[MD5_DIGEST_LENGTH];
char tmp[3] = {0};
MD5((const unsigned char*)str.c_str(), str.size(), md);
for (int i = 0; i < MD5_DIGEST_LENGTH; i++)
{
sprintf_s(tmp, "%02X", md[i]);
strMd5.append(tmp);
}
std::cout<<strMd5<<std::endl;
return 0;
}
4.菜单→"项目"→"属性",根据不同的运行库,进行设置:
附加包含目录:"D:\OpenSSL-Win32\include"
附加库目录:"D:\OpenSSL-Win32\lib\VC"
运行时库 附加依赖项
多线程(/MT) libeay32MT.lib ssleay32MT.lib
多线程调试(/MTd) libeay32MTd.lib ssleay32MTd.lib
多线程 DLL (/MD) libeay32MDd.lib ssleay32MDd.lib
多线程调试 DLL (/MDd) libeay32MD.lib ssleay32MD.lib/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
解析原文意思:
根据:工程属性--》C/C++--》代码生成--》运行库 的设置
若是 多线程调试 DLL (/MDd) 则在 工程属性--》链接器--》输入--》附加依赖项 添加:libeay32MD.lib ssleay32MD.lib
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
5.若是要静态链接,则将附加库目录设置为:"D:\OpenSSL-Win32\lib\VC\static",附加依赖项再添加如下:
User32.lib
Advapi32.lib
Gdi32.lib
Ws2_32.lib
Crypt32.lib
以上根据使用到OpenSSL的具体功能,而进行添加。
6.运行如下图所示:
////////////////////////补充/////////////////////
出现以下提示:
无法启动此程序,因为计算机中丢失libeay32.dll
到安装Win32OpenSSL-1_0_1e.exe 的安装安装目录下拷贝这个文件与EXE放在同一个目录
/////////////////////////////////////////
- VC2008下使用OpenSSL 1.0.0g(免编译)
- VC2008下使用OpenSSL 1.0.0g(免编译)
- VC2008下使用OpenSSL 1.0.0g(免编译)
- VC2008下使用OpenSSL 1.0.0g(免编译)
- VC2008下编译OpenSSL
- winxp下编译openssl-1.0.0g
- windows下编译openssl-1.0.1g
- VC2008/2015 和 Mac 编译 openssl-1.0.2k
- windows下使用vc2008编译libx264
- windows下使用vc2008编译librtmp
- windows下使用vc2008编译librtmp
- windows下使用vc2008编译librtmp
- windows下使用vc2008编译librtmp
- Windows XP下编译openssl-1.0.0
- 使用VC2008编译sqlite
- 使用 vc2008编译器 在命令行下编译 windows窗口程序
- Windows环境下使用VS2010编译OpenSSL-1.0.1i
- 命令行下编译VC2008工程
- 匹配算法(网络摘抄)-KMP
- Simpsons’ Hidden Talents (KMP)
- ASP.NET中Cookie的用法
- struts工作流程及各种文件详解
- oracle DBMS_SYSTEM
- VC2008下使用OpenSSL 1.0.0g(免编译)
- POJ 2528 离散化+线段树染色
- SQL Server性能调优:资源管理之内存管理篇(上)
- java中的ArithmeticException
- servlet跳转页面的方法
- 黑马程序员 java面试题_银行业务调度系统
- paip.c++ gui 库HtmLayout 的优缺点 QT优点
- “赢在中国”点评人给80后年轻人的30个忠告
- Redis C语言客户端库hiredis