public static bool DeleteRegistryKey(UninstallItem item) { var registryKey = RegistryKey.OpenBaseKey(item.RegistryHive, item.RegistryView); registryKey.DeleteSubKeyTree(item.RegistryPath, true); return(true); }
public static void ExeccuteUninstall(UninstallItem item) { var command = item.UninstallString.Trim(); var fileName = command; var arguments = string.Empty; if (command.StartsWith("\"")) { var index = command.IndexOf("\"", 1, StringComparison.InvariantCultureIgnoreCase) + 1; fileName = command.Substring(0, index).Trim(); arguments = command.Substring(index, command.Length - index).Trim(); } else if (command.Contains(" ")) { if (!File.Exists(fileName)) { var index = command.IndexOf(" ", 1, StringComparison.InvariantCultureIgnoreCase) + 1; fileName = command.Substring(0, index).Trim(); arguments = command.Substring(index, command.Length - index).Trim(); } } Process.Start(new ProcessStartInfo(fileName) { Arguments = arguments, WorkingDirectory = Environment.SystemDirectory, Verb = "open" }); }
public Form1() { InitializeComponent(); uninstall = new UninstallItem(); button1.Click += button1_Click; }