RDP version 8 Client & code clean up

This commit is contained in:
Kaim, Sean M
2016-04-29 17:05:25 -04:00
parent 160b0101a9
commit b0cef15fa2
2 changed files with 205 additions and 196 deletions

View File

@@ -18,7 +18,14 @@ namespace mRemoteNG.Connection.Protocol.RDP
public class ProtocolRDP : ProtocolBase
{
#region Private Declarations
private MsRdpClient6NotSafeForScripting _rdpClient;
/* RDP v8 requires Windows 7 with:
* https://support.microsoft.com/en-us/kb/2592687
* OR
* https://support.microsoft.com/en-us/kb/2923545
*
* Windows 8+ support RDP v8 out of the box.
*/
private MsRdpClient8NotSafeForScripting _rdpClient;
private Version _rdpVersion;
private ConnectionInfo _connectionInfo;
private bool _loginComplete;
@@ -68,13 +75,13 @@ namespace mRemoteNG.Connection.Protocol.RDP
return ;
}
Debug.Assert(System.Convert.ToBoolean(_rdpClient.SecuredSettingsEnabled));
MSTSCLib.IMsRdpClientSecuredSettings msRdpClientSecuredSettings = _rdpClient.SecuredSettings2;
Debug.Assert(Convert.ToBoolean(_rdpClient.SecuredSettingsEnabled));
IMsRdpClientSecuredSettings msRdpClientSecuredSettings = _rdpClient.SecuredSettings2;
msRdpClientSecuredSettings.KeyboardHookMode = 1; // Apply key combinations at the remote server.
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpSetRedirectKeysFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpSetRedirectKeysFailed + Environment.NewLine + ex.Message, true);
}
}
}
@@ -83,7 +90,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
#region Constructors
public ProtocolRDP()
{
Control = new AxMsRdpClient6NotSafeForScripting();
Control = new AxMsRdpClient8NotSafeForScripting();
}
#endregion
@@ -101,9 +108,10 @@ namespace mRemoteNG.Connection.Protocol.RDP
while (!Control.Created)
{
Thread.Sleep(0);
System.Windows.Forms.Application.DoEvents();
Application.DoEvents();
}
_rdpClient = (MsRdpClient6NotSafeForScripting)((AxMsRdpClient6NotSafeForScripting)Control).GetOcx();
_rdpClient = (MsRdpClient8NotSafeForScripting)((AxMsRdpClient8NotSafeForScripting)Control).GetOcx();
}
catch (System.Runtime.InteropServices.COMException ex)
{
@@ -114,39 +122,39 @@ namespace mRemoteNG.Connection.Protocol.RDP
_rdpVersion = new Version(_rdpClient.Version);
_rdpClient.Server = this._connectionInfo.Hostname;
this.SetCredentials();
this.SetResolution();
this._rdpClient.FullScreenTitle = this._connectionInfo.Name;
_rdpClient.Server = _connectionInfo.Hostname;
SetCredentials();
SetResolution();
_rdpClient.FullScreenTitle = _connectionInfo.Name;
//not user changeable
_rdpClient.AdvancedSettings2.GrabFocusOnConnect = true;
_rdpClient.AdvancedSettings3.EnableAutoReconnect = true;
_rdpClient.AdvancedSettings3.MaxReconnectAttempts = System.Convert.ToInt32(My.Settings.Default.RdpReconnectionCount);
_rdpClient.AdvancedSettings3.MaxReconnectAttempts = Convert.ToInt32(My.Settings.Default.RdpReconnectionCount);
_rdpClient.AdvancedSettings2.keepAliveInterval = 60000; //in milliseconds (10.000 = 10 seconds)
_rdpClient.AdvancedSettings5.AuthenticationLevel = 0;
_rdpClient.AdvancedSettings2.EncryptionEnabled = 1;
_rdpClient.AdvancedSettings2.overallConnectionTimeout = 20;
_rdpClient.AdvancedSettings2.BitmapPeristence = System.Convert.ToInt32(this._connectionInfo.CacheBitmaps);
_rdpClient.AdvancedSettings2.BitmapPeristence = Convert.ToInt32(_connectionInfo.CacheBitmaps);
if (_rdpVersion >= Versions.RDC61)
{
_rdpClient.AdvancedSettings7.EnableCredSspSupport = _connectionInfo.UseCredSsp;
}
this.SetUseConsoleSession();
this.SetPort();
SetUseConsoleSession();
SetPort();
RedirectKeys = _connectionInfo.RedirectKeys;
this.SetRedirection();
this.SetAuthenticationLevel();
SetRedirection();
SetAuthenticationLevel();
SetLoadBalanceInfo();
this.SetRdGateway();
SetRdGateway();
_rdpClient.ColorDepth = System.Convert.ToInt32(Conversion.Int(this._connectionInfo.Colors));
this.SetPerformanceFlags();
_rdpClient.ColorDepth = Convert.ToInt32(Conversion.Int(_connectionInfo.Colors));
SetPerformanceFlags();
_rdpClient.ConnectingText = My.Language.strConnecting;
@@ -156,7 +164,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpSetPropsFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpSetPropsFailed + Environment.NewLine + ex.Message, true);
return false;
}
}
@@ -174,7 +182,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpConnectionOpenFailed + Environment.NewLine + ex.Message);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpConnectionOpenFailed + Environment.NewLine + ex.Message);
}
return false;
@@ -188,7 +196,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpDisconnectFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpDisconnectFailed + Environment.NewLine + ex.Message, true);
base.Close();
}
}
@@ -197,11 +205,11 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
try
{
this.Fullscreen = !this.Fullscreen;
Fullscreen = !Fullscreen;
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpToggleFullscreenFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpToggleFullscreenFailed + Environment.NewLine + ex.Message, true);
}
}
@@ -209,11 +217,11 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
try
{
this.SmartSize = !this.SmartSize;
SmartSize = !SmartSize;
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpToggleSmartSizeFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpToggleSmartSizeFailed + Environment.NewLine + ex.Message, true);
}
}
@@ -228,7 +236,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpFocusFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpFocusFailed + Environment.NewLine + ex.Message, true);
}
}
@@ -310,7 +318,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
size = Screen.FromControl(Control).Bounds.Size;
}
IMsRdpClient8 msRdpClient8 = (IMsRdpClient8)_rdpClient;
IMsRdpClient8 msRdpClient8 = _rdpClient;
msRdpClient8.Reconnect((uint)size.Width, (uint)size.Height);
}
@@ -328,7 +336,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, My.Language.strRdpGatewayIsSupported, true);
}
if (!(_connectionInfo.RDGatewayUsageMethod == RDGatewayUsageMethod.Never))
if (_connectionInfo.RDGatewayUsageMethod != RDGatewayUsageMethod.Never)
{
_rdpClient.TransportSettings.GatewayUsageMethod = (uint)_connectionInfo.RDGatewayUsageMethod;
_rdpClient.TransportSettings.GatewayHostname = _connectionInfo.RDGatewayHostname;
@@ -386,12 +394,12 @@ namespace mRemoteNG.Connection.Protocol.RDP
if (_rdpVersion >= Versions.RDC61)
{
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, string.Format(My.Language.strRdpSetConsoleSwitch, "6.1"), true);
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, string.Format(My.Language.strRdpSetConsoleSwitch, _rdpVersion), true);
//_rdpClient.AdvancedSettings7.ConnectToAdministerServer = value;
}
else
{
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, string.Format(My.Language.strRdpSetConsoleSwitch, "6.0"), true);
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, string.Format(My.Language.strRdpSetConsoleSwitch, _rdpVersion), true);
_rdpClient.AdvancedSettings2.ConnectToServerConsole = value;
}
}
@@ -416,13 +424,13 @@ namespace mRemoteNG.Connection.Protocol.RDP
if (string.IsNullOrEmpty(userName))
{
if ((string) My.Settings.Default.EmptyCredentials == "windows")
if (My.Settings.Default.EmptyCredentials == "windows")
{
_rdpClient.UserName = Environment.UserName;
}
else if ((string) My.Settings.Default.EmptyCredentials == "custom")
else if (My.Settings.Default.EmptyCredentials == "custom")
{
_rdpClient.UserName = System.Convert.ToString(My.Settings.Default.DefaultUsername);
_rdpClient.UserName = Convert.ToString(My.Settings.Default.DefaultUsername);
}
}
else
@@ -432,11 +440,11 @@ namespace mRemoteNG.Connection.Protocol.RDP
if (string.IsNullOrEmpty(password))
{
if ((string) My.Settings.Default.EmptyCredentials == "custom")
if (My.Settings.Default.EmptyCredentials == "custom")
{
if (My.Settings.Default.DefaultPassword != "")
{
_rdpClient.AdvancedSettings2.ClearTextPassword = Security.Crypt.Decrypt(System.Convert.ToString(My.Settings.Default.DefaultPassword), App.Info.GeneralAppInfo.EncryptionKey);
_rdpClient.AdvancedSettings2.ClearTextPassword = Security.Crypt.Decrypt(Convert.ToString(My.Settings.Default.DefaultPassword), App.Info.GeneralAppInfo.EncryptionKey);
}
}
}
@@ -447,13 +455,13 @@ namespace mRemoteNG.Connection.Protocol.RDP
if (string.IsNullOrEmpty(domain))
{
if ((string) My.Settings.Default.EmptyCredentials == "windows")
if (My.Settings.Default.EmptyCredentials == "windows")
{
_rdpClient.Domain = Environment.UserDomainName;
}
else if ((string) My.Settings.Default.EmptyCredentials == "custom")
else if (My.Settings.Default.EmptyCredentials == "custom")
{
_rdpClient.Domain = System.Convert.ToString(My.Settings.Default.DefaultDomain);
_rdpClient.Domain = Convert.ToString(My.Settings.Default.DefaultDomain);
}
}
else
@@ -463,7 +471,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpSetCredentialsFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpSetCredentialsFailed + Environment.NewLine + ex.Message, true);
}
}
@@ -471,7 +479,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
try
{
if ((this.Force & Connection.ConnectionInfo.Force.Fullscreen) == Connection.ConnectionInfo.Force.Fullscreen)
if ((Force & ConnectionInfo.Force.Fullscreen) == ConnectionInfo.Force.Fullscreen)
{
_rdpClient.FullScreen = true;
_rdpClient.DesktopWidth = Screen.FromControl(frmMain.Default).Bounds.Width;
@@ -480,12 +488,12 @@ namespace mRemoteNG.Connection.Protocol.RDP
return;
}
if ((this.InterfaceControl.Info.Resolution == RDPResolutions.FitToWindow) || (this.InterfaceControl.Info.Resolution == RDPResolutions.SmartSize))
if ((InterfaceControl.Info.Resolution == RDPResolutions.FitToWindow) || (InterfaceControl.Info.Resolution == RDPResolutions.SmartSize))
{
_rdpClient.DesktopWidth = InterfaceControl.Size.Width;
_rdpClient.DesktopHeight = InterfaceControl.Size.Height;
}
else if (this.InterfaceControl.Info.Resolution == RDPResolutions.Fullscreen)
else if (InterfaceControl.Info.Resolution == RDPResolutions.Fullscreen)
{
_rdpClient.FullScreen = true;
_rdpClient.DesktopWidth = Screen.FromControl(frmMain.Default).Bounds.Width;
@@ -500,7 +508,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpSetResolutionFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpSetResolutionFailed + Environment.NewLine + ex.Message, true);
}
}
@@ -515,7 +523,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpSetPortFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpSetPortFailed + Environment.NewLine + ex.Message, true);
}
}
@@ -523,15 +531,15 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
try
{
_rdpClient.AdvancedSettings2.RedirectDrives = this._connectionInfo.RedirectDiskDrives;
_rdpClient.AdvancedSettings2.RedirectPorts = this._connectionInfo.RedirectPorts;
_rdpClient.AdvancedSettings2.RedirectPrinters = this._connectionInfo.RedirectPrinters;
_rdpClient.AdvancedSettings2.RedirectSmartCards = this._connectionInfo.RedirectSmartCards;
_rdpClient.SecuredSettings2.AudioRedirectionMode = System.Convert.ToInt32(Conversion.Int(this._connectionInfo.RedirectSound));
_rdpClient.AdvancedSettings2.RedirectDrives = _connectionInfo.RedirectDiskDrives;
_rdpClient.AdvancedSettings2.RedirectPorts = _connectionInfo.RedirectPorts;
_rdpClient.AdvancedSettings2.RedirectPrinters = _connectionInfo.RedirectPrinters;
_rdpClient.AdvancedSettings2.RedirectSmartCards = _connectionInfo.RedirectSmartCards;
_rdpClient.SecuredSettings2.AudioRedirectionMode = Convert.ToInt32(Conversion.Int(_connectionInfo.RedirectSound));
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpSetRedirectionFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpSetRedirectionFailed + Environment.NewLine + ex.Message, true);
}
}
@@ -540,31 +548,31 @@ namespace mRemoteNG.Connection.Protocol.RDP
try
{
int pFlags = 0;
if (this._connectionInfo.DisplayThemes == false)
if (_connectionInfo.DisplayThemes == false)
{
pFlags += System.Convert.ToInt32(Conversion.Int(ProtocolRDP.RDPPerformanceFlags.DisableThemes));
pFlags += Convert.ToInt32(Conversion.Int(RDPPerformanceFlags.DisableThemes));
}
if (this._connectionInfo.DisplayWallpaper == false)
if (_connectionInfo.DisplayWallpaper == false)
{
pFlags += System.Convert.ToInt32(Conversion.Int(ProtocolRDP.RDPPerformanceFlags.DisableWallpaper));
pFlags += Convert.ToInt32(Conversion.Int(RDPPerformanceFlags.DisableWallpaper));
}
if (this._connectionInfo.EnableFontSmoothing)
if (_connectionInfo.EnableFontSmoothing)
{
pFlags += System.Convert.ToInt32(Conversion.Int(ProtocolRDP.RDPPerformanceFlags.EnableFontSmoothing));
pFlags += Convert.ToInt32(Conversion.Int(RDPPerformanceFlags.EnableFontSmoothing));
}
if (this._connectionInfo.EnableDesktopComposition)
if (_connectionInfo.EnableDesktopComposition)
{
pFlags += System.Convert.ToInt32(Conversion.Int(ProtocolRDP.RDPPerformanceFlags.EnableDesktopComposition));
pFlags += Convert.ToInt32(Conversion.Int(RDPPerformanceFlags.EnableDesktopComposition));
}
_rdpClient.AdvancedSettings2.PerformanceFlags = pFlags;
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpSetPerformanceFlagsFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpSetPerformanceFlagsFailed + Environment.NewLine + ex.Message, true);
}
}
@@ -572,11 +580,11 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
try
{
_rdpClient.AdvancedSettings5.AuthenticationLevel = (uint)this._connectionInfo.RDPAuthenticationLevel;
_rdpClient.AdvancedSettings5.AuthenticationLevel = (uint)_connectionInfo.RDPAuthenticationLevel;
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpSetAuthenticationLevelFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpSetAuthenticationLevelFailed + Environment.NewLine + ex.Message, true);
}
}
@@ -609,7 +617,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpSetEventHandlersFailed + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpSetEventHandlersFailed + Environment.NewLine + ex.Message, true);
}
}
#endregion
@@ -617,15 +625,15 @@ namespace mRemoteNG.Connection.Protocol.RDP
#region Private Events & Handlers
private void RDPEvent_OnFatalError(int errorCode)
{
Event_ErrorOccured(this, System.Convert.ToString(errorCode));
Event_ErrorOccured(this, Convert.ToString(errorCode));
}
private void RDPEvent_OnDisconnected(int discReason)
{
const int UI_ERR_NORMAL_DISCONNECT = 0xB08;
if (!(discReason == UI_ERR_NORMAL_DISCONNECT))
if (discReason != UI_ERR_NORMAL_DISCONNECT)
{
string reason = _rdpClient.GetErrorDescription((uint)discReason, (System.UInt32) _rdpClient.ExtendedDisconnectReason);
string reason = _rdpClient.GetErrorDescription((uint)discReason, (uint) _rdpClient.ExtendedDisconnectReason);
Event_Disconnected(this, discReason + "\r\n" + reason);
}
@@ -669,18 +677,18 @@ namespace mRemoteNG.Connection.Protocol.RDP
#endregion
#region Public Events & Handlers
public delegate void LeaveFullscreenEventHandler(ProtocolRDP sender, System.EventArgs e);
public delegate void LeaveFullscreenEventHandler(ProtocolRDP sender, EventArgs e);
private LeaveFullscreenEventHandler LeaveFullscreenEvent;
public event LeaveFullscreenEventHandler LeaveFullscreen
{
add
{
LeaveFullscreenEvent = (LeaveFullscreenEventHandler) System.Delegate.Combine(LeaveFullscreenEvent, value);
LeaveFullscreenEvent = (LeaveFullscreenEventHandler)Delegate.Combine(LeaveFullscreenEvent, value);
}
remove
{
LeaveFullscreenEvent = (LeaveFullscreenEventHandler) System.Delegate.Remove(LeaveFullscreenEvent, value);
LeaveFullscreenEvent = (LeaveFullscreenEventHandler)Delegate.Remove(LeaveFullscreenEvent, value);
}
}
#endregion
@@ -803,7 +811,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
else
{
return new Rectangle(0, 0, System.Convert.ToInt32(resolutionParts[0]), System.Convert.ToInt32(resolutionParts[1]));
return new Rectangle(0, 0, Convert.ToInt32(resolutionParts[0]), Convert.ToInt32(resolutionParts[1]));
}
}
#endregion
@@ -814,6 +822,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
public static Version RDC61 = new Version(6, 0, 6001);
public static Version RDC70 = new Version(6, 1, 7600);
public static Version RDC80 = new Version(6, 2, 9200);
public static Version RDC81 = new Version(6, 3, 9600);
}
#region Fatal Errors
@@ -846,7 +855,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg, My.Language.strRdpErrorGetFailure + Environment.NewLine + ex.Message, true);
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, My.Language.strRdpErrorGetFailure + Environment.NewLine + ex.Message, true);
return string.Format(My.Language.strRdpErrorUnknown, id);
}
}
@@ -856,7 +865,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
#region Reconnect Stuff
public void tmrReconnect_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
bool srvReady = Tools.PortScan.Scanner.IsPortOpen(_connectionInfo.Hostname, System.Convert.ToString(_connectionInfo.Port));
bool srvReady = Tools.PortScan.Scanner.IsPortOpen(_connectionInfo.Hostname, Convert.ToString(_connectionInfo.Port));
ReconnectGroup.ServerReady = srvReady;

