0


在VScode2022中使用Openssl全过程记录

Openssl苦本人久矣,遂决定记录在Visual Studio 2022中调用openssl外部库的流程。

1.VS的安装与下载

本人是在应用商店下载的。

官网下载地址:
https://visualstudio.microsoft.com/zh-hans/downloads/

推荐博客:Visual Studio下载安装教程(非常详细)从零基础入门到精通,看完这一篇就够了_visual studio安装教程-CSDN博客

2.Openssl的安装与编译

这里本人采用下载源码自行编译的方式,因为直接下载的gcc编译的文件无法使用,VS里面一直显示"not found",故只好采用自行编译的方式。

大概花了半天时间编译成功(因为确实很多文件)

详情请见本人另一篇博客(还没来得及写,事后补上吧)

3.VS项目创建

启动VS

创建新项目

选择控制台应用:

设置项目存放位置与名称后创建

4.Openssl库的链接

右键项目-属性

VC++目录-包含目录 加入include路径,这里编译完成后默认为:

C:\Program Files\OpenSSL\include

VC++目录-库目录 加入lib路径

C:\Program Files\OpenSSL\lib

在C/C++-预处理器里添加2个定义:CRT_SECURE_NO_WARNINGS;_WINSOCK_DEPRECATED_NO_WARNINGS;

这个是用于解决编译代码是出现警告的问题,不加也可以正常运行代码。

链接器-输入-附加依赖项:libssl.lib;libcrypto.lib;

这里建议把C:\Program Files\OpenSSL\bin目录下的相应文件,放在与项目文件相同的文件夹中,不然找不到。(这里如果有不放在相同文件夹里也能找的方法,欢迎在评论区分享)

测试代码如下:

#pragma comment(lib, "libssl.lib")
#pragma comment(lib, "libcrypto.lib")
//此处应该也能导入外部库,但本人为确保万无一失,都弄了
#include <iostream>
#include <stdio.h>

#include "openssl/ssl.h"

int main()
{
    SSL_CTX* ctx = NULL;
    const SSL_METHOD* meth = NULL;

    OpenSSL_add_ssl_algorithms();    // 初始化
    SSL_load_error_strings();        // 为打印调试信息作准备
    meth = TLS_client_method();    // 采用什么协议(SSLv2/SSLv3/TLSv1)在此指定
    ctx = SSL_CTX_new(meth);
    printf("%X\n", ctx);

    return 0;
}

然后生成解决方案,正在编译运行就可以啦!


本文转载自: https://blog.csdn.net/m0_75100181/article/details/142994548
版权归原作者 Zero_Dot_Nine 所有, 如有侵权,请联系我们删除。

“在VScode2022中使用Openssl全过程记录”的评论:

还没有评论