build/installer.nsh

This commit is contained in:
chenqiang 2025-09-10 14:09:19 +08:00
parent d0ba890cdc
commit 769996b2f8

44
build/installer.nsh Normal file
View File

@ -0,0 +1,44 @@
; NSIS 脚本配置
; 设置中文支持
Unicode true
; 定义中文常量
!define PRODUCT_NAME "统计技能考试系统"
!define PRODUCT_VERSION "${version}"
!define PRODUCT_PUBLISHER "抚顺市统计局"
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\${productName}.exe"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${_productId}"
; 自定义安装路径选择界面的文本
!define MUI_DIRECTORY_TEXT_TOP "选择安装位置:"
!define MUI_DIRECTORY_TEXT_DESTINATION "目标文件夹:"
; 自定义完成页面文本
!define MUI_FINISHPAGE_TITLE "${PRODUCT_NAME} 安装完成"
!define MUI_FINISHPAGE_TEXT "${PRODUCT_NAME} 已成功安装到您的计算机上。"
!define MUI_FINISHPAGE_TEXT_REBOOT "系统需要重启才能完成安装。"
!define MUI_FINISHPAGE_BUTTON "完成"
!define MUI_FINISHPAGE_RUN "启动 ${PRODUCT_NAME}"
; 自定义卸载页面文本
!define MUI_UNPAGE_TEXT_TOP "此向导将从您的计算机中卸载 ${PRODUCT_NAME}。"
!define MUI_UNPAGE_TEXT_DESTINATION "要继续,请单击下一步。"
!define MUI_UNPAGE_BUTTON "卸载"
; 自定义完成卸载页面文本
!define MUI_UNFINISHPAGE_TITLE "${PRODUCT_NAME} 卸载完成"
!define MUI_UNFINISHPAGE_TEXT "${PRODUCT_NAME} 已从您的计算机中卸载。"
!define MUI_UNFINISHPAGE_BUTTON "完成"
; 确保build目录存在
!macro preInit
SetOutPath $INSTDIR
; 创建应用数据目录
SetShellVarContext current
CreateDirectory "$APPDATA\${PRODUCT_NAME}\data"
; 设置安装日志
WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME}"
WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
WriteRegStr HKLM "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
!macroend