创建互斥防止安装程序重复运行

优质
小牛编辑
143浏览
2023-12-01
以下脚本可以防止安装程序重复运行:

Function .onInit
InitPluginsDir
  ;创建互斥防止重复运行
  System::Call 'kernel32::CreateMutexA(i 0, i 0, t "WinSnap_installer") i .r1 ?e'
  Pop $R0
  StrCmp $R0 0 +3
    MessageBox MB_OK|MB_ICONEXCLAMATION "有一个 WinSnap 安装向导已经运行!"
    Abort
FunctionEnd

重复运行后的提示如图: