//public SCCMAgent oAgent; public CustomTools_SelfUpdate() { InitializeComponent(); try { //Disbale SSL/TLS Errors System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate { return(true); }; //Disable CRL Check System.Net.ServicePointManager.CheckCertificateRevocationList = false; //No check on first start... if (Properties.Settings.Default.LastUpdateCheck == new DateTime(2016, 1, 1)) { Properties.Settings.Default.LastUpdateCheck = DateTime.Now; Properties.Settings.Default.Save(); //Fixed 25.5.2016 return; } if ((DateTime.Now - Properties.Settings.Default.LastUpdateCheck) >= new TimeSpan(2, 0, 0, 0) & Properties.Settings.Default.AutoUpdateEnabled) { //btCheckUpdate.IsEnabled = SCCMCliCtr.Customization.CheckLicense(); string sVersion = FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetEntryAssembly().Location).FileVersion;; RZUpdater oRZUpdate = new RZUpdater(); var oUpdate = oRZUpdate.CheckForUpdateAsync("Client Center for Configuration Manager", sVersion, "Zander Tools").Result; try { Properties.Settings.Default.LastUpdateCheck = DateTime.Now; Properties.Settings.Default.Save(); if (IsUserAnAdmin()) { //Delete an old RZUpdate.exe if (File.Exists(Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "RZUpdate.exe"))) { try { File.Delete(Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "RZUpdate.exe")); } catch { } } if (oUpdate != null) { //Console.WriteLine("New Version: " + oUpdate.SW.ProductVersion); ExtractSaveResource("AgentActionTools.RZUpdate.exe", Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "RZUpdate.exe")); if (System.Windows.MessageBox.Show("Do you want to install Version: " + oUpdate.SW.ProductVersion, "Update available", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { try { Process.Start(Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "RZUpdate.exe"), "\"Client Center for Configuration Manager\" \"" + sVersion + "\" \"Zander Tools\""); Process.GetCurrentProcess().Kill(); } catch { System.Windows.MessageBox.Show("updated failed. Please run ClientCenter with Admin rights to install updates... ", "Failed", MessageBoxButton.OK, MessageBoxImage.Error); } } } } else { if (oUpdate != null) { System.Windows.MessageBox.Show("An newer Version is available: " + oUpdate.SW.ProductVersion + ". You have to start ClientCenter as Admin to install the update", "Update available", MessageBoxButton.OK, MessageBoxImage.Information); } } } catch { } } } catch { } }
private void btCheckUpdate_Click(object sender, RoutedEventArgs e) { try { //string sVersion = System.Reflection.Assembly.GetEntryAssembly().GetName().Version.ToString(); string sVersion = FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetEntryAssembly().Location).FileVersion;; RZUpdater oRZUpdate = new RZUpdater(); var oUpdate = oRZUpdate.CheckForUpdateAsync("Client Center for Configuration Manager", sVersion, "Zander Tools").Result; try { Properties.Settings.Default.LastUpdateCheck = DateTime.Now; Properties.Settings.Default.Save(); if (IsUserAnAdmin()) { if (oUpdate != null) { //Console.WriteLine("New Version: " + oUpdate.SW.ProductVersion); ExtractSaveResource("AgentActionTools.RZUpdate.exe", Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "RZUpdate.exe")); if (System.Windows.MessageBox.Show("Do you want to install Version: " + oUpdate.SW.ProductVersion, "Update available", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes) { /*new Thread(() => * { * Thread.CurrentThread.IsBackground = true; * if (oUpdate.Download()) * { * if (oUpdate.Install(true)) * { * } * else * { * System.Windows.MessageBox.Show("Installation failed..."); * } * } * }).Start();*/ Process.Start(Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "RZUpdate.exe"), "SCCMCliCtr"); Process.GetCurrentProcess().Kill(); } } else { System.Windows.MessageBox.Show("No update available...", "Update", MessageBoxButton.OK, MessageBoxImage.Information); } } else { if (oUpdate != null) { System.Windows.MessageBox.Show("An newer Version is available: " + oUpdate.SW.ProductVersion + ". You have to start ClientCenter as Admin to install the update", "Update available", MessageBoxButton.OK, MessageBoxImage.Information); } } } catch { } /* * //Start only if updater.exe is not yet running... * if (Process.GetProcessesByName("updater.exe").Count() == 0) * { * Process.Start("updater.exe", "/checknow"); * }*/ } catch { } }