这东西总算也结束了……我基本上可以安心离开汉化圈子了。
嘛,这脚本跟前面的
BMW、
夜明的脚本基本上是一样的,所以也没什么太多可解释的。
而且继续偷懒……懒得做目录操作所以那graph目录我做成了一个自解压exe文件,复制到安装目录后自动展开。
目录结构:
│ nanadoro.nsi
│ nana_patch_chs.ex
│
├─files
│ GAME.ini
│ graph.exe
│ nana_chs.exe
│ scenario.dat
│ textdata.dat
│
├─icon
│ nana.ico
│
├─image
│ side.bmp
│ splash.bmp
│
├─music
│ BGM.mp3
│
└─txt
license.txt
NSIS脚本代码:
SetCompressor lzma
; HM NIS Edit Wizard helper defines
!define PRODUCT_NAME "七色★星露 汉化补丁"
!define PRODUCT_VERSION "1.0"
!define PRODUCT_PUBLISHER "奥克汉化组"
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\yoake_chs"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
!define PRODUCT_UNINST_ROOT_KEY "HKLM"
!define PRODUCT_STARTMENU_REGVAL "NSIS:StartMenuDir"
; MUI 1.67 compatible ------
!include "MUI.nsh"
!define MUI_WELCOMEFINISHPAGE_BITMAP ".\image\side.bmp"
!include "FileFunc.nsh"
!include "nsisbass.nsh"
!include "nsisbassmacros.nsh"
!insertmacro DirState
; MUI Settings
!define MUI_ABORTWARNING
!define MUI_ICON ".\icon\nana.ico"
!define MUI_UNICON ".\icon\nana.ico"
; Language Selection Dialog Settings
!define MUI_LANGDLL_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}"
!define MUI_LANGDLL_REGISTRY_KEY "${PRODUCT_UNINST_KEY}"
!define MUI_LANGDLL_REGISTRY_VALUENAME "NSIS:Language"
; Welcome page
!insertmacro MUI_PAGE_WELCOME
; License page
!define MUI_LICENSEPAGE_CHECKBOX
!insertmacro MUI_PAGE_LICENSE ".\txt\license.txt"
; Directory page
!insertmacro MUI_PAGE_DIRECTORY
; Start menu page
var /GLOBAL ICONS_GROUP
!define MUI_STARTMENUPAGE_DEFAULTFOLDER "奥克汉化组"
!define MUI_STARTMENUPAGE_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}"
!define MUI_STARTMENUPAGE_REGISTRY_KEY "${PRODUCT_UNINST_KEY}"
!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "${PRODUCT_STARTMENU_REGVAL}"
!insertmacro MUI_PAGE_STARTMENU Application $ICONS_GROUP
; Instfiles page
!insertmacro MUI_PAGE_INSTFILES
; Finish page
!define MUI_FINISHPAGE_RUN "$INSTDIR\nana_chs.exe"
!insertmacro MUI_PAGE_FINISH
; Uninstaller pages
!insertmacro MUI_UNPAGE_INSTFILES
; Language files
!insertmacro MUI_LANGUAGE "SimpChinese"
VIProductVersion "1.0.0.0"
VIAddVersionKey /LANG=2052 "FileDescription" "${PRODUCT_NAME}"
VIAddVersionKey /LANG=2052 "ProductName" "${PRODUCT_NAME}"
VIAddVersionKey /LANG=2052 "LegalCopyright" ""
VIAddVersionKey /LANG=2052 "CompanyName" "${PRODUCT_PUBLISHER}"
VIAddVersionKey /LANG=2052 "FileVersion" "${PRODUCT_VERSION}"
ReserveFile ".\image\splash.bmp"
ReserveFile "${NSISDIR}\Plugins\system.dll"
ReserveFile "${NSISDIR}\Contrib\nsisbass\bass.dll"
ReserveFile ".\music\bgm.mp3"
; MUI end ------
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
OutFile "nana_patch_chs.exe"
InstallDir "$EXEDIR"
InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
ShowInstDetails show
ShowUnInstDetails show
Function .onInit
InitPluginsDir
File "/oname=$PLUGINSDIR\Splash_Splash.bmp" ".\image\splash.bmp"
; 使用闪屏插件显示闪屏
advsplash::show 1500 600 400 -1 "$PLUGINSDIR\Splash_Splash"
Pop $0 ; $0 返回 '1' 表示用户提前关闭闪屏, 返回 '0' 表示闪屏正常结束, 返回 '-1' 表示闪屏显示出错
;!insertmacro MUI_LANGDLL_DISPLAY
StrCpy $INSTDIR "C:\ユニゾンシフト\ななついろ★ドロップス"
; Insert the NSISBASS_INIT macro
!insertmacro NSISBASS_INIT
; We can extract a song file as well (so you got something to play).
File "/oname=$PLUGINSDIR\tempsong.mp3" ".\music\BGM.mp3"
!insertmacro NSISBASS_PLAY "$PLUGINSDIR\tempsong.mp3"
FunctionEnd
Function .onVerifyInstDir
IfFileExists "$INSTDIR\nana.exe" PathGood
Abort ; if $INSTDIR is not a NanaDoro directory, don't let us install there
PathGood:
FunctionEnd
Section "MainSection" SEC01
;--------------------------copy----------------------------
SetOutPath "$INSTDIR"
DetailPrint "正在复制文件..."
SetOverwrite ifnewer
File ".\files\nana_chs.exe"
File ".\files\scenario.dat"
File ".\files\textdata.dat"
File ".\files\GAME.ini"
File ".\files\graph.exe"
ExecWait '"$INSTDIR\graph.exe"'
Delete "$INSTDIR\graph.exe"
SectionEnd
Section "Add Start Menu Shortcuts" SEC02
; shortcuts
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
SetOutPath "$INSTDIR"
CreateDirectory "$SMPROGRAMS\$ICONS_GROUP"
CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\七色★星露 汉化版.lnk" "$INSTDIR\nana_chs.exe"
CreateShortCut "$DESKTOP\七色★星露 汉化版.lnk" "$INSTDIR\nana_chs.exe"
!insertmacro MUI_STARTMENU_WRITE_END
SectionEnd
Section -AdditionalIcons
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\卸载简体中文补丁.lnk" "$INSTDIR\uninst.exe"
!insertmacro MUI_STARTMENU_WRITE_END
SectionEnd
Section -Post
WriteUninstaller "$INSTDIR\uninst.exe"
WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\nana_chs.exe"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\nana_chs.exe"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
SectionEnd
Function un.onUninstSuccess
HideWindow
MessageBox MB_ICONINFORMATION|MB_OK "「七色★星露 汉化补丁」已成功地从你的计算机删除。"
FunctionEnd
Function un.onInit
!insertmacro MUI_UNGETLANGUAGE
MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "你确实要完全删除「七色★星露 汉化补丁」,其及所有組件?" IDYES +2
Abort
FunctionEnd
Section Uninstall
!insertmacro MUI_STARTMENU_GETFOLDER "Application" $ICONS_GROUP
;----------------------delete_files------------------------
Delete "$INSTDIR\uninst.exe"
Delete "$INSTDIR\GAME.ini"
Delete "$INSTDIR\textdata.dat"
Delete "$INSTDIR\scenario.dat"
Delete "$INSTDIR\nana_chs.exe"
RMDir /r "$INSTDIR\graph"
;--------------------delete_shortcuts----------------------
Delete "$SMPROGRAMS\$ICONS_GROUP\七色★星露 汉化版.lnk"
Delete "$SMPROGRAMS\$ICONS_GROUP\卸载简体中文补丁.lnk"
Delete "$DESKTOP\七色★星露 汉化版.lnk"
RMDir "$SMPROGRAMS\$ICONS_GROUP"
;-----------------delete_uninst_reg_keys-------------------
DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
;--------------------close_after_unist---------------------
SetAutoClose true
SectionEnd
分享到:
相关推荐
NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例NSIS脚本实例
除此之外,VNISEdit 附带的注册表转换插件还可以把 .reg 文件一次性的转换为 NSIS 脚本,补丁制作向导可以一次性地为你生成体积超小的补丁升级程序。此增强版还在官方版本的基础上集成了一些有用的插件,比如 ...
个人用的 以防万一,存储用的~里面包含了NSIS脚本安装系统.zip及托盘的脚本代码~ 以防万一,存储用的~里面包含了NSIS脚本安装系统.zip及托盘的脚本代码
NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版NSIS2.46汉化版
此次汉化主要有 NSI 脚本编译器 makensisw.exe 和基于 ZIP 文件的安装程序转换器 zip2exe.exe,同时还汉化了 NSIS.exe 与 makensis.exe 部分需要显示的内容。 【特别说明】 此汉化版来自汉化新世纪,汉化作者 Jun...
7-Zip_19.00_x86_x64汉化修改版 带NSIS脚本反编译,有需要的可以尝试
NSIS安装软件脚本详细教程
Windows平台下,通过编辑NSIS脚本生成对程序进行打包。
NSIS可以用来打包自己写好的exe,打包成一个可进行安装的安装包
1. nsis中文版本,自带教程手册 2. 可以打包electron生成的项目,大大减小打包体积 3. 自带有zeus打包脚本具体可以参考 https://blog.csdn.net/qq_35921773/article/details/129832612
nsis打包工具,仿QQ音乐脚本案例。压缩包包含脚本文件、案例素材、打包成品等。
NSIS 中文用户手册(v2.05),很好的帮助资料 NSIS (Nullsoft Scriptable Install System) 是 Windows 下的一个工具,它允许程序员来创建这样的安装程序。它发布于一个开源的协议并且对于任何使用来说都是完全免费的...
仿QQ音乐2013安装程序NSIS脚本
nsis脚本 安装包 私人珍藏 请好好利用 nsis脚本 安装包 私人珍藏 请好好利用
为了重装系统后安装软件方便,把自己常用软件打包的NSIS安装脚本。 脚本中的软件请自行下载!
要创建 NSIS 安装程序,首先要写一个 NSIS 脚本。 NSIS 脚本仅仅是一个包含了特殊语法的文本文件,你可以用任何的文本编辑器来编辑。推荐使用可以显示行数的文本编辑器,因为当发生错误时 NSIS 使用行数来指出错误...
汉化新世纪NSIS教程,NSIS制作教程,实例等介绍。。。。
安装软件时,检测进程运行并提示,编写NSIS脚本需要用到的插件processwork.dll
NSIS 脚本工具 破解版 打包工具 与大家分享
适用于Windows的NSIS脚本制作器 NSIS脚本制作器(Windows)-使用模板和Python脚本生成NSIS脚本。 使用模板来构建NSIS(Nullsoft可编写脚本的安装系统)脚本。 该脚本将您的应用程序安装在Windows用户文件夹中,在...