{ "definitions": { "work-dir": "../../SourceCode/Code2026", "package-types": [ // type - 定义打包类型 // name - 与用户交互时显示的名称 { "inherits": [ "ACAD-Encryption", "ZWCAD-Encryption" ], "type": "MERGER_Encryption", "name": "上华环境-整合包-加密版", "encryption": "Encryption", "guid": "{{B6B260A5-F162-4B7C-A6E6-FDA33D152FDC}", "APPDATA": "\\ShangHuaSoft\\Envi3D-2026-M", "OutputBaseFilename": "M_Envi3D", "Shortcut": " ", "MyAppName": "Envi3D Design System" }, { "inherits": [ "MERGER_Encryption" ], "type": "MERGER_Trial", "name": "上华环境-整合包-一年试用版", "encryption": "Trial", "OutputBaseFilename": "T_M_Envi3D", "MyAppName": "Envi3D Design System TRIAL VERSION" }, { "type": "ACAD-Encryption", "name": "AutoCAD-加密版", "presets": [ //"R180", //"R190", "R200", "R210", "R220", "R230", "R240", "R243", "R250", "R260" ], "platform": [ "ACAD" ], "encryption": "Encryption", "guid": "{{B6B260A5-F162-4B7C-A6E6-FDA33D152026}", "APPDATA": "\\ShangHuaSoft\\Envi3D-2026-A", "OutputBaseFilename": "A_Envi3D", "Shortcut": "ACAD", "product": "ENV_2025_V6_S0", "MyAppName": "Envi3D Design System for AutoCAD" }, { "type": "ZWCAD-Encryption", "name": "ZWCAD-加密版", "presets": [ "Z2023", "Z2024", "Z2025", "Z2026" ], "platform": [ "ZWCAD" ], "encryption": "Encryption", "guid": "{{B6B260A5-F162-4B7C-A6E6-FDA33D152FDA}", "APPDATA": "\\ShangHuaSoft\\Envi3D-2026-Z", "OutputBaseFilename": "Z_Envi3D", "Shortcut": "ZWCAD", "MyAppName": "Envi3D Design System for ZWCAD" }, { "inherits": [ "ACAD-Encryption" ], "type": "ACAD-Trial", "name": "AutoCAD-试用版", "encryption": "Trial", "OutputBaseFilename": "T_A_Envi3D", "MyAppName": "Envi3D Design System for AutoCAD TRIAL VERSION" }, { "inherits": [ "ZWCAD-Encryption" ], "type": "ZWCAD-Trial", "name": "ZWCAD-试用版", "encryption": "Trial", "OutputBaseFilename": "T_Z_Envi3D", "MyAppName": "Envi3D Design System for ZWCAD TRIAL VERSION" }, { "type": "GN-ZWCAD", "name": "国能专版", "presets": [ "Z2023", "Z2024", "Z2025" ], "platform": [ "ZWCAD" ], "encryption": "Encryption", "guid": "{{B6B260A5-F162-4B7C-A6E6-FDA33D152FD1}", "APPDATA": "\\ShangHuaSoft\\Envi3D-2026-GN", "OutputBaseFilename": "国能专版_Envi3D", "Shortcut": "国能专版", "MyAppName": "Envi3D Design System 国能专版" }, { "inherits": [ "GN-ZWCAD" ], "type": "GN-ZWCAD-Trial", "name": "国能专版-一年期试用", "encryption": "Trial", "OutputBaseFilename": "T_国能专版_Envi3D", "MyAppName": "Envi3D Design System 国能专版(一年期试用)" }, { "type": "ZGH-ACAD", "name": "中广核专版", "presets": [ "R180" ], "platform": [ "ACAD" ], "encryption": "Encryption", "guid": "{{B6B260A5-F162-4B7C-A6E6-FDA33D152FD2}", "APPDATA": "\\ShangHuaSoft\\Envi3D-2026-ZGH", "OutputBaseFilename": "中广核专版_Envi3D", "Shortcut": "中广核专版 ", "MyAppName": "Envi3D Design System 中广核专版" }, { "inherits": [ "ZGH-ACAD" ], "type": "ZGH-ACAD-TRIAL", "name": "中广核专版-一年期试用", "encryption": "Trial", "OutputBaseFilename": "T_中广核专版_Envi3D", "MyAppName": "Envi3D Design System 中广核专版(一年期试用)" } ], "product": "ENV_2025_V6_S0", /* 下面定义的是生成文件所在路径 $product 在cmakepresets.json 的名称为:"base"的preset的cacheVariables内的"PRODUCT"字段定义 没有加密功能的工程,按照每个 preset 设置单独路径 涉及到加密的工程, 在不同的preset的基础上加上了不同的产品-加密类型组成路径 */ "src_dir": "../../bin/Code2026", "dest_dir": "./Original-File/cmake_environment", "setup_files_dir": "../../setup/PoolPlant3D/WF2023", "startApp_Dir": "../../SourceCode/Code2026/startapp", "startApp_csproj": "${startApp_Dir}/startapp.csproj", "MsBuild2019": "C:/Program Files/Microsoft Visual Studio/18/Enterprise/MSBuild/Current/Bin/amd64/MSBuild.exe" }, "actions": { // 1. 更新代码 "update-svn": { "cmd": "svn update", "path": "../../" }, // 2 独立于cmake体系之外的工程, startApp, 独立编译 "compile-startApp": { "copy": [ { "form": [ "${startApp_Dir}/bmp/poolplant3d.ico" ], "to": [ "${startApp_Dir}/bmp/startup.ico" ] } ], "cmd": "\"${MsBuild2019}\" \"${startApp_csproj}\" /t:\"rebuild\" /p:Configuration=\"release\";Platform=\"AnyCPU\" /flp1:logfile=startApp.log;errorsonly;Verbosity:quiet /clp:Summary" }, // 这里定义了打包前需要压缩的大文件,以提高多次打包的速度,但是要注意,需要在iss脚本中解压他们!! "compress_huge_files": [ { "7za": "./7za.exe", "zip_files": [ "${setup_files_dir}/sys/Aec3DMep.db", "${setup_files_dir}/sys/shmodel.db" ], "compress_file": "${setup_files_dir}/sys/hugeDb.7z", "sh1_flag_file": "${setup_files_dir}/sys/hugeDb_sh1.txt" }, { "7za": "./7za.exe", "zip_files": [ "${setup_files_dir}/help/*.*" ], "compress_file": "${setup_files_dir}/help/hugeHelp.7z", "sh1_flag_file": "${setup_files_dir}/help/hugeHelp_sh1.txt" } ], // 定义每个参与编译的preset的copy行为 "copy_preset": { "form": [ "${src_dir}", "${setup_files_dir}/depend_dll/*.dll", "${setup_files_dir}/RX/*.rx" ], "to": [ "${dest_dir}" ] }, // 4. 拷贝操作 "copy": [ { "form": [ "${src_dir}/release-startapp/*.*" ], "to": [ "${dest_dir}" ], "include": [ "*.exe", "*.dll" ] }, { "form": [ "${setup_files_dir}/bitanswer/bal_local/*.*", "${setup_files_dir}/bitanswer/bal_remote/*.*" ], "to": [ "${dest_dir}" ], "include": [ "*.exe" ] }, // 下面的对象用来拷贝其他打包文件 { "form": [ "${setup_files_dir}/AsdkHlrDbx" ], "to": [ "${dest_dir}" ] }, { "form": [ "${setup_files_dir}/sys" ], "to": [ "${dest_dir}" ], "exclude": [ "Aec3DMep.db", "shmodel.db", "hugeDb_sh1.txt" ] }, { "form": [ "${setup_files_dir}/help" ], "to": [ "${dest_dir}" ], "include": [ "hugeHelp.7z" ] }, { "form": [ "${setup_files_dir}/demo", "${setup_files_dir}/drawframe", "${setup_files_dir}/dwb", "${setup_files_dir}/Equipment2D", "${setup_files_dir}/mdlapps", "${setup_files_dir}/programdata", "${setup_files_dir}/Support", "${setup_files_dir}/temp", "${setup_files_dir}/tk" ], "to": [ "${dest_dir}" ] } ], // 5. 编译成功后,文件拷贝完成后,打包 "innosetup": { "iscc": "c:/Program Files (x86)/Inno Setup 5/ISCC.exe", "iss": "./ISS_File/cmake_environment.iss" } } }