MFC制作MQTT(EMQX)客户端 - 约定、创建 MFC 程序(附源码)

前言全局说明

MFC制作MQTT客户端(附源码)


一、说明

环境:

Windows 7 旗舰版
Visual Studio 2013
CMake version 3.19.8
paho.mqtt.c V1.3.13

二、环境准备

2.1 安装CMake

用来生成 VS2013 解决方案工程
https://www.cnblogs.com/wutou/p/18323170

2.2 安装 Visual Studio 2013

https://www.cnblogs.com/wutou/p/18320532

2.3 下载 mqtt api 接口

git 命令行下载

git clone https://github.com/eclipse/paho.mqtt.c

或 点击链接下载:
https://github.com/eclipse/paho.mqtt.c/archive/refs/tags/v1.3.13.tar.gz


三、说明、约定:

说明:
因为 MFC 调用 paho.mqtt.c 的 API 所以,要把编译出来的相关文件,放到MFC的工程中,方便调用

约定:
为了方便后续描述,和读者理解,这里将路径特别说明一下:

MQTT 编译的API 路径
D:\smart-homes\paho.mqtt.c

MQTT 编译的 API 生成的 h 头文件路径
D:\smart-homes\paho.mqtt.c\src

MQTT 编译的 API 生成的 lib 、dll 路径
D:\smart-homes\paho.mqtt.c\src\Debug

sln 项目入口文件目录:
D:\vstudio 2013\MFC_MQTT_Client\MFC_MQTT_Client.sln

cpp 和 h 文件目录:
D:\vstudio 2013\MFC_MQTT_Client\mfc_mqtt-client-power-on-off

编译后 Debug 版 exe 文件目录:
D:\vstudio 2013\MFC_MQTT_Client\mfc_mqtt-client-power-on-off\Debug


四、创建 MFC 程序

4.1 创建 客户端 工程

4.1.1

下图:工程名、路径、解决方案名 ,修改成你自己的,这是里是示例
image

4.1.2

image

4.1.3

image

4.1.4 创建好了,第一次打开因为要分析依赖,所以要慢些

image

4.2 画界面

这次的目的是点击按钮,开、关设备

4.2.1 显示状态的控件,配置

image

4.2.2 开机按钮控件,配置

image

4.2.3 关机按钮控件,配置

image

4.2.4 编译

先编译下界面,看看是否符合自己的想法
image

4.2.5 编译后运行的样子

image



免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。




参考、来源:
https://hellobug.blog.csdn.net/article/details/108272834
https://blog.csdn.net/wkd_007/article/details/138698592
https://blog.csdn.net/wkd_007/article/details/138673265 (mosquitto轻量Broker服务器)
https://blog.csdn.net/jiexijihe945/article/details/139096236 (Windows和Linux系统上paho-mqtt的编译和使用)
https://blog.csdn.net/m0_52513940/article/details/135313112 (MFC连接mqtt服务器订阅和发送数据-自设计函数库)
https://www.cnblogs.com/XiaoGuanYu/p/8168714.html



posted @   悟透  阅读(110)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
历史上的今天:
2023-07-25 lftp命令参数详解
2023-07-25 python flask 后台运行 关闭终端不退出
2021-07-25 git本地仓库提交到远程
点击右上角即可分享
微信分享提示