Skip to content

Commit

Permalink
Update framework installation check
Browse files Browse the repository at this point in the history
  • Loading branch information
BlythMeister committed Dec 6, 2017
1 parent 65de66d commit 0a7c884
Showing 1 changed file with 38 additions and 6 deletions.
44 changes: 38 additions & 6 deletions src/ServiceBouncer/MainForm.cs
Expand Up @@ -41,17 +41,49 @@ private void RefreshTimerTicked(object sender, EventArgs e)

private void FormLoaded(object sender, EventArgs e)
{
Reload();

var validFramework = true;
#if NET45
var requiredFramework = "4.5";
using (var ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey("SOFTWARE\\Microsoft\\NET Framework Setup\\NDP\\v4\\Full\\"))
{
var releaseKey = Convert.ToInt32(ndpKey.GetValue("Release"));
if (releaseKey < 394254)
if (ndpKey == null)
{
validFramework = false;
}
else
{
MessageBox.Show("ServiceBouncer required .net 4.6.1 or higher to be installed", "Framework Upgrade Required", MessageBoxButtons.OK, MessageBoxIcon.Error);
Application.Exit();
var releaseKey = Convert.ToInt32(ndpKey.GetValue("Release"));
if (releaseKey < 378389)
{
validFramework = false;
}
}
}
#elif NET461
var requiredFramework = "4.6.1";
using (var ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey("SOFTWARE\\Microsoft\\NET Framework Setup\\NDP\\v4\\Full\\"))
{
if (ndpKey == null)
{
validFramework = false;
}
else
{
var releaseKey = Convert.ToInt32(ndpKey.GetValue("Release"));
if (releaseKey < 394254)
{
validFramework = false;
}
}
}
#endif
if (!validFramework)
{
MessageBox.Show($"ServiceBouncer required .net {requiredFramework} or higher to be installed", "Framework Upgrade Required", MessageBoxButtons.OK, MessageBoxIcon.Error);
Application.Exit();
}

Reload();
}

private void FormActivated(object sender, EventArgs e)
Expand Down

0 comments on commit 0a7c884

Please sign in to comment.