VC2008下使用OpenSSL 1.0.0g(免编译)
OpenSSL整个软件包大概可以分成三个主要的功能部分:密码算法库、SSL协议库以及应用程序。
官网:http://www.openssl.org/
OpenSSL for Windows:http://www.slproweb.com/products/Win32OpenSSL.html
在这里,我使用已编译好的OpenSSL库(上面第二个网址下载),安装过程如下:
安装过程中,会提示将DLL拷贝到系统目录,还是OpenSSL目录下的bin文件夹,如下图所示:
下面进行测试使用OpenSSL:
1.打开VS2008,新建一个Win32控制台应用程序,勾选"空项目";
2.菜单→"项目"→"添加新项"→"C++ 文件(.cpp)",名称为"main";
3.输入以下测试代码:
01 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
5.若是要静态链接,则将附加库目录设置为:"D:\OpenSSL-Win32\lib\VC\static",附加依赖项再添加如下:
User32.lib
Advapi32.lib
Gdi32.lib
Ws2_32.lib
Crypt32.lib
以上根据使用到OpenSSL的具体功能,而进行添加。
6.运行如下图所示:
http://blog.csdn.net/akof1314/article/details/7241829
VC2008下使用OpenSSL 1.0.0g(免编译)的更多相关文章
- centos下从源码安装openssl 1.0.1g
cd /usr/srcwget https://www.openssl.org/source/openssl-1.0.1g.tar.gz -O openssl-1.0.1g.tar.gz tar -z ...
- Windows10下安装OpenSSL
Windows10下安装的方法 安装环境:Windows10专业版+VS2013 工具:ActivePerl-5.22.1.2201-MSWin32-x64-299574.msi,下载地址:http: ...
- win7 下配置Openssl
最近刚刚装了openssl,遇到了很多问题,于是记录了下来: 我的PC环境是:系统win7,32位,Microsoft Visual Studio 2010: 下面开始安装: 1.安装前的准备:首先下 ...
- 详解Linux(centos7)下安装OpenSSL安装图文方法
OpenSSL是一个开源的ssl技术,由于我需要使用php相关功能,需要获取https的文件所以必须安装这个东西了,下面我整理了两种关于OpenSSL安装配置方法. 安装环境: 操作系统:CentO ...
- 使用c语言实现在linux下的openssl客户端和服务器端编程
使用c语言实现在linux下的openssl客户端和服务器端编程 摘自:https://www.cnblogs.com/etangyushan/p/3679457.html 前几天组长让我实现一个使用 ...
- IDHTTP-HTTPS通讯方法(Indy10.2.3之前仅支持OpenSSL的0.9.8以前的版本)
加载https的站点页面内容的时候记得在窗体上加上“IdSSLIOHandlerSocketOpenSSL1” 以及idhttp里面IOHandler为“IdSSLIOHandlerSocketOpe ...
- [转]详解Linux(centos7)下安装OpenSSL安装图文方法
OpenSSL是一个开源的ssl技术,由于我需要使用php相关功能,需要获取https的文件所以必须安装这个东西了,下面我整理了两种关于OpenSSL安装配置方法. 安装环境: 操作系统:CentO ...
- python3 安装 #zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz RHEL 8 install Python 3 or Python 2 using yum 编译安装 python3.7.4 . OpenSSL 1.0.2 or 1.1. Consequently, OpenSSL 0.9.8 and 1.0
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz Modules/Setup.dist https://askubuntu ...
- OpenSSL 1.0.2e 3 Dec 2015
目录: 1,交叉编译openssl 2,win32 vc9 编译 openssl 1,交叉编译openssl [原]交叉编译openssl不修改Makefile的方法 http://blog.chi ...
随机推荐
- 【C语言学习】存储类型
C语言中的存储类型主要有四种:auto.static.extern.register ★auto存储类型 默认的存储类型.在C语言中,假设忽略了变量的存储类型,那么编译器就会自己主动默认为auto型 ...
- 如何安装系统认证签名过的APK
如果你的App因为权限原因需要设置 android:sharedUserId="android.uid.system" 那么IDE编译出的包通常是无法直接安装的,查看控制台会发现报 ...
- 【MongoDB】windows平台搭建Mongo数据库复制集(相似集群)(一)
Replica Sets(复制集)是在mongodDB1.6版本号開始新增的功能.它能够实现故障自己主动切换和自己主动修复功能成员节点的功能,各个DB之间的数据全然一致,大大减少了单点故障的风险. ...
- C#_会员管理系统:开发二(会员资料管理界面的‘增删改查’)
会员资料管理界面: 新建一个窗体,窗体界面和控件如下: 窗体中的控件dgvManager更改FullRowSelect属性(点击选中效果)为:FullRowSelect 会员资料管理界面窗体的详细代码 ...
- 小猪猪逆袭成博士之C++基础篇(二) 常量、处理类型、自定义头文件
小猪猪逆袭成博士之C++基础篇(二) const .auto. decltype 上一章我们介绍了一些常用的类型和常见的问题,下面再介绍一些学习的时候不是特别常用但是在实际工程中很有用的一些东西. 一 ...
- [Swust OJ 610]--吉祥数
题目链接:http://acm.swust.edu.cn/problem/610/ Time limit(ms): 1000 Memory limit(kb): 65535 Description ...
- ios7禁止默认划动返回
self.navigationController.interactivePopGestureRecognizer.enabled = NO; 或 在使用之前先要判断是否ios7,不然会导致crash ...
- media_root以及static_root配置
# At the top of settings/base.pyfrom os.path import join, abspath, dirnamehere = lambda *x: join(abs ...
- JavaScript弹出框
confirm(str); 参数说明: str:在消息对话框中要显示的文本 返回值: Boolean值 返回值: 当用户点击"确定"按钮时,返回true 当用户点击"取消 ...
- WCF Publisher/Subscriber 订阅-发布模式
本博后续将陆续整理这些年做的一些预研demo,及一些前沿技术的研究,与大家共研技术,共同进步. 关于发布订阅有很多种实现方式,下面主要介绍WCF中的发布订阅,主要参考书籍<Programming ...