Created Windows 7 Sunset branch
This commit is contained in:
parent
6936444f26
commit
0e1e3a5f2f
|
@ -1,6 +1,7 @@
|
|||
// Copyright (c) .NET Foundation. All rights reserved.
|
||||
// Licensed under the MIT license. See LICENSE file in the project root for details.
|
||||
|
||||
using Microsoft.Win32;
|
||||
using OpenLiveWriter.CoreServices;
|
||||
using OpenLiveWriter.CoreServices.ResourceDownloading;
|
||||
using Squirrel;
|
||||
|
@ -10,6 +11,7 @@ using System.Diagnostics;
|
|||
using System.Globalization;
|
||||
using System.Reflection;
|
||||
using System.Threading;
|
||||
using System.Windows.Forms;
|
||||
using System.Xml;
|
||||
|
||||
namespace OpenLiveWriter.PostEditor.Updates
|
||||
|
@ -20,13 +22,38 @@ namespace OpenLiveWriter.PostEditor.Updates
|
|||
|
||||
public static void CheckforUpdates(bool forceCheck = false)
|
||||
{
|
||||
var checkNow = forceCheck || UpdateSettings.AutoUpdate;
|
||||
var downloadUrl = UpdateSettings.CheckForBetaUpdates ?
|
||||
UpdateSettings.BetaUpdateDownloadUrl : UpdateSettings.UpdateDownloadUrl;
|
||||
var result = System.Windows.Forms.DialogResult.No;
|
||||
|
||||
// Schedule Open Live Writer 10 seconds after the launch
|
||||
var delayUpdate = new DelayUpdateHelper(UpdateOpenLiveWriter(downloadUrl, checkNow), UPDATELAUNCHDELAY);
|
||||
delayUpdate.StartBackgroundUpdate("Background OpenLiveWriter application update");
|
||||
if (UpdateSettings.AutoUpdate && HasNet462OrLater())
|
||||
{
|
||||
result = MessageBox.Show("An update for OpenLiveWriter may be available. Would you like to check for it?"
|
||||
+ Environment.NewLine
|
||||
+ Environment.NewLine
|
||||
+ "Select Cancel to permanently cancel update checks."
|
||||
, "Update", MessageBoxButtons.YesNoCancel);
|
||||
|
||||
if (result == System.Windows.Forms.DialogResult.Yes)
|
||||
{
|
||||
var checkNow = forceCheck || UpdateSettings.AutoUpdate;
|
||||
var downloadUrl = UpdateSettings.CheckForBetaUpdates ?
|
||||
UpdateSettings.BetaUpdateDownloadUrl : UpdateSettings.UpdateDownloadUrl;
|
||||
|
||||
// Schedule Open Live Writer 10 seconds after the launch
|
||||
var delayUpdate = new DelayUpdateHelper(UpdateOpenLiveWriter(downloadUrl, checkNow), UPDATELAUNCHDELAY);
|
||||
delayUpdate.StartBackgroundUpdate("Background OpenLiveWriter application update");
|
||||
} else if (result == System.Windows.Forms.DialogResult.Cancel) {
|
||||
MessageBox.Show(@"Attempting to disable AutoUpdate."
|
||||
+ Environment.NewLine
|
||||
+ Environment.NewLine
|
||||
+ "AutoUpdate can be turned on and off by setting this registry key: " +
|
||||
@"HKEY_CURRENT_USER\Software\OpenLiveWriter\Updates\AutoUpdate to 0", "Disabling AutoUpdate", MessageBoxButtons.OK);
|
||||
UpdateSettings.AutoUpdate = false;
|
||||
|
||||
//Manually writing out values since they're not always persisted
|
||||
Registry.SetValue(@"HKEY_CURRENT_USER\Software\OpenLiveWriter\Updates", "AutoUpdate", 0);
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
private static ThreadStart UpdateOpenLiveWriter(string downloadUrl, bool checkNow)
|
||||
|
@ -50,6 +77,25 @@ namespace OpenLiveWriter.PostEditor.Updates
|
|||
};
|
||||
}
|
||||
|
||||
private static bool HasNet462OrLater()
|
||||
{
|
||||
const string subkey = @"SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\";
|
||||
using (RegistryKey ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey(subkey))
|
||||
{
|
||||
if (ndpKey != null && ndpKey.GetValue("Release") != null && (int)ndpKey.GetValue("Release") >= 394254) //.NET 4.6.1 or later is installed
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
Trace.WriteLine("Old operating system or .NET version, skipping update.");
|
||||
Trace.WriteLine("Windows Version: " + Environment.OSVersion.VersionString);
|
||||
Trace.WriteLine(".NET NPD version number: " + ndpKey);
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private const int UPDATELAUNCHDELAY = 10000;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1 +1 @@
|
|||
0.6.0.0
|
||||
0.6.0.1
|
||||
|
|
Loading…
Reference in New Issue