Files
coco df489d5640 a
2026-07-03 16:05:30 +08:00

8.6 KiB
Raw Permalink Blame History

版本历史

**本文档引用的文件** - [version_info.txt](file://version_info.txt) - [DB/数据库字段修改记录.txt](file://DB/数据库字段修改记录.txt) - [Install/Geomative Studio/version_info.txt](file://Install/Geomative Studio/version_info.txt) - [Install/Geomative Studio/database_modify.xml](file://Install/Geomative Studio/database_modify.xml) - [Install/geomativestudio.nsi](file://Install/geomativestudio.nsi) - [config.ini](file://config.ini) - [README-2021.txt](file://README-2021.txt) - [LOG/upg_geo_filetrans_log.txt](file://LOG/upg_geo_filetrans_log.txt)

目录

  1. 版本概览
  2. 版本演进历史
  3. 版本号命名规则与发布周期
  4. 数据库模式演变
  5. 向后兼容性与升级路径
  6. 功能演进与技术变更

版本概览

Geomative Studio 是一款用于地质勘探数据处理与分析的软件系统。根据项目文件分析,当前最新版本为 2.4.1,该版本信息在 version_info.txt 文件中明确标识。项目自早期版本持续演进,经历了多个重要功能迭代与数据库结构变更,支持从 GD-10 到 GD-20 等多种硬件设备。

项目开发始于 T31 版本,并计划从 T34 版本开始发布新系列。开发环境采用 Visual Studio 2015,以兼顾新功能与旧电脑的兼容性。

Section sources

版本演进历史

根据 DB/数据库字段修改记录.txtdatabase_modify.xml 等文件,Geomative Studio 的版本历史可追溯至 2015 年。以下是按时间顺序整理的主要版本变更记录:

2015 年

  • 2015年6月2日
    • td2dcontd3dcontd1dcon 表中增加 bUse 字段,用于标记记录的有效性。
  • 2015年6月12日
    • Td 表中增加 rect(矩形大小)和 rect_loc(矩形位置)字段。
    • Td 表中的 EspaceEdistance 字段从数字类型改为文本类型。
    • SCON 表中添加 RectRectLocPoleDistancePoleStep 字段。
    • 删除原有的 X0Y0X1Y1 字段。

2016 年

  • 2016年12月2日
    • acacdstd_spc_attr 表中新增 10 个时窗信息。
    • cm 表中加入发射频率 9 (0.03125Hz)。

2017 年

  • 2017年9月12日
    • projecttz 表中加入默认工程和默认测区。
  • 2017年9月18日
    • device 表中增加 GPS 字段。
    • desetting 表中增加 CableTypeLowPowerAlarmAutoStack 字段。
    • gr 表中的 ECODE 字段从文本类型改为整型。
    • td 表中增加 SkipCable 字段。
    • td 表中的 DESN 字段从必填改为非必填。
  • 2017年9月23日
    • 新增 task_timer 表。
  • 2017年9月25日
    • td 表中添加 IsAutoGenerate 字段。
  • 2017年9月26日
    • timer_task 表中增加 PLCID 字段。
  • 2017年9月28日
    • td1dtd2dtd3dcon 表中的 VIR0SP 字段改为非必填。
    • 修改 timer_task 表的时间字段属性。
  • 2017年10月27日
    • 设置 TaskTimer 日期格式。
  • 2017年10月28日
    • 修改 Medium 表中部分装置的值。

2019 年

  • 2019年7月4日
    • medium 表中新增“加强梯度装置”。
  • 2019年7月14日
    • medium 表中新增“跨孔装置”。
    • 新增 TTaskInfoCoordinetes 表,用于保存电极坐标信息,支持与 GD 设备的数据同步。
  • 2019年12月3日
    • 新增 TPictureInfo 表用于存放图片信息。
    • 新增 TPictureCode 表用于存放岩性编辑图片的二维码。
  • 2019年12月11日
    • 新增 TLoggingTaskInfo 表用于存放新建测井任务信息。
    • 新增 TLoggingTaskContent 表用于保存测点数据信息。

2021 年及以后

  • 2021年11月10日
    • 项目从 T31 目录复制,后续开发从此处开始,首个发布版本为 T34。
    • 开发环境确定为 Visual Studio 2015。
  • 当前版本 2.4.1
    • 最新版本号在 version_info.txt 中定义,表明项目已进入成熟稳定阶段。

Section sources

版本号命名规则与发布周期

Geomative Studio 采用标准的 主版本号.次版本号.修订号(如 2.4.1)命名规则:

  • 主版本号:重大架构变更或功能重构。
  • 次版本号:新增重要功能或模块。
  • 修订号:修复缺陷或进行小规模优化。

发布周期不固定,主要根据功能开发进度和用户反馈进行更新。从数据库变更记录的密集程度来看,2017 年是功能迭代最频繁的时期,之后趋于稳定,以维护和小功能补充为主。

此外,系统通过 config.ini 中的 [ONLINE_VERSION] 配置项(VERID)区分在线服务版本,当前为 V2.0,表明系统支持多版本并行服务。

Section sources

数据库模式演变

数据库模式经历了从简单到复杂、从功能单一到支持多场景的演变过程。

演变过程

  1. 初期(2015年):以基础测试任务数据存储为主,结构较为简单。
  2. 中期(2016-2017年):引入时窗、定时任务、GPS 定位等高级功能,数据模型复杂度显著提升。
  3. 后期(2019年):支持跨孔测量、测井、图片管理等专业场景,新增多个专用数据表。

演变特点

  • 向后兼容性:多数变更通过新增字段或表实现,避免直接删除或重命名关键字段,确保旧数据可被新版本读取。
  • 数据类型优化:如将 ECODE 从文本改为整型,提升查询效率。
  • 灵活性增强:将多个字段(如 X0/Y0/X1/Y1)整合为 rectrect_loc,提高配置灵活性。
erDiagram
td ||--o{ td2dcon : "包含"
td ||--o{ td3dcon : "包含"
td ||--o{ td1dcon : "包含"
device ||--o{ task_timer : "关联"
project ||--o{ tz : "包含"
medium }|--o{ TTaskInfoCoordinetes : "支持"
TLoggingTaskInfo ||--o{ TLoggingTaskContent : "包含"

Diagram sources

向后兼容性与升级路径

向后兼容性策略

  • 数据库兼容:通过 database_modify.xml 文件记录数据库变更,系统启动时自动检测并执行必要的结构升级。
  • 接口兼容:代码中通过 g_iOnLineVersion 全局变量区分不同版本功能,避免因硬件或服务版本不同导致功能异常。
  • 配置兼容config.ini 文件保留旧配置项,同时支持新增配置,确保旧配置文件可被新版本加载。

升级路径指导

  1. 备份数据:升级前务必备份 GeoMativeDB.accdb 数据库文件。
  2. 执行升级:运行安装程序,系统将自动应用 database_modify.xml 中定义的变更。
  3. 验证功能:检查新增功能(如跨孔测量、测井支持)是否正常工作。
  4. 处理兼容性问题:若遇到功能异常,检查 config.ini 中的 VERID 设置是否与当前服务匹配。

Section sources

功能演进与技术变更

功能演进

  • 测量模式:从基础 1D/2D/3D 测量,扩展到支持跨孔、测井等复杂场景。
  • 数据管理:从纯数值数据,扩展到支持图片、二维码、GPS 坐标等多媒体信息。
  • 自动化:引入定时任务、自动堆叠、自动生成功能,提升工作效率。

技术变更

  • 开发环境:从 Visual Studio 2013 升级至 2015,平衡新特性与兼容性。
  • 依赖库:使用 cURL 库(curl.h)进行网络通信,支持在线更新和数据同步。
  • 安装技术:使用 NSISgeomativestudio.nsi)制作安装包,支持驱动安装、VC++ 运行库部署等复杂操作。

系统通过持续的技术迭代,实现了从单一测量工具到综合性地质勘探平台的转变。

Section sources