# serialLocation **Repository Path**: small_planet/serial-location ## Basic Information - **Project Name**: serialLocation - **Description**: 当电脑连接的串口设备比较多时,通过设备管理器或者串口调试工具插拔很难快速定位设备对应的COM口,此工具能快速识别 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-17 - **Last Updated**: 2026-09-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 串口定位 使用 C++17 + Qt 6 Widgets / SerialPort 开发的 Windows 桌面工具。 ## 使用 双击 `dist/SerialLocation.exe`。程序先列出已连接串口,然后插入或拔出待识别设备:顶部显示对应 COM 号,下面保留插拔时间和设备名称。新插入的设备绿色高亮 6 秒。 - 列表显示串口号、设备名称、制造商、序列号及 VID/PID,按 COM 数字排序。 - 双击设备行复制串口号,也可点击按钮复制最近变化的串口号。 - 支持窗口置顶、立即刷新、清空记录;最近 500 条记录仅在本次运行期间保留。 - 每 500 毫秒枚举一次设备,不打开串口,不改变串口配置。 - 首次启动的设备是基线,不会误记为刚插入。多口设备会列出每个发生变化的串口。 - 设备名称和标识来自驱动,缺失时显示“—”。同一次轮询间隔内完成的极快插拔可能无法捕获;未安装驱动、系统未分配 COM 号的设备不会出现在列表中。 ## 编译 已使用本机 Qt 6.5.3 MinGW 64 位及 MinGW 11.2 编译验证。 ```powershell powershell -ExecutionPolicy Bypass -File .\build.ps1 ``` 其他安装路径可使用 `-QtRoot` 和 `-MingwRoot` 参数指定,编译器需与 Qt 套件匹配。也可在 Qt Creator 中打开 `CMakeLists.txt`,选择 Desktop Qt 6 MinGW 64-bit 套件。 脚本会构建 Release、运行差异检测测试,并将所需 Qt 模块、Windows 平台插件和 MinGW 运行库复制到 `dist`(绕过本机 windeployqt 对插件的错误识别)。分发时请复制整个 `dist` 目录,不要只复制 exe。 `SerialLocation.exe --self-test` 检查新增、移除、无变化、多设备移除和相同 COM 号更换设备;`--smoke-test` 启动窗口并运行三个轮询周期后自动退出。真实 USB 插拔需在本机使用实体设备验证。