Files
mRemoteNG/mRemoteNGInstaller/CustomActions/CustomActions.cs
2020-06-02 09:11:01 +02:00

56 lines
2.0 KiB
C#

using Microsoft.Deployment.WindowsInstaller;
namespace CustomActions
{
public class CustomActions
{
[CustomAction]
public static ActionResult IsMinimumRdpVersionInstalled(Session session)
{
var acceptedRdpKbVariables = new[] { session["RDP80_KB"], session["RDP81_KB"] };
var returnVariable = "MINIMUM_RDP_VERSION_INSTALLED";
var kbInstalledChecker = new KbInstalledChecker(session);
kbInstalledChecker.Execute(acceptedRdpKbVariables, returnVariable);
return ActionResult.Success;
}
[CustomAction]
public static ActionResult IsRdpDtlsUpdateInstalled(Session session)
{
var kb = session["RDP_DTLS_KB"];
var returnVar = "RDP_DTLS_UPDATE_INSTALLED";
var kbInstalledChecker = new KbInstalledChecker(session);
kbInstalledChecker.Execute(kb, returnVar);
return ActionResult.Success;
}
[CustomAction]
public static ActionResult IsLegacyVersionInstalled(Session session)
{
session.Log("Begin IsLegacyVersionInstalled");
var uninstaller = new UninstallNsisVersions();
if (uninstaller.IsLegacymRemoteNgInstalled())
{
session["LEGACYVERSIONINSTALLED"] = "1";
}
else
{
session["LEGACYVERSIONINSTALLED"] = "0";
}
session.Log("End IsLegacyVersionInstalled");
return ActionResult.Success;
}
[CustomAction]
public static ActionResult UninstallLegacyVersion(Session session)
{
session.Log("Begin UninstallLegacyVersion");
var uninstaller = new UninstallNsisVersions();
uninstaller.GetLegacyUninstallString();
uninstaller.UninstallLegacyVersion(true);
session.Log("End UninstallLegacyVersion");
return ActionResult.Success;
}
}
}