OpenSSL: 完成VS2017的配置

简介

OpenSSL: 用VS2017创建C工程 中跟大家分享了如何在 Visual Studio 2017 中创建 C 工程和注意事项以及遇到问题的解决方案,今天我们开始在 Visual Studio 2017 中搭建 OpenSSL 的开发环境。

很多人在配置 OpenSSL 环境中遇到了不少问题,甚至还有放弃的。说实话,我也差点奔溃了:(,配置这些鬼东西确实有点复杂,说一句沃茨奥一点也不过分。

希望这篇文章能和你不期而遇,能够帮到你!写文不易,如果文中有任何错误之处还望大家不吝赐教。

下载OpenSSL

使用 OpenSSL 有两种方式,一是自己下载其源码按照配置去编译,然后使用编译后的库;另一种是使用别人已经编译好的库文件。

我使用的是第二种方法,在 precompiled-openssl 下载的 OpenSSL Library,下载完成后,解压。

设置VS2017

下面分几个步骤完成设置。

1、拷贝文件到工程中

在工程目录下面新建 vendor-openssl 目录,用来存放 OpenSSL 的头文件和库文件,便于管理,你也可以取个其他的名称。

进入解压后的 openssl-1.1.0f-vs2017 目录,复制 lib64include64vendor-openssl 目录下,如下图所示:

2、添加OpenSSL头文件

打开工程的属性设置,打开方法如下:

按照上述截图的1、2、3、4点击 Edit,出现下面的编辑框,如下图:

选择 include64目录,如下截图所示:

点击OK即可完成头文件的添加。

3、添加OpenSSL库路径

同理,打开属性设置,然后选择 Linker/General,如下图所示:

点击Edit,选择 OpenSSL 的库路径,如图:

4、添加库名称

同理,打开属性设置,在 Linker/Input 中设置,如图:

点击Edit,输入下面库的名称(编译后的OpenSSL库文件):

书写完每一个都要换行继续写下一个库名称,直到写完为止,如图:

点击弹框的OK按钮,关闭所有弹框。

base64编解码

在资源管理器视图中,新建源文件,分别添加 mzc_base64.hmzc_base64.cmain.c 三个文件,如下图:

这里我只给出测试的代码(main.c源码),具体的编解码代码,大家可以去 GitHub 查看。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
#include <string.h>
#include "mzc_base64.h"
int main()
{
//Encode To Base64
char *base64EncodeOutput;
//Take the web's url of my blog as example:http://veryitman.com
char *text = "http:\/\/veryitman.com";
mzc_base64_encode(text, strlen(text), &base64EncodeOutput);
printf("Base64 encode output: %s\n", base64EncodeOutput);
//Decode From Base64
char* base64DecodeOutput;
size_t test;
const char *base64Encode_str = "aHR0cDovL3ZlcnlpdG1hbi5jb20=";
mzc_base64_decode(base64Encode_str, &base64DecodeOutput, &test);
printf("Base64 decode output: %s %d\n", base64DecodeOutput, test);
return 0;
}

在 Visual Studio 2017 中使用快捷键 Ctrl+F5 运行工程报错,报错如图:

需要拷贝 openssl-1.1.0f-vs2017 目录中的bin64里面的内容:

把这些文件放到可执行文件的目录中,如图:

再次 Ctrl+F5 就可以正常执行了。

注意:点击 源码文件 可以获取本文的代码。


活着不是靠泪水搏取同情,而是靠汗水获得掌声~

坚持原创技术分享!