Inno Setup:在尝试卸载时检测安装程序是否正在运行

时间:2016-07-06 07:10:24

标签: install inno-setup uninstall

您好,我希望我的Inno安装脚本能够在尝试使用unins000.exe卸载程序之前检测我的程序安装程序是否正在运行。

如果用户尝试卸载程序时我的程序安装程序已在运行,则卸载程序应通过弹出消息框警告用户,消息框中包含Setup is running. Please install using it before uninstalling. Really want to Continue?和两个按钮Yes和{{ 1}}。

  • 如果用户按下No,则必须关闭卸载程序(unins000.exe)。

  • 如果用户按下No,则卸载程序(unins000.exe)必须终止程序安装程序(Setup.exe)的进程并继续卸载。

如何在没有任何不稳定的情况下这样做?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

没有办法干净地中止安装。我不会试图杀死它。让它完成。

[Setup]
SetupMutex=MySetupsMutexName

[Code]

function InitializeUninstall(): Boolean;
begin
  while CheckForMutexes('MySetupsMutexName') then
  begin
    MsgBox('Installer is still running', mbError, MB_OK);
  end;
end;