Visual Studio 2022中使用websocketpp

Visual Studio 2022中使用websocketpp

环境 Window10

MSVC 143

使用WebSocket++/0.8.2

使用Boost版本1.86.0

下载websocketpp

websocketpp

这是完整的git项目,我们用到的只有websocketpp这个目录

下载Boost

Boost

需要编译

先执行bootstrap.bat

完成后会自动生成b2.exe

然后执行 b2 stage link=static runtime-link=static threading=multi release

我这里不添加额外参数--toolset=msvc-14.3,因为我只装了一个Visual Studio ,并只使用一个MSVC 143版本

完成后

会生成静态库,生成路径位置参考截图

步骤

使用Visual Studio 2022创建新项目 ,选择控制台应用模板进行创建。

编写导入头文件

!!!重点配置!!!

重点步骤一

创建Common文件夹

创建LIB文件夹

进入Common文件夹

拷贝websocketpp

拷贝boost

重点步骤二

进入LIB文件夹

拷贝编译出来的stage文件夹

最终我们的Common里面是有websocketpp文件夹和boost文件夹,LIB里面有stage文件夹

重点步骤三

在Visual Studio 2022项目中顶部导航栏选择项目->属性

选择C/C++->附加包含目录,添加目录

如图所示

选择链接器->附加库目录,添加目录

如图所示

生成解决方案并运行,正常到这里就能正常使用了

启动示例

C++ 复制代码
#include <iostream>
#include <websocketpp/config/asio_no_tls.hpp>
#include <websocketpp/server.hpp>

typedef websocketpp::server<websocketpp::config::asio> server;

void on_message(websocketpp::connection_hdl, server::message_ptr msg) {
    std::cout << msg->get_payload() << std::endl;
}


int main()
{
    server print_server;

    print_server.set_message_handler(&on_message);
    print_server.set_access_channels(websocketpp::log::alevel::all);
    print_server.set_error_channels(websocketpp::log::elevel::all);

    print_server.init_asio();
    print_server.listen(9002);
    print_server.start_accept();

    print_server.run();

    std::cout << "hell";
    return 0;
}


相关推荐
Hhy_11071 小时前
《C++深度解构02》类和对象(上)——定义规范、内存对齐与 this 指针全解
c语言·开发语言·c++·学习·visual studio
晚风叙码1 小时前
C++哈希表实现:开放定址法和链地址法 (哈希桶)
数据结构·c++·哈希算法·散列表
呜喵王阿尔萨斯1 小时前
C/C++ 杂记-1
c++
不会代码的小猴2 小时前
2. 了解Qt
开发语言·c++·笔记·qt·算法
兵哥工控2 小时前
mfc实现在数值范围内实时改变静态文本控件字体颜色实例
c++·mfc
程序喵大人4 小时前
【C++进阶】STL算法与函数对象 - 09 函数对象保存状态并复用规则
开发语言·c++·算法·stl·函数对象
ShineWinsu9 小时前
对于C++:auto_ptr、unique_ptr、shared_ptr的模拟实现
c++·面试·笔试·智能指针·unique_ptr·shared_ptr·auto_ptr
XLYcmy12 小时前
京东 算法实习一面 下+手撕
c++·python·llm·概率论·数据处理·训练·codebert
反转180度12 小时前
Qt 6 + C++17 实现 SFTP 批量部署:工业设备运维工具实战解析
运维·c++·qt
码匠许师傅14 小时前
【C++ 面试真题】聊聊 C++ 的多继承与虚继承
开发语言·c++·面试