本机网络与串口调试台。从 Electron 重写为 Qt 三层壳(NetDebugX.exe → NetDebugXUI.dll → NetDebugXCore.dll),Core 零 Qt、纯 C ABI v8,支持 TCP/UDP/组播/串口、HTTP 客户与本机服务端、WebSocket 与数据模板。
本机 网络 / 串口 调试台。从 Electron 重写为 Qt 三层壳(
NetDebugX.exe → NetDebugXUI.dll → NetDebugXCore.dll),Core 零 Qt、纯 C ABI v8。Electron 首发见 《功能介绍(Electron)》。
NetDebugX 面向嵌入式、IoT 与协议联调:建会话、连上设备、收发观察、套模板、留日志,一条链路在本机做完。会话、模板与日志只写 netdebugx.db,不上传云端。
Qt 版产品边界比 Electron 首发更完整:
ws / wss 长连接,文本或 JSON 帧{TIME} {SEQ} {CRC16:modbus} 等变量宏,导入导出 JSON 包首版不做通用 MQTT 客户端、抓包 / 协议逆向、云同步与账号体系。仅 Windows 桌面。

主页:八个模块入口,最近会话一键回填
无边框窗口。侧栏默认收起为图标轨,悬停展开中文标签。底栏显示当前页与版本。
| 区域 | 说明 |
|---|---|
| 标题栏 | 品名、深浅色切换、最小 / 最大 / 关闭 |
| 侧栏 | 主页、网络四协议、扩展(串口 / HTTP / WebSocket)、模板、设置 / 帮助 / 关于 |
| 主页卡片 | 点卡片进入对应模块 |
| 最近会话 | 模块、名称、目标、时间;点一行回填参数 |
这四个模块共用同一套工作台:左侧连参数与快捷指令,右侧日志 + 发送框。

TCP 客户端:远端 IP/端口、快捷指令、ASCII/HEX 日志与变量宏发送
共同能力:
{TIME} {SEQ} {CRC16:modbus} 等各协议差异:
| 模块 | 连上之后 |
|---|---|
| TCP 客户端 | 填服务器 IP/端口,可绑定本机端口、超时、KeepAlive |
| TCP 服务端 | 本机监听,客户端列表,点对点或广播,可自动回复 |
| UDP | 绑定占端口可收,或仅发不占固定端口 |
| 组播 | 加入 224/239 段,管理多个组地址 |
| 串口 | COM、波特率、数据位 / 停止位 / 校验,快捷 AT 指令 |

TCP 服务端:监听地址、已连接客户端、广播发送

串口:COM 参数与 AT 快捷指令,日志与网络模块同一套
同一页顶部 客户端 | 服务端 分段切换。切换只翻已有页面,不再拆掉重建。

客户端:方法、URL、头与体;左侧历史带状态码与耗时
客户端发出真实请求(Core 走 sdtech_http_client / libcurl)。结果用消息对话框提示,不用右上角 toast。

服务端:地址/端口、路由列表、模拟应答、接入记录
服务端能力:
127.0.0.1:18080),Winsock HTTP/1.1,不另引库独立页,Core 用 prebuilt libwebsockets 走真通道(ABI 仍为 v8)。

ws:// / wss://、快捷 JSON 指令、与流式页相同的日志和发送框
左侧模板列表(筛选、导入、导出),中间编辑名称 / 格式 / 正文,右侧实时预览。点宏按钮插入 {TIME} {DATE} {TIMESTAMP} {SEQ} {LEN} {RANDOM:n} {CRC16:modbus} {CHECKSUM}。Modbus 模板可在预览里看到 Core 算出的 CRC。

HEX 模板正文带 {CRC16:modbus},右侧预览已展开为真实字节
流式页发送区的「模板」按钮从这里取条目插入。
192.168.1.100:502),连接01 03 00 00 00 0A {CRC16:modbus}GET /api/status)http://127.0.0.1:18080http://127.0.0.1:18080/api/statusAT / AT+GMR| 维度 | Electron 首发 | Qt 重构 |
|---|---|---|
| UI | Chromium + 前端 | Qt Widgets + QSS,ProtoType/ 先行 |
| 运行时 | 单一包 + Koffi 调 DLL | 壳只 QLibrary 加载 Ui,Ui 不链 Core 导入库 |
| 协议 | TCP / UDP / 组播 | 加上串口、HTTP 客户/本机服务端、WebSocket |
| 提示 | 多为 toast | HTTP 等改为消息对话框(与设置页同一套) |
| 数据 | 本机存储 | 仍是本机 netdebugx.db,明确不做云同步 |
| 首发平台 | 宣称跨平台 | 仅 Windows 桌面 |
产品叙事从「Electron 网络助手」收到「本机调试台,通道在零 Qt 的 Core 里」。
NetDebugX.exe → NetDebugXUI.dll → NetDebugXCore.dll
(loader) (Host run) (零 Qt / C ABI v8)
└──────── → Upgrade.dll(仅壳加载)
三条硬边界:
sdtech_qt_ui_host_run)CoreClient 调 CoreUi ↔ Core 是 C 函数表:create / destroy / kv_* / session_open / session_close / session_send / 事件回调 / http_request。会话用 protocol 字符串区分,例如 tcp-client、http-server、websocket。
HTTP 本机服务端:session_open(..., "http-server", {host, port, routes}),热更新路由走 session_send;事件 listening / request / error / disconnected。实现是 Winsock HTTP/1.1,不升 ABI(仍为 v8)。
落盘大致是:
| 位置 | 内容 |
|---|---|
netdebugx.db |
Core 内 KV(偏好、最近会话、模板) |
Function/prebuilt |
Qt 依赖以外的本树预编译库 |
依赖只认本树 Function/prebuilt。CMake 不写工作目录外盘符,不在本树编 SDK、不跑 vcpkg。
| 项 | 说明 |
|---|---|
| 语言 | C++20 |
| UI | Qt 6 Widgets(sdtech::ui / Temple UiKit) |
| 构建 | CMake 3.21+,MSVC 2022 x64,源码树内生成 Function/NetDebugX.sln |
| Core | sqlite3、sdtech_net、libcurl、libwebsockets、Winsock |
| 测试 | GTest(Core)+ Qt Test(页面 offscreen) |
在 Function 目录配置并编译,产出在 Function/bin/。链 DLL 前若 NetDebugX.exe 仍在跑,先结束进程,否则 MSVC 会 LNK1168。
| 版本 | 说明 | 下载链接 |
|---|---|---|
| 绿色版 | 解压即用 | 待补充 |
| 安装版 | 一键安装 | 待补充 |
| 源码包 | Qt 工程源码 | 待补充 |
解压密码:1150。此处不放 Electron 旧包。
NetDebugX 适合板端协议联调、本机模拟一个 HTTP 服务给客户端对打、以及串口 AT / Modbus 收发。Qt 版把原型主路径做成可测的原生界面,并把通道关在零 Qt 的 Core 里。若有功能建议,欢迎反馈。
Electron 首发说明仍见 《功能介绍(Electron)》。