VC环境OpenSSL安装以及编程过程

SSL就是Secure Sockets Layer,是一种安全套接字协议,详情请参考链接中的介绍。

配置过程中需要生成一些mak文件,这些生成代码用perl脚本生成,所以要安装一个ActivePerl

ActivePerl:http://www.activestate.com/activeperl/

openss:http://www.openssl.org/ (本文使用openssl-1.0.0-beta5)

参考 openssl 目录下的 install.win32 说明进行安装:

1 、进入解压目录。

>cd C:/ openssl-1.0.0-beta5

2 、运行 Configure 。

>perl Configure VC-WIN32

如不成功会有明显提示。

3 、创建 Makefile 文件。

>ms/do_ms

推荐使用这种方式,另外两种方式 如果使用也必须保证本机有编译器才能使用。

:ms/do_masm (默认 vc 自带的编译器;也也以自己下载安装)

:ms/do_nasm (需要自己下载)

4 、配置 VC 环境变量。

>cd C:/Program Files/Microsoft Visual Studio/VC98/Bin

>vcvars32.bat

5 、编译动态链接库。

>cd C:/openssl-0.9.8k

>nmake -f ms/ntdll.mak

如果编译成功,最后的输出都在 out32dll 目录下:包括可执行文件、两个 dll ( ssleay32.lib, libeay32.lib )和两个 lib 文件( ssleay32.dll, libeay32.dll )。

6 、为 VC 添加头文件和静态链接库路径。

Tools à Options à Directores ,在 Include files 中增加 C:/openssl-0.9.8k /inc32 目录;在 Libray files 中增加 C:/openssl-0.9.8k/out32dll 。

7 、编写 OpenSSL 程序,可参考 C:/openssl-0.9.8k/demos

( 1 )包含相应头文件

#include <openssl/***. h >

(2) 添加静态链接库

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

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

或 Project à Settings à Link à Object/library modules 填写 libeay32.lib ssleay32.lib 。

( 3 )将动态链接库ssleay32.dll, libeay32.dll 复制到 C:/WINDOWS/system32 或 Debug 目录下,确保动态链接库在正确的路径。

http://blog.csdn.net/harbinzju/article/details/6132229

VC环境下编译OpenSSL(仅仅是个示例,网上还有许多相关文章)的更多相关文章

  1. [转] Windows下编译OpenSSL

    简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...

  2. 在Windows下编译OpenSSL(VS2005和VC6)

    需要说明的是请一定安装openssl-0.9.8a .  openssl-1.0.0我没有编译成功. 如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)1.安装Activ ...

  3. Windows下编译OpenSSL(使用VS2013)

    简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...

  4. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

  5. VC++2010下编译STLport,Boost

    VC++2010下编译STLport,Boost 最近在想向Boost转移,努力掌握Boost代码的过程中, STLport版本:5.2.1 Boost版本:1.4.6.1 (1.4.7.0也OK) ...

  6. centos7.6环境下编译安装tengine-2.2.2的编译安装

    centos7.6环境下编译安装tengine-2.2.2的编译安装 .获取tengine2..2的源码包 http://tengine.taobao.org/download/tengine-2.2 ...

  7. Boost学习总结(一)VS2010环境下编译STLport和Boost

    Boost学习总结(一)VS2010环境下编译STLport和Boost Boost简介 Boost库是一个功能强大.构造精巧.跨平台.开源并且完全免费的C++程序库.1998年,Beman G.Da ...

  8. Redhat环境下编译安装Google Bazel

    Redhat环境下编译安装bazel 作者:Jack47 目前Google Bazel没有提供各个操作系统下的二进制安装包,只提供源代码,需要我们自己编译安装,详情可以见我翻译的中文版Google B ...

  9. 【应用笔记】【AN003】VC++环境下基于以太网的4-20mA电流采集

    简介 4-20mA电流环具有广泛的应用前景,在许多行业中都发挥着重要作用.本文主要介绍了以太网接口的4-20mA电流采集模块在VC++环境下进行温度采集,实现WINDOWS平台对数据的采集.分析及显示 ...

随机推荐

  1. git 解决冲突的办法

    在项目中使用git管理,冲突是在所难免的.假设没办法解决冲突,能够试试这个办法. 第一步.对project进行备份,最好是复制到其它目录中 第二步.在cmd命令栏上,进入到project文件夹下.这里 ...

  2. C++ 自定义结构体和类 内存对齐

    为什么要提出内存对齐? 比如这么一种处理器,它每次读写内存的时候都从某个8倍数的地址开始,一次读出或写入8个字节的数据,假如软件能保证double类型的数据都从8倍数地址开始,那么读或写一个doubl ...

  3. 异常语句:try(尝试)-catch(抓取)-finally 跳转语句:break

    跳转语句: 1.break:跳出的意思,如果在循环语句中使用则是跳出循环2.default,--默认语句通常与 switch case 配合使用3.continue--跳过一个,继续下一个继续retu ...

  4. 理解iOS 8中的Self Sizing Cells和Dynamic Type

    http://www.cocoachina.com/ios/20140922/9717.html 在iOS 8中,苹果引入了UITableView的一项新功能--Self Sizing Cells,对 ...

  5. 基于visual Studio2013解决算法导论之028散列表开放寻址

     题目 散列表 解决代码及点评 #include <iostream> #include <time.h> using namespace std; template & ...

  6. hdu 4885 TIANKENG’s travel(bfs)

    题目链接:hdu 4885 TIANKENG's travel 题目大意:给定N,L,表示有N个加油站,每次加满油能够移动距离L,必须走直线,可是能够为斜线.然后给出sx,sy,ex,ey,以及N个加 ...

  7. [置顶] c# datagridview‘s learn

    c#   一串数字“1122331111155”,要输出到DataGridview控件上,但是要逐个数字读取,如果上一个数字与下一个相同,则排成一列,不相同,则另外排成一列.如“11223311111 ...

  8. js两个日期对比大小

     //适合格式(0000-00-00) //日期比较 function dateCompare(startdata, enddata) { var arr = startdata.split(&quo ...

  9. 一、Nginx配置文件详解

    配置文件介绍 主要有两部分:分别是 main:主体部分 http{}:虚拟主机配置部分 配置指令主要以分号结尾:配置语法:directive value1 [value2 ....] 支持使用的变量 ...

  10. 02-UIKit控件、MVC

    目录: 一.控件使用 二.动态类型和静态类型 三.MVC 四.UIAlertView对话框 回到顶部 一.控件使用 1 事件源,事件处理方法有一个参数传进来,那个参数就是触发这个事件的时间源. UIS ...