0
我想在運行時停止卸載應用程序。我想通過visual studio安裝和部署來完成它。 我在安裝程序類中添加了下面的代碼,然後在動作列表中調用,但它不起作用。如何防止應用程序運行時卸載?
public static bool ApplicationIsBusy()
{
Process application = null;
foreach (var process in Process.GetProcesses())
{
if (!process.ProcessName.Contains("applicationname")) continue;
application = process;
break;
}
if (application != null && application.Responding)
{
return true;
}
else
{
return false;
}
}
public override void Uninstall(IDictionary savedState)
{
base. Uninstall(savedState);
if (ApplicationIsBusy()==true)
throw new ApplicationException("Prevent uninstall while application busy.");
}
protected override void OnBeforeUninstall(IDictionary savedState)
{
base.OnBeforeUninstall(savedState);
if (ApplicationIsBusy()==true)
throw new ApplicationException("Prevent uninstall while application busy.");
}