This commit is contained in:
coco
2026-07-03 16:05:30 +08:00
commit df489d5640
1101 changed files with 779140 additions and 0 deletions
@@ -0,0 +1,87 @@
# 辅助工具
<cite>
**本文档引用的文件**
- [GUCodeCreator.cpp](file://cpp/Tools/GUCodeCreator.cpp)
- [GUCodeCreator.h](file://h/GUCodeCreator.h)
- [excel.cpp](file://cpp/Tools/excel.cpp)
- [excel.h](file://h/excel.h)
- [checkupdate.cpp](file://cpp/Tools/checkupdate.cpp)
- [checkupdate.h](file://h/checkupdate.h)
- [floatedit.cpp](file://cpp/Tools/floatedit.cpp)
- [floatedit.h](file://h/floatedit.h)
- [GetProcessInfo.cpp](file://cpp/Tools/GetProcessInfo.cpp)
- [GetProcessInfo.h](file://h/GetProcessInfo.h)
- [SaveInIP.cpp](file://cpp/Tools/SaveInIP.cpp)
- [SaveInIP.h](file://h/SaveInIP.h)
- [SaveInRes.cpp](file://cpp/Tools/SaveInRes.cpp)
- [SaveInRes.h](file://h/SaveInRes.h)
</cite>
## 目录
1. [设备唯一标识码生成工具](#设备唯一标识码生成工具)
2. [测量数据导出工具](#测量数据导出工具)
3. [版本检查工具](#版本检查工具)
4. [浮点数输入控件增强工具](#浮点数输入控件增强工具)
5. [系统进程信息获取工具](#系统进程信息获取工具)
6. [测量结果存储优化工具](#测量结果存储优化工具)
7. [集成应用场景](#集成应用场景)
8. [资源管理与异常防护](#资源管理与异常防护)
## 设备唯一标识码生成工具
`GUCodeCreator`工具类负责生成设备的唯一标识码(GU Code),该标识码结合了设备的MAC地址和时间戳信息,用于设备认证和授权管理。该工具通过获取网卡的MAC地址,并将其与当前时间的总秒数进行编码,生成一个唯一的字符串标识。
**Section sources**
- [GUCodeCreator.cpp](file://cpp/Tools/GUCodeCreator.cpp#L1-L395)
- [GUCodeCreator.h](file://h/GUCodeCreator.h)
## 测量数据导出工具
`excel`工具类提供了将测量数据导出为Excel文件的功能。该工具利用COM接口与Microsoft Excel应用程序进行交互,实现了数据格式设置、单元格合并和图表生成等高级功能。通过该工具,用户可以将测量结果以结构化的表格形式保存,并进行可视化展示。
**Section sources**
- [excel.cpp](file://cpp/Tools/excel.cpp#L1-L800)
- [excel.h](file://h/excel.h)
## 版本检查工具
`checkupdate`工具类实现了软件版本检查机制,包含请求构建、响应解析和更新提示流程。该工具通过HTTP协议向指定服务器请求版本信息文件,解析响应内容并与本地版本进行比较,从而判断是否需要更新。当检测到新版本时,会提示用户进行更新操作。
**Section sources**
- [checkupdate.cpp](file://cpp/Tools/checkupdate.cpp#L1-L800)
- [checkupdate.h](file://h/checkupdate.h)
## 浮点数输入控件增强工具
`floatedit`工具类对浮点数输入控件进行了增强处理,限制了用户输入的整数位和小数位长度,并支持负数输入。该工具通过重写`OnChar``OnKillfocus`等消息处理函数,实现了对输入字符的过滤和格式化,确保用户输入的数据符合预设的精度要求。
**Section sources**
- [floatedit.cpp](file://cpp/Tools/floatedit.cpp#L1-L282)
- [floatedit.h](file://h/floatedit.h)
## 系统进程信息获取工具
`GetProcessInfo`工具类提供了获取系统进程信息的方法,包括根据进程名获取进程ID、根据进程ID获取进程名以及获取父进程ID等。该工具利用Windows API函数`CreateToolhelp32Snapshot``Process32First`等,实现了对系统进程的枚举和查询功能。
**Section sources**
- [GetProcessInfo.cpp](file://cpp/Tools/GetProcessInfo.cpp#L1-L169)
- [GetProcessInfo.h](file://h/GetProcessInfo.h)
## 测量结果存储优化工具
`SaveInIP``SaveInRes`工具类对测量结果的存储进行了优化,支持多种装置类型的测量数据格式转换和文件存储。这些工具根据不同的测量方法和装置类型,将原始测量数据转换为特定格式的文本文件,并写入磁盘。同时,还支持地形信息的写入和文件头的生成。
**Section sources**
- [SaveInIP.cpp](file://cpp/Tools/SaveInIP.cpp#L1-L800)
- [SaveInIP.h](file://h/SaveInIP.h)
- [SaveInRes.cpp](file://cpp/Tools/SaveInRes.cpp#L1-L800)
- [SaveInRes.h](file://h/SaveInRes.h)
## 集成应用场景
这些辅助工具在设备认证、报告生成、系统监控等场景中具有广泛的应用。例如,在设备认证场景中,`GUCodeCreator`生成的唯一标识码可用于验证设备的合法性;在报告生成场景中,`excel`工具可将测量数据导出为Excel文件,便于生成专业的报告;在系统监控场景中,`GetProcessInfo`工具可用于监控关键进程的运行状态。
## 资源管理与异常防护
在使用这些工具时,需要注意资源管理和异常防护。例如,在使用`excel`工具时,应确保Excel应用程序的正确初始化和释放,避免资源泄漏;在使用`checkupdate`工具时,应处理网络请求失败等异常情况,确保程序的稳定性。此外,还应合理使用内存和文件句柄等系统资源,避免资源耗尽导致程序崩溃。