乐外卖接单软件安装脚本.nsi 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. ; Script generated by the HM NIS Edit Script Wizard.
  2. ; HM NIS Edit Wizard helper defines
  3. !define PRODUCT_NAME "乐外卖接单软件"
  4. !define PRODUCT_VERSION "1.0.5.2"
  5. !define PRODUCT_PUBLISHER "深圳市迅享科技有限公司"
  6. !define PRODUCT_WEB_SITE "https://www.lewaimai.com"
  7. !define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\${PRODUCT_NAME}.exe"
  8. !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
  9. !define PRODUCT_UNINST_ROOT_KEY "HKCU"
  10. ; MUI 1.67 compatible ------
  11. !include "MUI.nsh"
  12. ; MUI Settings
  13. !define MUI_ABORTWARNING
  14. !define MUI_ICON "lewaimai.ico"
  15. !define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
  16. !define MUI_WELCOMEFINISHPAGE_BITMAP "welcome.bmp"
  17. ; Welcome page
  18. !insertmacro MUI_PAGE_WELCOME
  19. ; License page
  20. !insertmacro MUI_PAGE_LICENSE "listen.txt"
  21. ; Directory page
  22. !insertmacro MUI_PAGE_DIRECTORY
  23. ; Instfiles page
  24. !insertmacro MUI_PAGE_INSTFILES
  25. ; Finish page
  26. !define MUI_FINISHPAGE_RUN "$INSTDIR\lewaimai_pos_windows.exe"
  27. !define MUI_FINISHPAGE_SHOWREADME
  28. !define MUI_FINISHPAGE_SHOWREADME_FUNCTION autostart
  29. !define MUI_FINISHPAGE_SHOWREADME_TEXT "开机自动启动"
  30. !insertmacro MUI_PAGE_FINISH
  31. Function autostart
  32. WriteRegStr HKCU Software\Microsoft\Windows\CurrentVersion\Run 乐外卖接单软件 "$INSTDIR\lewaimai_pos_windows.exe"
  33. Functionend
  34. ; Uninstaller pages
  35. !insertmacro MUI_UNPAGE_INSTFILES
  36. ; Language files
  37. !insertmacro MUI_LANGUAGE "SimpChinese"
  38. ; MUI end ------
  39. Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
  40. OutFile "lewaimai_pos_windows_setup_${PRODUCT_VERSION}.exe"
  41. InstallDir "$PROGRAMFILES\lewaimai_pos_windows"
  42. InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
  43. ShowInstDetails show
  44. ShowUnInstDetails show
  45. Section "MainSection" SEC01
  46. SetOutPath "$INSTDIR"
  47. SetOverwrite ifnewer
  48. File /r "..\lewaimai_pos_windows\*"
  49. SectionEnd
  50. Section -AdditionalIcons
  51. WriteIniStr "$INSTDIR\乐外卖官网.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}"
  52. ;桌面快捷方式的文件
  53. CreateShortCut "$DESKTOP\乐外卖接单软件.lnk" "$INSTDIR\lewaimai_pos_windows.exe"
  54. CreateShortCut "$DESKTOP\乐外卖官网.lnk" "$INSTDIR\乐外卖官网.url" "" "$INSTDIR\icon\lewaimai.ico"
  55. ;开始程序里面的文件
  56. CreateDirectory "$SMPROGRAMS\乐外卖接单软件"
  57. CreateShortCut "$SMPROGRAMS\乐外卖接单软件\乐外卖接单软件.lnk" "$INSTDIR\lewaimai_pos_windows.exe"
  58. CreateShortCut "$SMPROGRAMS\乐外卖接单软件\乐外卖官网.lnk" "$INSTDIR\乐外卖官网.url" "" "$INSTDIR\icon\lewaimai.ico"
  59. SectionEnd
  60. Section -Post
  61. WriteUninstaller "$INSTDIR\卸载.exe"
  62. CreateShortCut "$SMPROGRAMS\乐外卖接单软件\卸载.lnk" "$INSTDIR\卸载.exe"
  63. WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\lewaimai_pos_windows.exe"
  64. WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
  65. WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\卸载.exe"
  66. WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\lewaimai_pos_windows.exe"
  67. WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
  68. WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
  69. WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
  70. SectionEnd
  71. Function un.onUninstSuccess
  72. HideWindow
  73. MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) 已成功地从你的计算机移除。"
  74. FunctionEnd
  75. Function .onInit
  76. ;关闭进程
  77. Push $R0
  78. CheckProc:
  79. Push "lewaimai_pos_windows.exe"
  80. ProcessWork::existsprocess
  81. Pop $R0
  82. IntCmp $R0 0 Done
  83. MessageBox MB_OKCANCEL|MB_ICONSTOP "安装程序检测到 ${PRODUCT_NAME} 正在运行。$\r$\n$\r$\n点击 “确定” 强制关闭${PRODUCT_NAME},继续安装。$\r$\n点击 “取消” 退出安装程序。" IDCANCEL Exit
  84. Push "lewaimai_pos_windows.exe"
  85. Processwork::KillProcess
  86. Sleep 1000
  87. Goto CheckProc
  88. Exit:
  89. Abort
  90. Done:
  91. Pop $R0
  92. FunctionEnd
  93. Function un.onInit
  94. MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "您确实要完全移除 $(^Name) ,及其所有的组件?" IDYES +2
  95. Abort
  96. ;检测程序是否运行
  97. FindProcDLL::FindProc "lewaimai_pos_windows.exe"
  98. Pop $R0
  99. IntCmp $R0 1 0 no_run
  100. MessageBox MB_ICONSTOP "卸载程序检测到 ${PRODUCT_NAME} 正在运行,请关闭之后再卸载!"
  101. Quit
  102. no_run:
  103. FunctionEnd
  104. Section Uninstall
  105. RMDir /r "$INSTDIR"
  106. Delete "$DESKTOP\乐外卖接单软件.lnk"
  107. Delete "$DESKTOP\乐外卖官网.lnk"
  108. SetShellVarContext current
  109. Delete "$SMPROGRAMS\乐外卖接单软件\卸载.lnk"
  110. Delete "$SMPROGRAMS\乐外卖接单软件\乐外卖官网.lnk"
  111. Delete "$SMPROGRAMS\乐外卖接单软件\乐外卖接单软件.lnk"
  112. RMDir "$SMPROGRAMS\乐外卖接单软件"
  113. SetShellVarContext all
  114. Delete "$SMPROGRAMS\乐外卖接单软件\卸载.lnk"
  115. Delete "$SMPROGRAMS\乐外卖接单软件\乐外卖官网.lnk"
  116. Delete "$SMPROGRAMS\乐外卖接单软件\乐外卖接单软件.lnk"
  117. RMDir "$SMPROGRAMS\乐外卖接单软件"
  118. DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
  119. DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
  120. DeleteRegValue HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "乐外卖接单软件"
  121. SetAutoClose true
  122. SectionEnd