补充打包方式
This commit is contained in:
@@ -2,6 +2,9 @@
|
||||
; 年糕历险记 —— Windows 安装脚本(NSIS 3,简体中文)
|
||||
; 用法:makensis /DVERSION=1.0.0 scripts/installer.nsi
|
||||
; 产物:年糕历险记-Setup-v1.0.0.exe(构建与发布.md §8)
|
||||
; 特性:简体中文向导、可选安装目录、
|
||||
; 快捷方式选项(组件页:桌面 / 开始菜单,默认勾选)、
|
||||
; 安装完成后可选立即运行(完成页,默认勾选)、开始菜单卸载、卸载保留存档。
|
||||
|
||||
!include "MUI2.nsh"
|
||||
|
||||
@@ -24,12 +27,27 @@ InstallDirRegKey HKCU "${UNINSTALL_KEY}" "InstallLocation"
|
||||
RequestExecutionLevel user
|
||||
SetCompressor /SOLID lzma
|
||||
|
||||
!define MUI_ABORTWARNING
|
||||
!define MUI_FINISHPAGE_RUN "$INSTDIR\${PRODUCT_EXE}"
|
||||
!define MUI_FINISHPAGE_RUN_TEXT "运行${PRODUCT_NAME}"
|
||||
; 安装器 exe 自身的版本信息
|
||||
VIProductVersion "${VERSION}.0"
|
||||
VIAddVersionKey "ProductName" "${PRODUCT_NAME}"
|
||||
VIAddVersionKey "FileDescription" "${PRODUCT_NAME} 安装程序"
|
||||
VIAddVersionKey "FileVersion" "${VERSION}"
|
||||
VIAddVersionKey "ProductVersion" "${VERSION}"
|
||||
VIAddVersionKey "CompanyName" "${PRODUCT_PUBLISHER}"
|
||||
VIAddVersionKey "LegalCopyright" "Copyright (C) ${PRODUCT_PUBLISHER}"
|
||||
|
||||
; ---- 页面(全中文)----
|
||||
!define MUI_ABORTWARNING
|
||||
; 安装器/卸载器图标:游戏 logo(make_icon.ps1 从素材包 pack.png 生成多尺寸 icon.ico,
|
||||
; 构建与发布.md §8「安装器图标」规范:安装包必须与游戏本体同图标)
|
||||
!define MUI_ICON "..\cmd\client\icon.ico"
|
||||
!define MUI_UNICON "..\cmd\client\icon.ico"
|
||||
; 完成页「安装完成后运行」复选框(默认勾选)
|
||||
!define MUI_FINISHPAGE_RUN "$INSTDIR\${PRODUCT_EXE}"
|
||||
!define MUI_FINISHPAGE_RUN_TEXT "安装完成后运行${PRODUCT_NAME}"
|
||||
|
||||
; ---- 页面(全中文):欢迎 → 组件(快捷方式选项)→ 目录 → 安装 → 完成 ----
|
||||
!insertmacro MUI_PAGE_WELCOME
|
||||
!insertmacro MUI_PAGE_COMPONENTS
|
||||
!insertmacro MUI_PAGE_DIRECTORY
|
||||
!insertmacro MUI_PAGE_INSTFILES
|
||||
!insertmacro MUI_PAGE_FINISH
|
||||
@@ -41,6 +59,7 @@ SetCompressor /SOLID lzma
|
||||
|
||||
; ---- 安装内容(构建与发布.md §8)----
|
||||
Section "主程序" SEC01
|
||||
SectionIn RO
|
||||
SetOutPath "$INSTDIR"
|
||||
File "..\bin\mc-client.exe"
|
||||
File "..\bin\mc-server.exe"
|
||||
@@ -80,15 +99,21 @@ Section "主程序" SEC01
|
||||
WriteRegDWORD HKCU "${UNINSTALL_KEY}" "NoRepair" 1
|
||||
|
||||
WriteUninstaller "$INSTDIR\uninstall.exe"
|
||||
SectionEnd
|
||||
|
||||
; 快捷方式(桌面 + 开始菜单,中文名)
|
||||
; 快捷方式选项 1:桌面(默认勾选)
|
||||
Section "创建桌面快捷方式" SEC02
|
||||
CreateShortCut "$DESKTOP\${PRODUCT_NAME}.lnk" "$INSTDIR\${PRODUCT_EXE}"
|
||||
SectionEnd
|
||||
|
||||
; 快捷方式选项 2:开始菜单(默认勾选)
|
||||
Section "创建开始菜单快捷方式" SEC03
|
||||
CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}"
|
||||
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\${PRODUCT_NAME}.lnk" "$INSTDIR\${PRODUCT_EXE}"
|
||||
CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\卸载${PRODUCT_NAME}.lnk" "$INSTDIR\uninstall.exe"
|
||||
SectionEnd
|
||||
|
||||
; ---- 卸载 ----
|
||||
; ---- 卸载(保留用户存档 worlds/ 与日志)----
|
||||
Section "Uninstall"
|
||||
Delete "$DESKTOP\${PRODUCT_NAME}.lnk"
|
||||
RMDir /r "$SMPROGRAMS\${PRODUCT_NAME}"
|
||||
@@ -101,3 +126,10 @@ Section "Uninstall"
|
||||
; 保留用户存档(worlds/)与日志,不删除
|
||||
DeleteRegKey HKCU "${UNINSTALL_KEY}"
|
||||
SectionEnd
|
||||
|
||||
; ---- 组件说明(组件页底部;必须放在所有 Section 声明之后)----
|
||||
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SEC01} "安装游戏主程序(客户端、服务器、素材包与配置文件)。必选。"
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SEC02} "在桌面创建「${PRODUCT_NAME}」快捷方式。"
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SEC03} "在开始菜单创建「${PRODUCT_NAME}」与「卸载${PRODUCT_NAME}」快捷方式。"
|
||||
!insertmacro MUI_FUNCTION_DESCRIPTION_END
|
||||
|
||||
Reference in New Issue
Block a user