View File

@@ -39,7 +39,7 @@ namespace mRemoteNG.UI.Window
private void InitializeComponent()
{
this.pnlCheck1 = new System.Windows.Forms.Panel();
this.Load += new System.EventHandler(ComponentsCheck_Load);
this.Load += new EventHandler(ComponentsCheck_Load);
this.txtCheck1 = new System.Windows.Forms.TextBox();
this.lblCheck1 = new System.Windows.Forms.Label();
this.pbCheck1 = new System.Windows.Forms.PictureBox();
@@ -60,9 +60,9 @@ namespace mRemoteNG.UI.Window
this.lblCheck5 = new System.Windows.Forms.Label();
this.pbCheck5 = new System.Windows.Forms.PictureBox();
this.btnCheckAgain = new System.Windows.Forms.Button();
this.btnCheckAgain.Click += new System.EventHandler(this.btnCheckAgain_Click);
this.btnCheckAgain.Click += new EventHandler(this.btnCheckAgain_Click);
this.chkAlwaysShow = new System.Windows.Forms.CheckBox();
this.chkAlwaysShow.CheckedChanged += new System.EventHandler(this.chkAlwaysShow_CheckedChanged);
this.chkAlwaysShow.CheckedChanged += new EventHandler(this.chkAlwaysShow_CheckedChanged);
this.pnlChecks = new System.Windows.Forms.Panel();
this.pnlCheck1.SuspendLayout();
((System.ComponentModel.ISupportInitialize) this.pbCheck1).BeginInit();
@@ -79,287 +79,287 @@ namespace mRemoteNG.UI.Window
//
//pnlCheck1
//
this.pnlCheck1.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.pnlCheck1.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.pnlCheck1.Controls.Add(this.txtCheck1);
this.pnlCheck1.Controls.Add(this.lblCheck1);
this.pnlCheck1.Controls.Add(this.pbCheck1);
this.pnlCheck1.Location = new System.Drawing.Point(3, 3);
this.pnlCheck1.Location = new Point(3, 3);
this.pnlCheck1.Name = "pnlCheck1";
this.pnlCheck1.Size = new System.Drawing.Size(562, 130);
this.pnlCheck1.Size = new Size(562, 130);
this.pnlCheck1.TabIndex = 10;
this.pnlCheck1.Visible = false;
//
//txtCheck1
//
this.txtCheck1.Anchor = (System.Windows.Forms.AnchorStyles) (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.txtCheck1.BackColor = System.Drawing.SystemColors.Control;
this.txtCheck1.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.txtCheck1.BackColor = SystemColors.Control;
this.txtCheck1.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txtCheck1.Location = new System.Drawing.Point(129, 29);
this.txtCheck1.Location = new Point(129, 29);
this.txtCheck1.Multiline = true;
this.txtCheck1.Name = "txtCheck1";
this.txtCheck1.ReadOnly = true;
this.txtCheck1.Size = new System.Drawing.Size(430, 97);
this.txtCheck1.Size = new Size(430, 97);
this.txtCheck1.TabIndex = 2;
//
//lblCheck1
//
this.lblCheck1.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.lblCheck1.Font = new System.Drawing.Font("Microsoft Sans Serif", (float) (12.0F), System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, System.Convert.ToByte(0));
this.lblCheck1.ForeColor = System.Drawing.SystemColors.ControlText;
this.lblCheck1.Location = new System.Drawing.Point(108, 3);
this.lblCheck1.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.lblCheck1.Font = new Font("Microsoft Sans Serif", 12.0F, FontStyle.Bold, System.Drawing.GraphicsUnit.Point, Convert.ToByte(0));
this.lblCheck1.ForeColor = SystemColors.ControlText;
this.lblCheck1.Location = new Point(108, 3);
this.lblCheck1.Name = "lblCheck1";
this.lblCheck1.Size = new System.Drawing.Size(451, 23);
this.lblCheck1.Size = new Size(451, 23);
this.lblCheck1.TabIndex = 1;
this.lblCheck1.Text = "RDP check succeeded!";
//
//pbCheck1
//
this.pbCheck1.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left);
this.pbCheck1.Location = new System.Drawing.Point(3, 3);
this.pbCheck1.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left;
this.pbCheck1.Location = new Point(3, 3);
this.pbCheck1.Name = "pbCheck1";
this.pbCheck1.Size = new System.Drawing.Size(72, 123);
this.pbCheck1.Size = new Size(72, 123);
this.pbCheck1.TabIndex = 0;
this.pbCheck1.TabStop = false;
//
//pnlCheck2
//
this.pnlCheck2.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.pnlCheck2.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.pnlCheck2.Controls.Add(this.txtCheck2);
this.pnlCheck2.Controls.Add(this.lblCheck2);
this.pnlCheck2.Controls.Add(this.pbCheck2);
this.pnlCheck2.Location = new System.Drawing.Point(3, 139);
this.pnlCheck2.Location = new Point(3, 139);
this.pnlCheck2.Name = "pnlCheck2";
this.pnlCheck2.Size = new System.Drawing.Size(562, 130);
this.pnlCheck2.Size = new Size(562, 130);
this.pnlCheck2.TabIndex = 20;
this.pnlCheck2.Visible = false;
//
//txtCheck2
//
this.txtCheck2.Anchor = (System.Windows.Forms.AnchorStyles) (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.txtCheck2.BackColor = System.Drawing.SystemColors.Control;
this.txtCheck2.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.txtCheck2.BackColor = SystemColors.Control;
this.txtCheck2.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txtCheck2.Location = new System.Drawing.Point(129, 29);
this.txtCheck2.Location = new Point(129, 29);
this.txtCheck2.Multiline = true;
this.txtCheck2.Name = "txtCheck2";
this.txtCheck2.ReadOnly = true;
this.txtCheck2.Size = new System.Drawing.Size(430, 97);
this.txtCheck2.Size = new Size(430, 97);
this.txtCheck2.TabIndex = 2;
//
//lblCheck2
//
this.lblCheck2.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.lblCheck2.Font = new System.Drawing.Font("Microsoft Sans Serif", (float) (12.0F), System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, System.Convert.ToByte(0));
this.lblCheck2.Location = new System.Drawing.Point(112, 3);
this.lblCheck2.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.lblCheck2.Font = new Font("Microsoft Sans Serif", 12.0F, FontStyle.Bold, System.Drawing.GraphicsUnit.Point, Convert.ToByte(0));
this.lblCheck2.Location = new Point(112, 3);
this.lblCheck2.Name = "lblCheck2";
this.lblCheck2.Size = new System.Drawing.Size(447, 23);
this.lblCheck2.Size = new Size(447, 23);
this.lblCheck2.TabIndex = 1;
this.lblCheck2.Text = "RDP check succeeded!";
//
//pbCheck2
//
this.pbCheck2.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left);
this.pbCheck2.Location = new System.Drawing.Point(3, 3);
this.pbCheck2.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left;
this.pbCheck2.Location = new Point(3, 3);
this.pbCheck2.Name = "pbCheck2";
this.pbCheck2.Size = new System.Drawing.Size(72, 123);
this.pbCheck2.Size = new Size(72, 123);
this.pbCheck2.TabIndex = 0;
this.pbCheck2.TabStop = false;
//
//pnlCheck3
//
this.pnlCheck3.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.pnlCheck3.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.pnlCheck3.Controls.Add(this.txtCheck3);
this.pnlCheck3.Controls.Add(this.lblCheck3);
this.pnlCheck3.Controls.Add(this.pbCheck3);
this.pnlCheck3.Location = new System.Drawing.Point(3, 275);
this.pnlCheck3.Location = new Point(3, 275);
this.pnlCheck3.Name = "pnlCheck3";
this.pnlCheck3.Size = new System.Drawing.Size(562, 130);
this.pnlCheck3.Size = new Size(562, 130);
this.pnlCheck3.TabIndex = 30;
this.pnlCheck3.Visible = false;
//
//txtCheck3
//
this.txtCheck3.Anchor = (System.Windows.Forms.AnchorStyles) (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.txtCheck3.BackColor = System.Drawing.SystemColors.Control;
this.txtCheck3.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.txtCheck3.BackColor = SystemColors.Control;
this.txtCheck3.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txtCheck3.Location = new System.Drawing.Point(129, 29);
this.txtCheck3.Location = new Point(129, 29);
this.txtCheck3.Multiline = true;
this.txtCheck3.Name = "txtCheck3";
this.txtCheck3.ReadOnly = true;
this.txtCheck3.Size = new System.Drawing.Size(430, 97);
this.txtCheck3.Size = new Size(430, 97);
this.txtCheck3.TabIndex = 2;
//
//lblCheck3
//
this.lblCheck3.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.lblCheck3.Font = new System.Drawing.Font("Microsoft Sans Serif", (float) (12.0F), System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, System.Convert.ToByte(0));
this.lblCheck3.Location = new System.Drawing.Point(112, 3);
this.lblCheck3.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.lblCheck3.Font = new Font("Microsoft Sans Serif", 12.0F, FontStyle.Bold, System.Drawing.GraphicsUnit.Point, Convert.ToByte(0));
this.lblCheck3.Location = new Point(112, 3);
this.lblCheck3.Name = "lblCheck3";
this.lblCheck3.Size = new System.Drawing.Size(447, 23);
this.lblCheck3.Size = new Size(447, 23);
this.lblCheck3.TabIndex = 1;
this.lblCheck3.Text = "RDP check succeeded!";
//
//pbCheck3
//
this.pbCheck3.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left);
this.pbCheck3.Location = new System.Drawing.Point(3, 3);
this.pbCheck3.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left;
this.pbCheck3.Location = new Point(3, 3);
this.pbCheck3.Name = "pbCheck3";
this.pbCheck3.Size = new System.Drawing.Size(72, 123);
this.pbCheck3.Size = new Size(72, 123);
this.pbCheck3.TabIndex = 0;
this.pbCheck3.TabStop = false;
//
//pnlCheck4
//
this.pnlCheck4.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.pnlCheck4.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.pnlCheck4.Controls.Add(this.txtCheck4);
this.pnlCheck4.Controls.Add(this.lblCheck4);
this.pnlCheck4.Controls.Add(this.pbCheck4);
this.pnlCheck4.Location = new System.Drawing.Point(3, 411);
this.pnlCheck4.Location = new Point(3, 411);
this.pnlCheck4.Name = "pnlCheck4";
this.pnlCheck4.Size = new System.Drawing.Size(562, 130);
this.pnlCheck4.Size = new Size(562, 130);
this.pnlCheck4.TabIndex = 40;
this.pnlCheck4.Visible = false;
//
//txtCheck4
//
this.txtCheck4.Anchor = (System.Windows.Forms.AnchorStyles) (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.txtCheck4.BackColor = System.Drawing.SystemColors.Control;
this.txtCheck4.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.txtCheck4.BackColor = SystemColors.Control;
this.txtCheck4.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txtCheck4.Location = new System.Drawing.Point(129, 30);
this.txtCheck4.Location = new Point(129, 30);
this.txtCheck4.Multiline = true;
this.txtCheck4.Name = "txtCheck4";
this.txtCheck4.ReadOnly = true;
this.txtCheck4.Size = new System.Drawing.Size(430, 97);
this.txtCheck4.Size = new Size(430, 97);
this.txtCheck4.TabIndex = 2;
//
//lblCheck4
//
this.lblCheck4.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.lblCheck4.Font = new System.Drawing.Font("Microsoft Sans Serif", (float) (12.0F), System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, System.Convert.ToByte(0));
this.lblCheck4.Location = new System.Drawing.Point(112, 3);
this.lblCheck4.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.lblCheck4.Font = new Font("Microsoft Sans Serif", 12.0F, FontStyle.Bold, System.Drawing.GraphicsUnit.Point, Convert.ToByte(0));
this.lblCheck4.Location = new Point(112, 3);
this.lblCheck4.Name = "lblCheck4";
this.lblCheck4.Size = new System.Drawing.Size(447, 23);
this.lblCheck4.Size = new Size(447, 23);
this.lblCheck4.TabIndex = 1;
this.lblCheck4.Text = "RDP check succeeded!";
//
//pbCheck4
//
this.pbCheck4.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left);
this.pbCheck4.Location = new System.Drawing.Point(3, 3);
this.pbCheck4.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left;
this.pbCheck4.Location = new Point(3, 3);
this.pbCheck4.Name = "pbCheck4";
this.pbCheck4.Size = new System.Drawing.Size(72, 123);
this.pbCheck4.Size = new Size(72, 123);
this.pbCheck4.TabIndex = 0;
this.pbCheck4.TabStop = false;
//
//pnlCheck5
//
this.pnlCheck5.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.pnlCheck5.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.pnlCheck5.Controls.Add(this.txtCheck5);
this.pnlCheck5.Controls.Add(this.lblCheck5);
this.pnlCheck5.Controls.Add(this.pbCheck5);
this.pnlCheck5.Location = new System.Drawing.Point(3, 547);
this.pnlCheck5.Location = new Point(3, 547);
this.pnlCheck5.Name = "pnlCheck5";
this.pnlCheck5.Size = new System.Drawing.Size(562, 130);
this.pnlCheck5.Size = new Size(562, 130);
this.pnlCheck5.TabIndex = 50;
this.pnlCheck5.Visible = false;
//
//txtCheck5
//
this.txtCheck5.Anchor = (System.Windows.Forms.AnchorStyles) (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.txtCheck5.BackColor = System.Drawing.SystemColors.Control;
this.txtCheck5.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.txtCheck5.BackColor = SystemColors.Control;
this.txtCheck5.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.txtCheck5.Location = new System.Drawing.Point(129, 29);
this.txtCheck5.Location = new Point(129, 29);
this.txtCheck5.Multiline = true;
this.txtCheck5.Name = "txtCheck5";
this.txtCheck5.ReadOnly = true;
this.txtCheck5.Size = new System.Drawing.Size(430, 97);
this.txtCheck5.Size = new Size(430, 97);
this.txtCheck5.TabIndex = 2;
//
//lblCheck5
//
this.lblCheck5.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.lblCheck5.Font = new System.Drawing.Font("Microsoft Sans Serif", (float) (12.0F), System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, System.Convert.ToByte(0));
this.lblCheck5.Location = new System.Drawing.Point(112, 3);
this.lblCheck5.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.lblCheck5.Font = new Font("Microsoft Sans Serif", 12.0F, FontStyle.Bold, System.Drawing.GraphicsUnit.Point, Convert.ToByte(0));
this.lblCheck5.Location = new Point(112, 3);
this.lblCheck5.Name = "lblCheck5";
this.lblCheck5.Size = new System.Drawing.Size(447, 23);
this.lblCheck5.Size = new Size(447, 23);
this.lblCheck5.TabIndex = 1;
this.lblCheck5.Text = "RDP check succeeded!";
//
//pbCheck5
//
this.pbCheck5.Anchor = (System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left);
this.pbCheck5.Location = new System.Drawing.Point(3, 3);
this.pbCheck5.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left;
this.pbCheck5.Location = new Point(3, 3);
this.pbCheck5.Name = "pbCheck5";
this.pbCheck5.Size = new System.Drawing.Size(72, 123);
this.pbCheck5.Size = new Size(72, 123);
this.pbCheck5.TabIndex = 0;
this.pbCheck5.TabStop = false;
//
//btnCheckAgain
//
this.btnCheckAgain.Anchor = (System.Windows.Forms.AnchorStyles) (System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right);
this.btnCheckAgain.Anchor = System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right;
this.btnCheckAgain.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.btnCheckAgain.Location = new System.Drawing.Point(476, 842);
this.btnCheckAgain.Location = new Point(476, 842);
this.btnCheckAgain.Name = "btnCheckAgain";
this.btnCheckAgain.Size = new System.Drawing.Size(104, 23);
this.btnCheckAgain.Size = new Size(104, 23);
this.btnCheckAgain.TabIndex = 0;
this.btnCheckAgain.Text = "Check again";
this.btnCheckAgain.UseVisualStyleBackColor = true;
//
//chkAlwaysShow
//
this.chkAlwaysShow.Anchor = (System.Windows.Forms.AnchorStyles) (System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left);
this.chkAlwaysShow.Anchor = System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left;
this.chkAlwaysShow.AutoSize = true;
this.chkAlwaysShow.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.chkAlwaysShow.Location = new System.Drawing.Point(12, 846);
this.chkAlwaysShow.Location = new Point(12, 846);
this.chkAlwaysShow.Name = "chkAlwaysShow";
this.chkAlwaysShow.Size = new System.Drawing.Size(185, 17);
this.chkAlwaysShow.Size = new Size(185, 17);
this.chkAlwaysShow.TabIndex = 51;
this.chkAlwaysShow.Text = "Always show this screen at startup";
this.chkAlwaysShow.UseVisualStyleBackColor = true;
//
//pnlChecks
//
this.pnlChecks.Anchor = (System.Windows.Forms.AnchorStyles) (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right);
this.pnlChecks.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right;
this.pnlChecks.AutoScroll = true;
this.pnlChecks.Controls.Add(this.pnlCheck1);
this.pnlChecks.Controls.Add(this.pnlCheck2);
this.pnlChecks.Controls.Add(this.pnlCheck3);
this.pnlChecks.Controls.Add(this.pnlCheck5);
this.pnlChecks.Controls.Add(this.pnlCheck4);
this.pnlChecks.Location = new System.Drawing.Point(12, 12);
this.pnlChecks.Location = new Point(12, 12);
this.pnlChecks.Name = "pnlChecks";
this.pnlChecks.Size = new System.Drawing.Size(568, 824);
this.pnlChecks.Size = new Size(568, 824);
this.pnlChecks.TabIndex = 52;
//
//ComponentsCheck
//
this.ClientSize = new System.Drawing.Size(592, 877);
this.ClientSize = new Size(592, 877);
this.Controls.Add(this.pnlChecks);
this.Controls.Add(this.chkAlwaysShow);
this.Controls.Add(this.btnCheckAgain);
@@ -399,11 +399,11 @@ namespace mRemoteNG.UI.Window
#endregion
#region Form Stuff
private void ComponentsCheck_Load(object sender, System.EventArgs e)
private void ComponentsCheck_Load(object sender, EventArgs e)
{
ApplyLanguage();
chkAlwaysShow.Checked = System.Convert.ToBoolean(My.Settings.Default.StartupComponentsCheck);
chkAlwaysShow.Checked = Convert.ToBoolean(My.Settings.Default.StartupComponentsCheck);
CheckComponents();
}
@@ -415,12 +415,12 @@ namespace mRemoteNG.UI.Window
btnCheckAgain.Text = My.Language.strCcCheckAgain;
}
private void btnCheckAgain_Click(System.Object sender, System.EventArgs e)
private void btnCheckAgain_Click(object sender, EventArgs e)
{
CheckComponents();
}
private void chkAlwaysShow_CheckedChanged(System.Object sender, System.EventArgs e)
private void chkAlwaysShow_CheckedChanged(object sender, EventArgs e)
{
My.Settings.Default.StartupComponentsCheck = chkAlwaysShow.Checked;
My.Settings.Default.Save();
@@ -451,9 +451,9 @@ namespace mRemoteNG.UI.Window
System.Windows.Forms.Application.DoEvents();
}
if (!(new Version(System.Convert.ToString(rdpClient.Version)) >= ProtocolRDP.Versions.RDC60))
if (!(new Version(Convert.ToString(rdpClient.Version)) >= ProtocolRDP.Versions.RDC80))
{
throw (new Exception(string.Format("Found RDC Client version {0} but version {1} or higher is required.", rdpClient.Version, ProtocolRDP.Versions.RDC60)));
throw (new Exception(string.Format("Found RDC Client version {0} but version {1} or higher is required.", rdpClient.Version, ProtocolRDP.Versions.RDC80)));
}
pbCheck1.Image = My.Resources.Good_Symbol;
@@ -519,7 +519,7 @@ namespace mRemoteNG.UI.Window
}
else
{
pPath = System.Convert.ToString(My.Settings.Default.CustomPuttyPath);
pPath = Convert.ToString(My.Settings.Default.CustomPuttyPath);
}
if (File.Exists(pPath))
@@ -584,9 +584,9 @@ namespace mRemoteNG.UI.Window
GeckoBad = true;
}
if (Directory.Exists(System.Convert.ToString(My.Settings.Default.XULRunnerPath)))
if (Directory.Exists(Convert.ToString(My.Settings.Default.XULRunnerPath)))
{
if (File.Exists(Path.Combine(System.Convert.ToString(My.Settings.Default.XULRunnerPath), "xpcom.dll")) == false)
if (File.Exists(Path.Combine(Convert.ToString(My.Settings.Default.XULRunnerPath), "xpcom.dll")) == false)
{
GeckoBad = true;
}