|
@@ -93,34 +93,42 @@ Function un.onUninstSuccess
|
|
|
FunctionEnd
|
|
FunctionEnd
|
|
|
|
|
|
|
|
Function .onInit
|
|
Function .onInit
|
|
|
- ;关闭进程
|
|
|
|
|
Push $R0
|
|
Push $R0
|
|
|
CheckProc:
|
|
CheckProc:
|
|
|
- Push "zhipuzi_pos_windows.exe"
|
|
|
|
|
- ProcessWork::existsprocess
|
|
|
|
|
|
|
+ nsExec::Exec 'cmd /C tasklist /FI "IMAGENAME eq zhipuzi_pos_windows.exe" | findstr /I "zhipuzi_pos_windows.exe"'
|
|
|
Pop $R0
|
|
Pop $R0
|
|
|
- IntCmp $R0 0 Done
|
|
|
|
|
- MessageBox MB_OKCANCEL|MB_ICONSTOP "安装程序检测到 ${PRODUCT_NAME} 正在运行。$\r$\n$\r$\n点击 “确定” 强制关闭${PRODUCT_NAME},继续安装。$\r$\n点击 “取消” 退出安装程序。" IDCANCEL Exit
|
|
|
|
|
- Push "zhipuzi_pos_windows.exe"
|
|
|
|
|
- Processwork::KillProcess
|
|
|
|
|
|
|
+ IntCmp $R0 0 KillProc Done
|
|
|
|
|
+ Goto Done
|
|
|
|
|
+ KillProc:
|
|
|
|
|
+ MessageBox MB_OKCANCEL|MB_ICONSTOP "安装程序检测到 ${PRODUCT_NAME} 正在运行。$\r$\n$\r$\n点击 “确定” 强制关闭 ${PRODUCT_NAME} 并继续安装。$\r$\n点击 “取消” 退出安装程序。" IDCANCEL CancelInstall
|
|
|
|
|
+ nsExec::Exec 'cmd /C taskkill /IM "zhipuzi_pos_windows.exe" /F'
|
|
|
|
|
+ Pop $R1
|
|
|
Sleep 1000
|
|
Sleep 1000
|
|
|
Goto CheckProc
|
|
Goto CheckProc
|
|
|
- Exit:
|
|
|
|
|
|
|
+ CancelInstall:
|
|
|
Abort
|
|
Abort
|
|
|
- Done:
|
|
|
|
|
|
|
+ Done:
|
|
|
Pop $R0
|
|
Pop $R0
|
|
|
|
|
+ Return
|
|
|
FunctionEnd
|
|
FunctionEnd
|
|
|
|
|
|
|
|
Function un.onInit
|
|
Function un.onInit
|
|
|
- MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "您确实要完全移除 $(^Name) ,及其所有的组件?" IDYES +2
|
|
|
|
|
- Abort
|
|
|
|
|
- ;检测程序是否运行
|
|
|
|
|
- FindProcDLL::FindProc "zhipuzi_pos_windows.exe"
|
|
|
|
|
- Pop $R0
|
|
|
|
|
- IntCmp $R0 1 0 no_run
|
|
|
|
|
- MessageBox MB_ICONSTOP "卸载程序检测到 ${PRODUCT_NAME} 正在运行,请关闭之后再卸载!"
|
|
|
|
|
- Quit
|
|
|
|
|
- no_run:
|
|
|
|
|
|
|
+ Push $R0
|
|
|
|
|
+ CheckProc:
|
|
|
|
|
+ nsExec::Exec 'cmd /C tasklist /FI "IMAGENAME eq zhipuzi_pos_windows.exe" | findstr /I "zhipuzi_pos_windows.exe"'
|
|
|
|
|
+ Pop $R0
|
|
|
|
|
+ IntCmp $R0 0 Running NoRun
|
|
|
|
|
+ Running:
|
|
|
|
|
+ MessageBox MB_ICONQUESTION|MB_YESNO "卸载程序检测到 ${PRODUCT_NAME} 正在运行。$\r$\n点击 “是” 强制关闭进程并继续卸载。$\r$\n点击 “否” 取消卸载。" IDNO CancelUninst
|
|
|
|
|
+ nsExec::Exec 'cmd /C taskkill /IM "zhipuzi_pos_windows.exe" /F'
|
|
|
|
|
+ Pop $R1
|
|
|
|
|
+ Sleep 1000
|
|
|
|
|
+ Goto CheckProc
|
|
|
|
|
+ NoRun:
|
|
|
|
|
+ Pop $R0
|
|
|
|
|
+ Return
|
|
|
|
|
+ CancelUninst:
|
|
|
|
|
+ Abort
|
|
|
FunctionEnd
|
|
FunctionEnd
|
|
|
|
|
|
|
|
Section Uninstall
|
|
Section Uninstall
|