Nsis打包Unity Exe文件(通用)

Nsi 脚本

!include "MUI2.nsh"#使用现代UI
Unicode true #使用Unicode
!define EXENAME "exeName" #定义常量 exe名称
!define SHORTCUT "快捷方式名称" #定义桌面快捷方式的中文名称

Name ${EXENAME} #安装程序的title
OutFile "${EXENAME}_Setup.exe" #安装程序的名称

InstallDir "$Desktop\${EXENAME}" #默认安装路径为桌面\exe名称
  #使用现代UI
  !define MUI_ABORTWARNING 
  !define MUI_WELCOMEFINISHPAGE_BITMAP ${NSISDIR}\Contrib\Graphics\Wizard\orange.bmp
  !define MUI_UNWELCOMEFINISHPAGE_BITMAP ${NSISDIR}\Contrib\Graphics\Wizard\orange-uninstall.bmp

  !insertmacro MUI_PAGE_WELCOME  #欢迎界面
  !insertmacro MUI_PAGE_DIRECTORY #设置安装路径
  !insertmacro MUI_PAGE_INSTFILES #显示安装细节
  !insertmacro MUI_PAGE_FINISH #安装完成

 
  !insertmacro MUI_UNPAGE_WELCOME
  !insertmacro MUI_UNPAGE_CONFIRM
  !insertmacro MUI_UNPAGE_INSTFILES
  !insertmacro MUI_UNPAGE_FINISH

  !insertmacro MUI_LANGUAGE "SimpChinese"#安装界面为中文

Section
    SetOutPath $INSTDIR #安装程序生成后的位置
    File *.exe #打包exe文件
    File *.dll
    File /r MonoBleedingEdge
    File /r "${EXENAME}_Data"
    WriteUninstaller $INSTDIR\Uninstall.exe #生成卸载程序
    CreateDirectory "$SMPROGRAMS\${EXENAME}" #开始程序文件夹内创建文件夹
    CreateShortcut "$DESKTOP\${SHORTCUT}.lnk" "$INSTDIR\${EXENAME}.exe" #桌面生成快捷方式 关联exe文件
    CreateShortcut "$SMPROGRAMS\${EXENAME}\${EXENAME}.lnk" "$INSTDIR\${EXENAME}.exe" #开始菜单 创建快捷方式
    CreateShortcut "$SMPROGRAMS\${EXENAME}\Uninstall.lnk" "$INSTDIR\Uninstall.exe" #开始菜单 创建删除exe的快捷方式
    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${EXENAME}" "DisplayName" "${EXENAME}" #控制面板显示程序名称
    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${EXENAME}" "UninstallString" "$INSTDIR\Uninstall.exe" #设置卸载程序关联的文件
    WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${EXENAME}" "DisplayIcon" "$INSTDIR\${EXENAME}.exe" #控制面板显示程序图标
SectionEnd

Section "Uninstall" #卸载程序的作用
    RMDIR /r $INSTDIR  #移除安装文件内所有内容
    RMDIR /r "$SMPROGRAMS\${EXENAME}" #移除开始菜单\程序名内所有内容
    Delete "$DESKTOP\${SHORTCUT}.lnk" #移除桌面快捷方式
    DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${EXENAME}" #移除注册表内容
SectionEnd

使用

  1. 构建Unity exe(Mono)文件;

  2. 构建nsi文件,填充上述代码

  3. 使用Visula Studio打开
    修改文件编码为在这里插入图片描述

  4. !define EXENAME “exeName” 设置exeName为发布文件内exe启动程序文件名
    !define SHORTCUT “快捷方式名称” 设置桌面快捷方式的中文名称

  5. nsi脚本放置到exe文件中

  6. 打开nsis编译器,拖拽nsi脚本

  7. 等待编辑即可

  8. 编译成功 exe文件夹内生成 exeName_Setup.exe文件

你可能感兴趣的:(其它,unity,游戏引擎,nsis)