diff --git a/CHANGELOG.md b/CHANGELOG.md index 8f08632fe..ab595ab4d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] ### Added +- #327: Added Alternative Shell for RDP settings - #1476: Configurable backups. Can now edit/set backup frequency, backup path, and max number of backup files. - #1427: Fix RDP local desktop scale not taking effect on remote - #1770: Added missing RDP performance settings diff --git a/mRemoteNG/App/Info/ConnectionsFileInfo.cs b/mRemoteNG/App/Info/ConnectionsFileInfo.cs index b68df671c..f3434e035 100644 --- a/mRemoteNG/App/Info/ConnectionsFileInfo.cs +++ b/mRemoteNG/App/Info/ConnectionsFileInfo.cs @@ -1,10 +1,12 @@ -namespace mRemoteNG.App.Info +using System; + +namespace mRemoteNG.App.Info { public static class ConnectionsFileInfo { public static readonly string DefaultConnectionsPath = SettingsFileInfo.SettingsPath; public static readonly string DefaultConnectionsFile = "confCons.xml"; public static readonly string DefaultConnectionsFileNew = "confConsNew.xml"; - public static readonly double ConnectionFileVersion = 2.8; + public static readonly Version ConnectionFileVersion = new Version(2, 9); } } \ No newline at end of file diff --git a/mRemoteNG/Config/Connections/SqlConnectionsSaver.cs b/mRemoteNG/Config/Connections/SqlConnectionsSaver.cs index d39295e9c..4be3dce94 100644 --- a/mRemoteNG/Config/Connections/SqlConnectionsSaver.cs +++ b/mRemoteNG/Config/Connections/SqlConnectionsSaver.cs @@ -140,9 +140,9 @@ namespace mRemoteNG.Config.Connections { dbQuery = databaseConnector.DbCommand( - "INSERT INTO tblRoot (Name, Export, Protected, ConfVersion) VALUES(\'" + - MiscTools.PrepareValueForDB(rootTreeNode.Name) + "\', 0, \'" + strProtected + "\'," + - ConnectionsFileInfo.ConnectionFileVersion.ToString(CultureInfo.InvariantCulture) + ")"); + "INSERT INTO tblRoot (Name, Export, Protected, ConfVersion) VALUES('" + + MiscTools.PrepareValueForDB(rootTreeNode.Name) + "', 0, '" + strProtected + "','" + + ConnectionsFileInfo.ConnectionFileVersion.ToString() + "')"); dbQuery.ExecuteNonQuery(); } else @@ -172,7 +172,7 @@ namespace mRemoteNG.Config.Connections { var dbQuery = databaseConnector.DbCommand("DELETE FROM tblUpdate"); dbQuery.ExecuteNonQuery(); - dbQuery = databaseConnector.DbCommand("INSERT INTO tblUpdate (LastUpdate) VALUES(\'" + MiscTools.DBDate(DateTime.Now) + "\')"); + dbQuery = databaseConnector.DbCommand("INSERT INTO tblUpdate (LastUpdate) VALUES('" + MiscTools.DBDate(DateTime.Now) + "')"); dbQuery.ExecuteNonQuery(); } diff --git a/mRemoteNG/Config/Serializers/ConnectionSerializers/Csv/CsvConnectionsDeserializerMremotengFormat.cs b/mRemoteNG/Config/Serializers/ConnectionSerializers/Csv/CsvConnectionsDeserializerMremotengFormat.cs index 160ad059a..fafb3341d 100644 --- a/mRemoteNG/Config/Serializers/ConnectionSerializers/Csv/CsvConnectionsDeserializerMremotengFormat.cs +++ b/mRemoteNG/Config/Serializers/ConnectionSerializers/Csv/CsvConnectionsDeserializerMremotengFormat.cs @@ -190,6 +190,14 @@ namespace mRemoteNG.Config.Serializers.ConnectionSerializers.Csv ? connectionCsv[headers.IndexOf("RDGatewayHostname")] : ""; + connectionRecord.StartProgram = headers.Contains("StartProgram") + ? connectionCsv[headers.IndexOf("StartProgram")] + : ""; + + connectionRecord.StartProgramWorkDir = headers.Contains("StartProgramWorkDir") + ? connectionCsv[headers.IndexOf("StartProgramWorkDir")] + : ""; + if (headers.Contains("Protocol")) { if (Enum.TryParse(connectionCsv[headers.IndexOf("Protocol")], out ProtocolType protocolType)) diff --git a/mRemoteNG/Config/Serializers/ConnectionSerializers/Csv/CsvConnectionsSerializerMremotengFormat.cs b/mRemoteNG/Config/Serializers/ConnectionSerializers/Csv/CsvConnectionsSerializerMremotengFormat.cs index 32b44eb2f..27c536ba0 100644 --- a/mRemoteNG/Config/Serializers/ConnectionSerializers/Csv/CsvConnectionsSerializerMremotengFormat.cs +++ b/mRemoteNG/Config/Serializers/ConnectionSerializers/Csv/CsvConnectionsSerializerMremotengFormat.cs @@ -1,257 +1,259 @@ -using System; -using System.Linq; -using System.Text; -using mRemoteNG.Connection; -using mRemoteNG.Container; -using mRemoteNG.Credential; -using mRemoteNG.Security; -using mRemoteNG.Tools; -using mRemoteNG.Tree; -using mRemoteNG.Tree.Root; - -namespace mRemoteNG.Config.Serializers.ConnectionSerializers.Csv -{ - public class CsvConnectionsSerializerMremotengFormat : ISerializer - { - private readonly SaveFilter _saveFilter; - private readonly ICredentialRepositoryList _credentialRepositoryList; - - public Version Version { get; } = new Version(2, 7); - - public CsvConnectionsSerializerMremotengFormat(SaveFilter saveFilter, - ICredentialRepositoryList credentialRepositoryList) - { - saveFilter.ThrowIfNull(nameof(saveFilter)); - credentialRepositoryList.ThrowIfNull(nameof(credentialRepositoryList)); - - _saveFilter = saveFilter; - _credentialRepositoryList = credentialRepositoryList; - } - - public string Serialize(ConnectionTreeModel connectionTreeModel) - { - connectionTreeModel.ThrowIfNull(nameof(connectionTreeModel)); - - var rootNode = connectionTreeModel.RootNodes.First(node => node is RootNodeInfo); - return Serialize(rootNode); - } - - public string Serialize(ConnectionInfo serializationTarget) - { - serializationTarget.ThrowIfNull(nameof(serializationTarget)); - var sb = new StringBuilder(); - - WriteCsvHeader(sb); - SerializeNodesRecursive(serializationTarget, sb); - return sb.ToString(); - } - - private void WriteCsvHeader(StringBuilder sb) - { - sb.Append("Name;Id;Parent;NodeType;Description;Icon;Panel;"); - if (_saveFilter.SaveUsername) - sb.Append("Username;"); - if (_saveFilter.SavePassword) - sb.Append("Password;"); - if (_saveFilter.SaveDomain) - sb.Append("Domain;"); - - sb.Append("Hostname;Port;VmId;Protocol;SSHTunnelConnectionName;OpeningCommand;SSHOptions;PuttySession;ConnectToConsole;UseCredSsp;UseVmId;UseEnhancedMode;RenderingEngine;RDPAuthenticationLevel;" + - "LoadBalanceInfo;Colors;Resolution;AutomaticResize;DisplayWallpaper;DisplayThemes;EnableFontSmoothing;EnableDesktopComposition;DisableFullWindowDrag;DisableMenuAnimations;DisableCursorShadow;DisableCursorBlinking;" + - "CacheBitmaps;RedirectDiskDrives;RedirectPorts;RedirectPrinters;RedirectClipboard;RedirectSmartCards;RedirectSound;RedirectKeys;" + - "PreExtApp;PostExtApp;MacAddress;UserField;ExtApp;Favorite;VNCCompression;VNCEncoding;VNCAuthMode;VNCProxyType;VNCProxyIP;" + - "VNCProxyPort;VNCProxyUsername;VNCProxyPassword;VNCColors;VNCSmartSizeMode;VNCViewOnly;RDGatewayUsageMethod;RDGatewayHostname;" + - "RDGatewayUseConnectionCredentials;RDGatewayUsername;RDGatewayPassword;RDGatewayDomain;RedirectAudioCapture;RdpVersion;"); - - if (_saveFilter.SaveInheritance) - sb.Append("InheritCacheBitmaps;InheritColors;InheritDescription;InheritDisplayThemes;InheritDisplayWallpaper;" + - "InheritEnableFontSmoothing;InheritEnableDesktopComposition;InheritDisableFullWindowDrag;InheritDisableMenuAnimations;InheritDisableCursorShadow;InheritDisableCursorBlinking;InheritDomain;InheritIcon;InheritPanel;InheritPassword;InheritPort;" + - "InheritProtocol;InheritSSHTunnelConnectionName;InheritSSHOptions;InheritPuttySession;InheritRedirectDiskDrives;InheritRedirectKeys;InheritRedirectPorts;InheritRedirectPrinters;" + - "InheritRedirectClipboard;InheritRedirectSmartCards;InheritRedirectSound;InheritResolution;InheritAutomaticResize;" + - "InheritUseConsoleSession;InheritUseCredSsp;InheritUseVmId;InheritUseEnhancedMode;InheritVmId;InheritRenderingEngine;InheritUsername;" + - "InheritRDPAuthenticationLevel;InheritLoadBalanceInfo;InheritPreExtApp;InheritPostExtApp;InheritMacAddress;InheritUserField;" + - "InheritFavorite;InheritExtApp;InheritVNCCompression;InheritVNCEncoding;InheritVNCAuthMode;InheritVNCProxyType;InheritVNCProxyIP;" + - "InheritVNCProxyPort;InheritVNCProxyUsername;InheritVNCProxyPassword;InheritVNCColors;InheritVNCSmartSizeMode;InheritVNCViewOnly;" + - "InheritRDGatewayUsageMethod;InheritRDGatewayHostname;InheritRDGatewayUseConnectionCredentials;InheritRDGatewayUsername;" + - "InheritRDGatewayPassword;InheritRDGatewayDomain;InheritRDPAlertIdleTimeout;InheritRDPMinutesToIdleTimeout;InheritSoundQuality;" + - "InheritRedirectAudioCapture;InheritRdpVersion"); - } - - private void SerializeNodesRecursive(ConnectionInfo node, StringBuilder sb) - { - var nodeAsContainer = node as ContainerInfo; - if (nodeAsContainer != null) - { - foreach (var child in nodeAsContainer.Children) - { - SerializeNodesRecursive(child, sb); - } - } - - // dont serialize the root node - if (node is RootNodeInfo) - return; - - SerializeConnectionInfo(node, sb); - } - - private void SerializeConnectionInfo(ConnectionInfo con, StringBuilder sb) - { - sb.AppendLine(); - sb.Append(FormatForCsv(con.Name)) - .Append(FormatForCsv(con.ConstantID)) - .Append(FormatForCsv(con.Parent?.ConstantID ?? "")) - .Append(FormatForCsv(con.GetTreeNodeType())) - .Append(FormatForCsv(con.Description)) - .Append(FormatForCsv(con.Icon)) - .Append(FormatForCsv(con.Panel)); - - if (_saveFilter.SaveUsername) - sb.Append(FormatForCsv(con.Username)); - - if (_saveFilter.SavePassword) - sb.Append(FormatForCsv(con.Password)); - - if (_saveFilter.SaveDomain) - sb.Append(FormatForCsv(con.Domain)); - - sb.Append(FormatForCsv(con.Hostname)) - .Append(FormatForCsv(con.Port)) - .Append(FormatForCsv(con.VmId)) - .Append(FormatForCsv(con.Protocol)) - .Append(FormatForCsv(con.SSHTunnelConnectionName)) - .Append(FormatForCsv(con.OpeningCommand)) - .Append(FormatForCsv(con.SSHOptions)) - .Append(FormatForCsv(con.PuttySession)) - .Append(FormatForCsv(con.UseConsoleSession)) - .Append(FormatForCsv(con.UseCredSsp)) - .Append(FormatForCsv(con.UseVmId)) - .Append(FormatForCsv(con.UseEnhancedMode)) - .Append(FormatForCsv(con.RenderingEngine)) - .Append(FormatForCsv(con.RDPAuthenticationLevel)) - .Append(FormatForCsv(con.LoadBalanceInfo)) - .Append(FormatForCsv(con.Colors)) - .Append(FormatForCsv(con.Resolution)) - .Append(FormatForCsv(con.AutomaticResize)) - .Append(FormatForCsv(con.DisplayWallpaper)) - .Append(FormatForCsv(con.DisplayThemes)) - .Append(FormatForCsv(con.EnableFontSmoothing)) - .Append(FormatForCsv(con.EnableDesktopComposition)) - .Append(FormatForCsv(con.DisableFullWindowDrag)) - .Append(FormatForCsv(con.DisableMenuAnimations)) - .Append(FormatForCsv(con.DisableCursorShadow)) - .Append(FormatForCsv(con.DisableCursorBlinking)) - .Append(FormatForCsv(con.CacheBitmaps)) - .Append(FormatForCsv(con.RedirectDiskDrives)) - .Append(FormatForCsv(con.RedirectPorts)) - .Append(FormatForCsv(con.RedirectPrinters)) - .Append(FormatForCsv(con.RedirectClipboard)) - .Append(FormatForCsv(con.RedirectSmartCards)) - .Append(FormatForCsv(con.RedirectSound)) - .Append(FormatForCsv(con.RedirectKeys)) - .Append(FormatForCsv(con.PreExtApp)) - .Append(FormatForCsv(con.PostExtApp)) - .Append(FormatForCsv(con.MacAddress)) - .Append(FormatForCsv(con.UserField)) - .Append(FormatForCsv(con.ExtApp)) - .Append(FormatForCsv(con.Favorite)) - .Append(FormatForCsv(con.VNCCompression)) - .Append(FormatForCsv(con.VNCEncoding)) - .Append(FormatForCsv(con.VNCAuthMode)) - .Append(FormatForCsv(con.VNCProxyType)) - .Append(FormatForCsv(con.VNCProxyIP)) - .Append(FormatForCsv(con.VNCProxyPort)) - .Append(FormatForCsv(con.VNCProxyUsername)) - .Append(FormatForCsv(con.VNCProxyPassword)) - .Append(FormatForCsv(con.VNCColors)) - .Append(FormatForCsv(con.VNCSmartSizeMode)) - .Append(FormatForCsv(con.VNCViewOnly)) - .Append(FormatForCsv(con.RDGatewayUsageMethod)) - .Append(FormatForCsv(con.RDGatewayHostname)) - .Append(FormatForCsv(con.RDGatewayUseConnectionCredentials)) - .Append(FormatForCsv(con.RDGatewayUsername)) - .Append(FormatForCsv(con.RDGatewayPassword)) - .Append(FormatForCsv(con.RDGatewayDomain)) - .Append(FormatForCsv(con.RedirectAudioCapture)) - .Append(FormatForCsv(con.RdpVersion)); - - - if (!_saveFilter.SaveInheritance) - return; - - sb.Append(FormatForCsv(con.Inheritance.CacheBitmaps)) - .Append(FormatForCsv(con.Inheritance.Colors)) - .Append(FormatForCsv(con.Inheritance.Description)) - .Append(FormatForCsv(con.Inheritance.DisplayThemes)) - .Append(FormatForCsv(con.Inheritance.DisplayWallpaper)) - .Append(FormatForCsv(con.Inheritance.EnableFontSmoothing)) - .Append(FormatForCsv(con.Inheritance.EnableDesktopComposition)) - .Append(FormatForCsv(con.Inheritance.DisableFullWindowDrag)) - .Append(FormatForCsv(con.Inheritance.DisableMenuAnimations)) - .Append(FormatForCsv(con.Inheritance.DisableCursorShadow)) - .Append(FormatForCsv(con.Inheritance.DisableCursorBlinking)) - .Append(FormatForCsv(con.Inheritance.Domain)) - .Append(FormatForCsv(con.Inheritance.Icon)) - .Append(FormatForCsv(con.Inheritance.Panel)) - .Append(FormatForCsv(con.Inheritance.Password)) - .Append(FormatForCsv(con.Inheritance.Port)) - .Append(FormatForCsv(con.Inheritance.Protocol)) - .Append(FormatForCsv(con.Inheritance.SSHTunnelConnectionName)) - .Append(FormatForCsv(con.Inheritance.OpeningCommand)) - .Append(FormatForCsv(con.Inheritance.SSHOptions)) - .Append(FormatForCsv(con.Inheritance.PuttySession)) - .Append(FormatForCsv(con.Inheritance.RedirectDiskDrives)) - .Append(FormatForCsv(con.Inheritance.RedirectKeys)) - .Append(FormatForCsv(con.Inheritance.RedirectPorts)) - .Append(FormatForCsv(con.Inheritance.RedirectPrinters)) - .Append(FormatForCsv(con.Inheritance.RedirectClipboard)) - .Append(FormatForCsv(con.Inheritance.RedirectSmartCards)) - .Append(FormatForCsv(con.Inheritance.RedirectSound)) - .Append(FormatForCsv(con.Inheritance.Resolution)) - .Append(FormatForCsv(con.Inheritance.AutomaticResize)) - .Append(FormatForCsv(con.Inheritance.UseConsoleSession)) - .Append(FormatForCsv(con.Inheritance.UseCredSsp)) - .Append(FormatForCsv(con.Inheritance.UseVmId)) - .Append(FormatForCsv(con.Inheritance.UseEnhancedMode)) - .Append(FormatForCsv(con.Inheritance.VmId)) - .Append(FormatForCsv(con.Inheritance.RenderingEngine)) - .Append(FormatForCsv(con.Inheritance.Username)) - .Append(FormatForCsv(con.Inheritance.RDPAuthenticationLevel)) - .Append(FormatForCsv(con.Inheritance.LoadBalanceInfo)) - .Append(FormatForCsv(con.Inheritance.PreExtApp)) - .Append(FormatForCsv(con.Inheritance.PostExtApp)) - .Append(FormatForCsv(con.Inheritance.MacAddress)) - .Append(FormatForCsv(con.Inheritance.UserField)) - .Append(FormatForCsv(con.Inheritance.Favorite)) - .Append(FormatForCsv(con.Inheritance.ExtApp)) - .Append(FormatForCsv(con.Inheritance.VNCCompression)) - .Append(FormatForCsv(con.Inheritance.VNCEncoding)) - .Append(FormatForCsv(con.Inheritance.VNCAuthMode)) - .Append(FormatForCsv(con.Inheritance.VNCProxyType)) - .Append(FormatForCsv(con.Inheritance.VNCProxyIP)) - .Append(FormatForCsv(con.Inheritance.VNCProxyPort)) - .Append(FormatForCsv(con.Inheritance.VNCProxyUsername)) - .Append(FormatForCsv(con.Inheritance.VNCProxyPassword)) - .Append(FormatForCsv(con.Inheritance.VNCColors)) - .Append(FormatForCsv(con.Inheritance.VNCSmartSizeMode)) - .Append(FormatForCsv(con.Inheritance.VNCViewOnly)) - .Append(FormatForCsv(con.Inheritance.RDGatewayUsageMethod)) - .Append(FormatForCsv(con.Inheritance.RDGatewayHostname)) - .Append(FormatForCsv(con.Inheritance.RDGatewayUseConnectionCredentials)) - .Append(FormatForCsv(con.Inheritance.RDGatewayUsername)) - .Append(FormatForCsv(con.Inheritance.RDGatewayPassword)) - .Append(FormatForCsv(con.Inheritance.RDGatewayDomain)) - .Append(FormatForCsv(con.Inheritance.RDPAlertIdleTimeout)) - .Append(FormatForCsv(con.Inheritance.RDPMinutesToIdleTimeout)) - .Append(FormatForCsv(con.Inheritance.SoundQuality)) - .Append(FormatForCsv(con.Inheritance.RedirectAudioCapture)) - .Append(FormatForCsv(con.Inheritance.RdpVersion)); - } - - private string FormatForCsv(object value) - { - var cleanedString = value.ToString().Replace(";", ""); - return cleanedString + ";"; - } - } +using System; +using System.Linq; +using System.Text; +using mRemoteNG.Connection; +using mRemoteNG.Container; +using mRemoteNG.Credential; +using mRemoteNG.Security; +using mRemoteNG.Tools; +using mRemoteNG.Tree; +using mRemoteNG.Tree.Root; + +namespace mRemoteNG.Config.Serializers.ConnectionSerializers.Csv +{ + public class CsvConnectionsSerializerMremotengFormat : ISerializer + { + private readonly SaveFilter _saveFilter; + private readonly ICredentialRepositoryList _credentialRepositoryList; + + public Version Version { get; } = new Version(2, 7); + + public CsvConnectionsSerializerMremotengFormat(SaveFilter saveFilter, + ICredentialRepositoryList credentialRepositoryList) + { + saveFilter.ThrowIfNull(nameof(saveFilter)); + credentialRepositoryList.ThrowIfNull(nameof(credentialRepositoryList)); + + _saveFilter = saveFilter; + _credentialRepositoryList = credentialRepositoryList; + } + + public string Serialize(ConnectionTreeModel connectionTreeModel) + { + connectionTreeModel.ThrowIfNull(nameof(connectionTreeModel)); + + var rootNode = connectionTreeModel.RootNodes.First(node => node is RootNodeInfo); + return Serialize(rootNode); + } + + public string Serialize(ConnectionInfo serializationTarget) + { + serializationTarget.ThrowIfNull(nameof(serializationTarget)); + var sb = new StringBuilder(); + + WriteCsvHeader(sb); + SerializeNodesRecursive(serializationTarget, sb); + return sb.ToString(); + } + + private void WriteCsvHeader(StringBuilder sb) + { + sb.Append("Name;Id;Parent;NodeType;Description;Icon;Panel;"); + if (_saveFilter.SaveUsername) + sb.Append("Username;"); + if (_saveFilter.SavePassword) + sb.Append("Password;"); + if (_saveFilter.SaveDomain) + sb.Append("Domain;"); + + sb.Append("Hostname;Port;VmId;Protocol;SSHTunnelConnectionName;OpeningCommand;SSHOptions;PuttySession;ConnectToConsole;UseCredSsp;UseVmId;UseEnhancedMode;RenderingEngine;RDPAuthenticationLevel;" + + "LoadBalanceInfo;Colors;Resolution;AutomaticResize;DisplayWallpaper;DisplayThemes;EnableFontSmoothing;EnableDesktopComposition;DisableFullWindowDrag;DisableMenuAnimations;DisableCursorShadow;DisableCursorBlinking;" + + "CacheBitmaps;RedirectDiskDrives;RedirectPorts;RedirectPrinters;RedirectClipboard;RedirectSmartCards;RedirectSound;RedirectKeys;" + + "PreExtApp;PostExtApp;MacAddress;UserField;ExtApp;Favorite;VNCCompression;VNCEncoding;VNCAuthMode;VNCProxyType;VNCProxyIP;" + + "VNCProxyPort;VNCProxyUsername;VNCProxyPassword;VNCColors;VNCSmartSizeMode;VNCViewOnly;RDGatewayUsageMethod;RDGatewayHostname;" + + "RDGatewayUseConnectionCredentials;RDGatewayUsername;RDGatewayPassword;RDGatewayDomain;RedirectAudioCapture;RdpVersion;StartProgram;StartProgramWorkDir;"); + + if (_saveFilter.SaveInheritance) + sb.Append("InheritCacheBitmaps;InheritColors;InheritDescription;InheritDisplayThemes;InheritDisplayWallpaper;" + + "InheritEnableFontSmoothing;InheritEnableDesktopComposition;InheritDisableFullWindowDrag;InheritDisableMenuAnimations;InheritDisableCursorShadow;InheritDisableCursorBlinking;InheritDomain;InheritIcon;InheritPanel;InheritPassword;InheritPort;" + + "InheritProtocol;InheritSSHTunnelConnectionName;InheritSSHOptions;InheritPuttySession;InheritRedirectDiskDrives;InheritRedirectKeys;InheritRedirectPorts;InheritRedirectPrinters;" + + "InheritRedirectClipboard;InheritRedirectSmartCards;InheritRedirectSound;InheritResolution;InheritAutomaticResize;" + + "InheritUseConsoleSession;InheritUseCredSsp;InheritUseVmId;InheritUseEnhancedMode;InheritVmId;InheritRenderingEngine;InheritUsername;" + + "InheritRDPAuthenticationLevel;InheritLoadBalanceInfo;InheritPreExtApp;InheritPostExtApp;InheritMacAddress;InheritUserField;" + + "InheritFavorite;InheritExtApp;InheritVNCCompression;InheritVNCEncoding;InheritVNCAuthMode;InheritVNCProxyType;InheritVNCProxyIP;" + + "InheritVNCProxyPort;InheritVNCProxyUsername;InheritVNCProxyPassword;InheritVNCColors;InheritVNCSmartSizeMode;InheritVNCViewOnly;" + + "InheritRDGatewayUsageMethod;InheritRDGatewayHostname;InheritRDGatewayUseConnectionCredentials;InheritRDGatewayUsername;" + + "InheritRDGatewayPassword;InheritRDGatewayDomain;InheritRDPAlertIdleTimeout;InheritRDPMinutesToIdleTimeout;InheritSoundQuality;" + + "InheritRedirectAudioCapture;InheritRdpVersion"); + } + + private void SerializeNodesRecursive(ConnectionInfo node, StringBuilder sb) + { + var nodeAsContainer = node as ContainerInfo; + if (nodeAsContainer != null) + { + foreach (var child in nodeAsContainer.Children) + { + SerializeNodesRecursive(child, sb); + } + } + + // dont serialize the root node + if (node is RootNodeInfo) + return; + + SerializeConnectionInfo(node, sb); + } + + private void SerializeConnectionInfo(ConnectionInfo con, StringBuilder sb) + { + sb.AppendLine(); + sb.Append(FormatForCsv(con.Name)) + .Append(FormatForCsv(con.ConstantID)) + .Append(FormatForCsv(con.Parent?.ConstantID ?? "")) + .Append(FormatForCsv(con.GetTreeNodeType())) + .Append(FormatForCsv(con.Description)) + .Append(FormatForCsv(con.Icon)) + .Append(FormatForCsv(con.Panel)); + + if (_saveFilter.SaveUsername) + sb.Append(FormatForCsv(con.Username)); + + if (_saveFilter.SavePassword) + sb.Append(FormatForCsv(con.Password)); + + if (_saveFilter.SaveDomain) + sb.Append(FormatForCsv(con.Domain)); + + sb.Append(FormatForCsv(con.Hostname)) + .Append(FormatForCsv(con.Port)) + .Append(FormatForCsv(con.VmId)) + .Append(FormatForCsv(con.Protocol)) + .Append(FormatForCsv(con.SSHTunnelConnectionName)) + .Append(FormatForCsv(con.OpeningCommand)) + .Append(FormatForCsv(con.SSHOptions)) + .Append(FormatForCsv(con.PuttySession)) + .Append(FormatForCsv(con.UseConsoleSession)) + .Append(FormatForCsv(con.UseCredSsp)) + .Append(FormatForCsv(con.UseVmId)) + .Append(FormatForCsv(con.UseEnhancedMode)) + .Append(FormatForCsv(con.RenderingEngine)) + .Append(FormatForCsv(con.RDPAuthenticationLevel)) + .Append(FormatForCsv(con.LoadBalanceInfo)) + .Append(FormatForCsv(con.Colors)) + .Append(FormatForCsv(con.Resolution)) + .Append(FormatForCsv(con.AutomaticResize)) + .Append(FormatForCsv(con.DisplayWallpaper)) + .Append(FormatForCsv(con.DisplayThemes)) + .Append(FormatForCsv(con.EnableFontSmoothing)) + .Append(FormatForCsv(con.EnableDesktopComposition)) + .Append(FormatForCsv(con.DisableFullWindowDrag)) + .Append(FormatForCsv(con.DisableMenuAnimations)) + .Append(FormatForCsv(con.DisableCursorShadow)) + .Append(FormatForCsv(con.DisableCursorBlinking)) + .Append(FormatForCsv(con.CacheBitmaps)) + .Append(FormatForCsv(con.RedirectDiskDrives)) + .Append(FormatForCsv(con.RedirectPorts)) + .Append(FormatForCsv(con.RedirectPrinters)) + .Append(FormatForCsv(con.RedirectClipboard)) + .Append(FormatForCsv(con.RedirectSmartCards)) + .Append(FormatForCsv(con.RedirectSound)) + .Append(FormatForCsv(con.RedirectKeys)) + .Append(FormatForCsv(con.PreExtApp)) + .Append(FormatForCsv(con.PostExtApp)) + .Append(FormatForCsv(con.MacAddress)) + .Append(FormatForCsv(con.UserField)) + .Append(FormatForCsv(con.ExtApp)) + .Append(FormatForCsv(con.Favorite)) + .Append(FormatForCsv(con.VNCCompression)) + .Append(FormatForCsv(con.VNCEncoding)) + .Append(FormatForCsv(con.VNCAuthMode)) + .Append(FormatForCsv(con.VNCProxyType)) + .Append(FormatForCsv(con.VNCProxyIP)) + .Append(FormatForCsv(con.VNCProxyPort)) + .Append(FormatForCsv(con.VNCProxyUsername)) + .Append(FormatForCsv(con.VNCProxyPassword)) + .Append(FormatForCsv(con.VNCColors)) + .Append(FormatForCsv(con.VNCSmartSizeMode)) + .Append(FormatForCsv(con.VNCViewOnly)) + .Append(FormatForCsv(con.RDGatewayUsageMethod)) + .Append(FormatForCsv(con.RDGatewayHostname)) + .Append(FormatForCsv(con.RDGatewayUseConnectionCredentials)) + .Append(FormatForCsv(con.RDGatewayUsername)) + .Append(FormatForCsv(con.RDGatewayPassword)) + .Append(FormatForCsv(con.RDGatewayDomain)) + .Append(FormatForCsv(con.RedirectAudioCapture)) + .Append(FormatForCsv(con.RdpVersion)) + .Append(FormatForCsv(con.StartProgram)) + .Append(FormatForCsv(con.StartProgramWorkDir)); + + + if (!_saveFilter.SaveInheritance) + return; + + sb.Append(FormatForCsv(con.Inheritance.CacheBitmaps)) + .Append(FormatForCsv(con.Inheritance.Colors)) + .Append(FormatForCsv(con.Inheritance.Description)) + .Append(FormatForCsv(con.Inheritance.DisplayThemes)) + .Append(FormatForCsv(con.Inheritance.DisplayWallpaper)) + .Append(FormatForCsv(con.Inheritance.EnableFontSmoothing)) + .Append(FormatForCsv(con.Inheritance.EnableDesktopComposition)) + .Append(FormatForCsv(con.Inheritance.DisableFullWindowDrag)) + .Append(FormatForCsv(con.Inheritance.DisableMenuAnimations)) + .Append(FormatForCsv(con.Inheritance.DisableCursorShadow)) + .Append(FormatForCsv(con.Inheritance.DisableCursorBlinking)) + .Append(FormatForCsv(con.Inheritance.Domain)) + .Append(FormatForCsv(con.Inheritance.Icon)) + .Append(FormatForCsv(con.Inheritance.Panel)) + .Append(FormatForCsv(con.Inheritance.Password)) + .Append(FormatForCsv(con.Inheritance.Port)) + .Append(FormatForCsv(con.Inheritance.Protocol)) + .Append(FormatForCsv(con.Inheritance.SSHTunnelConnectionName)) + .Append(FormatForCsv(con.Inheritance.OpeningCommand)) + .Append(FormatForCsv(con.Inheritance.SSHOptions)) + .Append(FormatForCsv(con.Inheritance.PuttySession)) + .Append(FormatForCsv(con.Inheritance.RedirectDiskDrives)) + .Append(FormatForCsv(con.Inheritance.RedirectKeys)) + .Append(FormatForCsv(con.Inheritance.RedirectPorts)) + .Append(FormatForCsv(con.Inheritance.RedirectPrinters)) + .Append(FormatForCsv(con.Inheritance.RedirectClipboard)) + .Append(FormatForCsv(con.Inheritance.RedirectSmartCards)) + .Append(FormatForCsv(con.Inheritance.RedirectSound)) + .Append(FormatForCsv(con.Inheritance.Resolution)) + .Append(FormatForCsv(con.Inheritance.AutomaticResize)) + .Append(FormatForCsv(con.Inheritance.UseConsoleSession)) + .Append(FormatForCsv(con.Inheritance.UseCredSsp)) + .Append(FormatForCsv(con.Inheritance.UseVmId)) + .Append(FormatForCsv(con.Inheritance.UseEnhancedMode)) + .Append(FormatForCsv(con.Inheritance.VmId)) + .Append(FormatForCsv(con.Inheritance.RenderingEngine)) + .Append(FormatForCsv(con.Inheritance.Username)) + .Append(FormatForCsv(con.Inheritance.RDPAuthenticationLevel)) + .Append(FormatForCsv(con.Inheritance.LoadBalanceInfo)) + .Append(FormatForCsv(con.Inheritance.PreExtApp)) + .Append(FormatForCsv(con.Inheritance.PostExtApp)) + .Append(FormatForCsv(con.Inheritance.MacAddress)) + .Append(FormatForCsv(con.Inheritance.UserField)) + .Append(FormatForCsv(con.Inheritance.Favorite)) + .Append(FormatForCsv(con.Inheritance.ExtApp)) + .Append(FormatForCsv(con.Inheritance.VNCCompression)) + .Append(FormatForCsv(con.Inheritance.VNCEncoding)) + .Append(FormatForCsv(con.Inheritance.VNCAuthMode)) + .Append(FormatForCsv(con.Inheritance.VNCProxyType)) + .Append(FormatForCsv(con.Inheritance.VNCProxyIP)) + .Append(FormatForCsv(con.Inheritance.VNCProxyPort)) + .Append(FormatForCsv(con.Inheritance.VNCProxyUsername)) + .Append(FormatForCsv(con.Inheritance.VNCProxyPassword)) + .Append(FormatForCsv(con.Inheritance.VNCColors)) + .Append(FormatForCsv(con.Inheritance.VNCSmartSizeMode)) + .Append(FormatForCsv(con.Inheritance.VNCViewOnly)) + .Append(FormatForCsv(con.Inheritance.RDGatewayUsageMethod)) + .Append(FormatForCsv(con.Inheritance.RDGatewayHostname)) + .Append(FormatForCsv(con.Inheritance.RDGatewayUseConnectionCredentials)) + .Append(FormatForCsv(con.Inheritance.RDGatewayUsername)) + .Append(FormatForCsv(con.Inheritance.RDGatewayPassword)) + .Append(FormatForCsv(con.Inheritance.RDGatewayDomain)) + .Append(FormatForCsv(con.Inheritance.RDPAlertIdleTimeout)) + .Append(FormatForCsv(con.Inheritance.RDPMinutesToIdleTimeout)) + .Append(FormatForCsv(con.Inheritance.SoundQuality)) + .Append(FormatForCsv(con.Inheritance.RedirectAudioCapture)) + .Append(FormatForCsv(con.Inheritance.RdpVersion)); + } + + private string FormatForCsv(object value) + { + var cleanedString = value.ToString().Replace(";", ""); + return cleanedString + ";"; + } + } } \ No newline at end of file diff --git a/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/DataTableDeserializer.cs b/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/DataTableDeserializer.cs index 8ae934a87..8e069ccb8 100644 --- a/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/DataTableDeserializer.cs +++ b/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/DataTableDeserializer.cs @@ -1,261 +1,263 @@ -using System; -using System.Collections.Generic; -using System.Data; -using System.Linq; -using System.Security; -using mRemoteNG.App; -using mRemoteNG.Connection; -using mRemoteNG.Connection.Protocol; -using mRemoteNG.Connection.Protocol.Http; -using mRemoteNG.Connection.Protocol.RDP; -using mRemoteNG.Connection.Protocol.VNC; -using mRemoteNG.Container; -using mRemoteNG.Security; -using mRemoteNG.Tools; -using mRemoteNG.Tree; -using mRemoteNG.Tree.Root; - -namespace mRemoteNG.Config.Serializers.ConnectionSerializers.MsSql -{ - public class DataTableDeserializer : IDeserializer - { - private readonly ICryptographyProvider _cryptographyProvider; - private readonly SecureString _decryptionKey; - - public DataTableDeserializer(ICryptographyProvider cryptographyProvider, SecureString decryptionKey) - { - _cryptographyProvider = cryptographyProvider.ThrowIfNull(nameof(cryptographyProvider)); - _decryptionKey = decryptionKey.ThrowIfNull(nameof(decryptionKey)); - } - - public ConnectionTreeModel Deserialize(DataTable table) - { - var connectionList = CreateNodesFromTable(table); - var connectionTreeModel = CreateNodeHierarchy(connectionList, table); - Runtime.ConnectionsService.IsConnectionsFileLoaded = true; - return connectionTreeModel; - } - - private List CreateNodesFromTable(DataTable table) - { - var nodeList = new List(); - foreach (DataRow row in table.Rows) - { - // ReSharper disable once SwitchStatementMissingSomeCases - switch ((string)row["Type"]) - { - case "Connection": - nodeList.Add(DeserializeConnectionInfo(row)); - break; - case "Container": - nodeList.Add(DeserializeContainerInfo(row)); - break; - } - } - - return nodeList; - } - - private ConnectionInfo DeserializeConnectionInfo(DataRow row) - { - var connectionId = row["ConstantID"] as string ?? Guid.NewGuid().ToString(); - var connectionInfo = new ConnectionInfo(connectionId); - PopulateConnectionInfoFromDatarow(row, connectionInfo); - return connectionInfo; - } - - private ContainerInfo DeserializeContainerInfo(DataRow row) - { - var containerId = row["ConstantID"] as string ?? Guid.NewGuid().ToString(); - var containerInfo = new ContainerInfo(containerId); - PopulateConnectionInfoFromDatarow(row, containerInfo); - return containerInfo; - } - - private void PopulateConnectionInfoFromDatarow(DataRow dataRow, ConnectionInfo connectionInfo) - { - connectionInfo.Name = (string)dataRow["Name"]; - - // This throws a NPE - Parent is a connectionInfo object which will be null at this point. - // The Parent object is linked properly later in CreateNodeHierarchy() - //connectionInfo.Parent.ConstantID = (string)dataRow["ParentID"]; - - connectionInfo.Description = (string)dataRow["Description"]; - connectionInfo.Icon = (string)dataRow["Icon"]; - connectionInfo.Panel = (string)dataRow["Panel"]; - connectionInfo.Username = (string)dataRow["Username"]; - connectionInfo.Domain = (string)dataRow["Domain"]; - connectionInfo.Password = DecryptValue((string)dataRow["Password"]); - connectionInfo.Hostname = (string)dataRow["Hostname"]; - connectionInfo.VmId = (string)dataRow["VmId"]; - connectionInfo.UseEnhancedMode = (bool)dataRow["UseEnhancedMode"]; - connectionInfo.Protocol = (ProtocolType)Enum.Parse(typeof(ProtocolType), (string)dataRow["Protocol"]); - connectionInfo.SSHTunnelConnectionName = (string)dataRow["SSHTunnelConnectionName"]; - connectionInfo.OpeningCommand = (string)dataRow["OpeningCommand"]; - connectionInfo.SSHOptions = (string)dataRow["SSHOptions"]; - connectionInfo.PuttySession = (string)dataRow["PuttySession"]; - connectionInfo.Port = (int)dataRow["Port"]; - connectionInfo.UseConsoleSession = (bool)dataRow["ConnectToConsole"]; - connectionInfo.UseCredSsp = (bool)dataRow["UseCredSsp"]; - connectionInfo.UseVmId = (bool)dataRow["UseVmId"]; - connectionInfo.RenderingEngine = (HTTPBase.RenderingEngine)Enum.Parse(typeof(HTTPBase.RenderingEngine), (string)dataRow["RenderingEngine"]); - connectionInfo.RDPAuthenticationLevel = (AuthenticationLevel)Enum.Parse(typeof(AuthenticationLevel), (string)dataRow["RDPAuthenticationLevel"]); - connectionInfo.RDPMinutesToIdleTimeout = (int)dataRow["RDPMinutesToIdleTimeout"]; - connectionInfo.RDPAlertIdleTimeout = (bool)dataRow["RDPAlertIdleTimeout"]; - connectionInfo.LoadBalanceInfo = (string)dataRow["LoadBalanceInfo"]; - connectionInfo.Colors = (RDPColors)Enum.Parse(typeof(RDPColors), (string)dataRow["Colors"]); - connectionInfo.Resolution = (RDPResolutions)Enum.Parse(typeof(RDPResolutions), (string)dataRow["Resolution"]); - connectionInfo.AutomaticResize = (bool)dataRow["AutomaticResize"]; - connectionInfo.DisplayWallpaper = (bool)dataRow["DisplayWallpaper"]; - connectionInfo.DisplayThemes = (bool)dataRow["DisplayThemes"]; - connectionInfo.EnableFontSmoothing = (bool)dataRow["EnableFontSmoothing"]; - connectionInfo.EnableDesktopComposition = (bool)dataRow["EnableDesktopComposition"]; - connectionInfo.DisableFullWindowDrag = (bool)dataRow["DisableFullWindowDrag"]; - connectionInfo.DisableMenuAnimations = (bool)dataRow["DisableMenuAnimations"]; - connectionInfo.DisableCursorShadow = (bool)dataRow["DisableCursorShadow"]; - connectionInfo.DisableCursorBlinking = (bool)dataRow["DisableCursorBlinking"]; - connectionInfo.CacheBitmaps = (bool)dataRow["CacheBitmaps"]; - connectionInfo.RedirectDiskDrives = (bool)dataRow["RedirectDiskDrives"]; - connectionInfo.RedirectPorts = (bool)dataRow["RedirectPorts"]; - connectionInfo.RedirectPrinters = (bool)dataRow["RedirectPrinters"]; - connectionInfo.RedirectClipboard = (bool)dataRow["RedirectClipboard"]; - connectionInfo.RedirectSmartCards = (bool)dataRow["RedirectSmartCards"]; - connectionInfo.RedirectSound = (RDPSounds)Enum.Parse(typeof(RDPSounds), (string)dataRow["RedirectSound"]); - connectionInfo.SoundQuality = (RDPSoundQuality)Enum.Parse(typeof(RDPSoundQuality), (string)dataRow["SoundQuality"]); - connectionInfo.RedirectAudioCapture = (bool)dataRow["RedirectAudioCapture"]; - connectionInfo.RedirectKeys = (bool)dataRow["RedirectKeys"]; - connectionInfo.OpeningCommand = (string)dataRow["OpeningCommand"]; - connectionInfo.PreExtApp = (string)dataRow["PreExtApp"]; - connectionInfo.PostExtApp = (string)dataRow["PostExtApp"]; - connectionInfo.MacAddress = (string)dataRow["MacAddress"]; - connectionInfo.UserField = (string)dataRow["UserField"]; - connectionInfo.ExtApp = (string)dataRow["ExtApp"]; - connectionInfo.VNCCompression = (ProtocolVNC.Compression)Enum.Parse(typeof(ProtocolVNC.Compression), (string)dataRow["VNCCompression"]); - connectionInfo.VNCEncoding = (ProtocolVNC.Encoding)Enum.Parse(typeof(ProtocolVNC.Encoding), (string)dataRow["VNCEncoding"]); - connectionInfo.VNCAuthMode = (ProtocolVNC.AuthMode)Enum.Parse(typeof(ProtocolVNC.AuthMode), (string)dataRow["VNCAuthMode"]); - connectionInfo.VNCProxyType = (ProtocolVNC.ProxyType)Enum.Parse(typeof(ProtocolVNC.ProxyType), (string)dataRow["VNCProxyType"]); - connectionInfo.VNCProxyIP = (string)dataRow["VNCProxyIP"]; - connectionInfo.VNCProxyPort = (int)dataRow["VNCProxyPort"]; - connectionInfo.VNCProxyUsername = (string)dataRow["VNCProxyUsername"]; - connectionInfo.VNCProxyPassword = DecryptValue((string)dataRow["VNCProxyPassword"]); - connectionInfo.VNCColors = (ProtocolVNC.Colors)Enum.Parse(typeof(ProtocolVNC.Colors), (string)dataRow["VNCColors"]); - connectionInfo.VNCSmartSizeMode = (ProtocolVNC.SmartSizeMode)Enum.Parse(typeof(ProtocolVNC.SmartSizeMode), (string)dataRow["VNCSmartSizeMode"]); - connectionInfo.VNCViewOnly = (bool)dataRow["VNCViewOnly"]; - connectionInfo.RDGatewayUsageMethod = (RDGatewayUsageMethod)Enum.Parse(typeof(RDGatewayUsageMethod), (string)dataRow["RDGatewayUsageMethod"]); - connectionInfo.RDGatewayHostname = (string)dataRow["RDGatewayHostname"]; - connectionInfo.RDGatewayUseConnectionCredentials = (RDGatewayUseConnectionCredentials)Enum.Parse(typeof(RDGatewayUseConnectionCredentials), (string)dataRow["RDGatewayUseConnectionCredentials"]); - connectionInfo.RDGatewayUsername = (string)dataRow["RDGatewayUsername"]; - connectionInfo.RDGatewayPassword = DecryptValue((string)dataRow["RDGatewayPassword"]); - connectionInfo.RDGatewayDomain = (string)dataRow["RDGatewayDomain"]; - - if (!dataRow.IsNull("RdpVersion")) // table allows null values which must be handled - if (Enum.TryParse((string)dataRow["RdpVersion"], true, out RdpVersion rdpVersion)) - connectionInfo.RdpVersion = rdpVersion; - - connectionInfo.Inheritance.CacheBitmaps = (bool)dataRow["InheritCacheBitmaps"]; - connectionInfo.Inheritance.Colors = (bool)dataRow["InheritColors"]; - connectionInfo.Inheritance.Description = (bool)dataRow["InheritDescription"]; - connectionInfo.Inheritance.DisplayThemes = (bool)dataRow["InheritDisplayThemes"]; - connectionInfo.Inheritance.DisplayWallpaper = (bool)dataRow["InheritDisplayWallpaper"]; - connectionInfo.Inheritance.EnableFontSmoothing = (bool)dataRow["InheritEnableFontSmoothing"]; - connectionInfo.Inheritance.EnableDesktopComposition = (bool)dataRow["InheritEnableDesktopComposition"]; - connectionInfo.Inheritance.DisableFullWindowDrag = (bool)dataRow["InheritDisableFullWindowDrag"]; - connectionInfo.Inheritance.DisableMenuAnimations = (bool)dataRow["InheritDisableMenuAnimations"]; - connectionInfo.Inheritance.DisableCursorShadow = (bool)dataRow["InheritDisableCursorShadow"]; - connectionInfo.Inheritance.DisableCursorBlinking = (bool)dataRow["InheritDisableCursorBlinking"]; - connectionInfo.Inheritance.Domain = (bool)dataRow["InheritDomain"]; - connectionInfo.Inheritance.Icon = (bool)dataRow["InheritIcon"]; - connectionInfo.Inheritance.Panel = (bool)dataRow["InheritPanel"]; - connectionInfo.Inheritance.Password = (bool)dataRow["InheritPassword"]; - connectionInfo.Inheritance.Port = (bool)dataRow["InheritPort"]; - connectionInfo.Inheritance.Protocol = (bool)dataRow["InheritProtocol"]; - connectionInfo.Inheritance.SSHTunnelConnectionName = (bool)dataRow["InheritSSHTunnelConnectionName"]; - connectionInfo.Inheritance.OpeningCommand = (bool)dataRow["InheritOpeningCommand"]; - connectionInfo.Inheritance.SSHOptions = (bool)dataRow["InheritSSHOptions"]; - connectionInfo.Inheritance.PuttySession = (bool)dataRow["InheritPuttySession"]; - connectionInfo.Inheritance.RedirectDiskDrives = (bool)dataRow["InheritRedirectDiskDrives"]; - connectionInfo.Inheritance.RedirectKeys = (bool)dataRow["InheritRedirectKeys"]; - connectionInfo.Inheritance.RedirectPorts = (bool)dataRow["InheritRedirectPorts"]; - connectionInfo.Inheritance.RedirectPrinters = (bool)dataRow["InheritRedirectPrinters"]; - connectionInfo.Inheritance.RedirectClipboard = (bool)dataRow["InheritRedirectClipboard"]; - connectionInfo.Inheritance.RedirectSmartCards = (bool)dataRow["InheritRedirectSmartCards"]; - connectionInfo.Inheritance.RedirectSound = (bool)dataRow["InheritRedirectSound"]; - connectionInfo.Inheritance.SoundQuality = (bool)dataRow["InheritSoundQuality"]; - connectionInfo.Inheritance.RedirectAudioCapture = (bool)dataRow["InheritRedirectAudioCapture"]; - connectionInfo.Inheritance.Resolution = (bool)dataRow["InheritResolution"]; - connectionInfo.Inheritance.AutomaticResize = (bool)dataRow["InheritAutomaticResize"]; - connectionInfo.Inheritance.UseConsoleSession = (bool)dataRow["InheritUseConsoleSession"]; - connectionInfo.Inheritance.UseCredSsp = (bool)dataRow["InheritUseCredSsp"]; - connectionInfo.Inheritance.UseVmId = (bool)dataRow["InheritUseVmId"]; - connectionInfo.Inheritance.UseEnhancedMode = (bool)dataRow["InheritUseEnhancedMode"]; - connectionInfo.Inheritance.VmId = (bool)dataRow["InheritVmId"]; - connectionInfo.Inheritance.RenderingEngine = (bool)dataRow["InheritRenderingEngine"]; - connectionInfo.Inheritance.Username = (bool)dataRow["InheritUsername"]; - connectionInfo.Inheritance.RDPAuthenticationLevel = (bool)dataRow["InheritRDPAuthenticationLevel"]; - connectionInfo.Inheritance.RDPAlertIdleTimeout = (bool)dataRow["InheritRDPAlertIdleTimeout"]; - connectionInfo.Inheritance.RDPMinutesToIdleTimeout = (bool)dataRow["InheritRDPMinutesToIdleTimeout"]; - connectionInfo.Inheritance.LoadBalanceInfo = (bool)dataRow["InheritLoadBalanceInfo"]; - connectionInfo.Inheritance.OpeningCommand = (bool)dataRow["InheritOpeningCommand"]; - connectionInfo.Inheritance.PreExtApp = (bool)dataRow["InheritPreExtApp"]; - connectionInfo.Inheritance.PostExtApp = (bool)dataRow["InheritPostExtApp"]; - connectionInfo.Inheritance.MacAddress = (bool)dataRow["InheritMacAddress"]; - connectionInfo.Inheritance.UserField = (bool)dataRow["InheritUserField"]; - connectionInfo.Inheritance.ExtApp = (bool)dataRow["InheritExtApp"]; - connectionInfo.Inheritance.VNCCompression = (bool)dataRow["InheritVNCCompression"]; - connectionInfo.Inheritance.VNCEncoding = (bool)dataRow["InheritVNCEncoding"]; - connectionInfo.Inheritance.VNCAuthMode = (bool)dataRow["InheritVNCAuthMode"]; - connectionInfo.Inheritance.VNCProxyType = (bool)dataRow["InheritVNCProxyType"]; - connectionInfo.Inheritance.VNCProxyIP = (bool)dataRow["InheritVNCProxyIP"]; - connectionInfo.Inheritance.VNCProxyPort = (bool)dataRow["InheritVNCProxyPort"]; - connectionInfo.Inheritance.VNCProxyUsername = (bool)dataRow["InheritVNCProxyUsername"]; - connectionInfo.Inheritance.VNCProxyPassword = (bool)dataRow["InheritVNCProxyPassword"]; - connectionInfo.Inheritance.VNCColors = (bool)dataRow["InheritVNCColors"]; - connectionInfo.Inheritance.VNCSmartSizeMode = (bool)dataRow["InheritVNCSmartSizeMode"]; - connectionInfo.Inheritance.VNCViewOnly = (bool)dataRow["InheritVNCViewOnly"]; - connectionInfo.Inheritance.RDGatewayUsageMethod = (bool)dataRow["InheritRDGatewayUsageMethod"]; - connectionInfo.Inheritance.RDGatewayHostname = (bool)dataRow["InheritRDGatewayHostname"]; - connectionInfo.Inheritance.RDGatewayUseConnectionCredentials = (bool)dataRow["InheritRDGatewayUseConnectionCredentials"]; - connectionInfo.Inheritance.RDGatewayUsername = (bool)dataRow["InheritRDGatewayUsername"]; - connectionInfo.Inheritance.RDGatewayPassword = (bool)dataRow["InheritRDGatewayPassword"]; - connectionInfo.Inheritance.RDGatewayDomain = (bool)dataRow["InheritRDGatewayDomain"]; - connectionInfo.Inheritance.RdpVersion = (bool)dataRow["InheritRdpVersion"]; - } - - private string DecryptValue(string cipherText) - { - try - { - return _cryptographyProvider.Decrypt(cipherText, _decryptionKey); - } - catch (EncryptionException) - { - // value may not be encrypted - return cipherText; - } - } - - private ConnectionTreeModel CreateNodeHierarchy(List connectionList, DataTable dataTable) - { - var connectionTreeModel = new ConnectionTreeModel(); - var rootNode = new RootNodeInfo(RootNodeType.Connection, "0") - { - PasswordString = _decryptionKey.ConvertToUnsecureString() - }; - connectionTreeModel.AddRootNode(rootNode); - - foreach (DataRow row in dataTable.Rows) - { - var id = (string)row["ConstantID"]; - var connectionInfo = connectionList.First(node => node.ConstantID == id); - var parentId = (string)row["ParentID"]; - if (parentId == "0" || connectionList.All(node => node.ConstantID != parentId)) - rootNode.AddChild(connectionInfo); - else - (connectionList.First(node => node.ConstantID == parentId) as ContainerInfo)?.AddChild( - connectionInfo); - } - - return connectionTreeModel; - } - } +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Security; +using mRemoteNG.App; +using mRemoteNG.Connection; +using mRemoteNG.Connection.Protocol; +using mRemoteNG.Connection.Protocol.Http; +using mRemoteNG.Connection.Protocol.RDP; +using mRemoteNG.Connection.Protocol.VNC; +using mRemoteNG.Container; +using mRemoteNG.Security; +using mRemoteNG.Tools; +using mRemoteNG.Tree; +using mRemoteNG.Tree.Root; + +namespace mRemoteNG.Config.Serializers.ConnectionSerializers.MsSql +{ + public class DataTableDeserializer : IDeserializer + { + private readonly ICryptographyProvider _cryptographyProvider; + private readonly SecureString _decryptionKey; + + public DataTableDeserializer(ICryptographyProvider cryptographyProvider, SecureString decryptionKey) + { + _cryptographyProvider = cryptographyProvider.ThrowIfNull(nameof(cryptographyProvider)); + _decryptionKey = decryptionKey.ThrowIfNull(nameof(decryptionKey)); + } + + public ConnectionTreeModel Deserialize(DataTable table) + { + var connectionList = CreateNodesFromTable(table); + var connectionTreeModel = CreateNodeHierarchy(connectionList, table); + Runtime.ConnectionsService.IsConnectionsFileLoaded = true; + return connectionTreeModel; + } + + private List CreateNodesFromTable(DataTable table) + { + var nodeList = new List(); + foreach (DataRow row in table.Rows) + { + // ReSharper disable once SwitchStatementMissingSomeCases + switch ((string)row["Type"]) + { + case "Connection": + nodeList.Add(DeserializeConnectionInfo(row)); + break; + case "Container": + nodeList.Add(DeserializeContainerInfo(row)); + break; + } + } + + return nodeList; + } + + private ConnectionInfo DeserializeConnectionInfo(DataRow row) + { + var connectionId = row["ConstantID"] as string ?? Guid.NewGuid().ToString(); + var connectionInfo = new ConnectionInfo(connectionId); + PopulateConnectionInfoFromDatarow(row, connectionInfo); + return connectionInfo; + } + + private ContainerInfo DeserializeContainerInfo(DataRow row) + { + var containerId = row["ConstantID"] as string ?? Guid.NewGuid().ToString(); + var containerInfo = new ContainerInfo(containerId); + PopulateConnectionInfoFromDatarow(row, containerInfo); + return containerInfo; + } + + private void PopulateConnectionInfoFromDatarow(DataRow dataRow, ConnectionInfo connectionInfo) + { + connectionInfo.Name = (string)dataRow["Name"]; + + // This throws a NPE - Parent is a connectionInfo object which will be null at this point. + // The Parent object is linked properly later in CreateNodeHierarchy() + //connectionInfo.Parent.ConstantID = (string)dataRow["ParentID"]; + + connectionInfo.Description = (string)dataRow["Description"]; + connectionInfo.Icon = (string)dataRow["Icon"]; + connectionInfo.Panel = (string)dataRow["Panel"]; + connectionInfo.Username = (string)dataRow["Username"]; + connectionInfo.Domain = (string)dataRow["Domain"]; + connectionInfo.Password = DecryptValue((string)dataRow["Password"]); + connectionInfo.Hostname = (string)dataRow["Hostname"]; + connectionInfo.VmId = (string)dataRow["VmId"]; + connectionInfo.UseEnhancedMode = (bool)dataRow["UseEnhancedMode"]; + connectionInfo.Protocol = (ProtocolType)Enum.Parse(typeof(ProtocolType), (string)dataRow["Protocol"]); + connectionInfo.SSHTunnelConnectionName = (string)dataRow["SSHTunnelConnectionName"]; + connectionInfo.OpeningCommand = (string)dataRow["OpeningCommand"]; + connectionInfo.SSHOptions = (string)dataRow["SSHOptions"]; + connectionInfo.PuttySession = (string)dataRow["PuttySession"]; + connectionInfo.Port = (int)dataRow["Port"]; + connectionInfo.UseConsoleSession = (bool)dataRow["ConnectToConsole"]; + connectionInfo.UseCredSsp = (bool)dataRow["UseCredSsp"]; + connectionInfo.UseVmId = (bool)dataRow["UseVmId"]; + connectionInfo.RenderingEngine = (HTTPBase.RenderingEngine)Enum.Parse(typeof(HTTPBase.RenderingEngine), (string)dataRow["RenderingEngine"]); + connectionInfo.RDPAuthenticationLevel = (AuthenticationLevel)Enum.Parse(typeof(AuthenticationLevel), (string)dataRow["RDPAuthenticationLevel"]); + connectionInfo.RDPMinutesToIdleTimeout = (int)dataRow["RDPMinutesToIdleTimeout"]; + connectionInfo.RDPAlertIdleTimeout = (bool)dataRow["RDPAlertIdleTimeout"]; + connectionInfo.LoadBalanceInfo = (string)dataRow["LoadBalanceInfo"]; + connectionInfo.Colors = (RDPColors)Enum.Parse(typeof(RDPColors), (string)dataRow["Colors"]); + connectionInfo.Resolution = (RDPResolutions)Enum.Parse(typeof(RDPResolutions), (string)dataRow["Resolution"]); + connectionInfo.AutomaticResize = (bool)dataRow["AutomaticResize"]; + connectionInfo.DisplayWallpaper = (bool)dataRow["DisplayWallpaper"]; + connectionInfo.DisplayThemes = (bool)dataRow["DisplayThemes"]; + connectionInfo.EnableFontSmoothing = (bool)dataRow["EnableFontSmoothing"]; + connectionInfo.EnableDesktopComposition = (bool)dataRow["EnableDesktopComposition"]; + connectionInfo.DisableFullWindowDrag = (bool)dataRow["DisableFullWindowDrag"]; + connectionInfo.DisableMenuAnimations = (bool)dataRow["DisableMenuAnimations"]; + connectionInfo.DisableCursorShadow = (bool)dataRow["DisableCursorShadow"]; + connectionInfo.DisableCursorBlinking = (bool)dataRow["DisableCursorBlinking"]; + connectionInfo.CacheBitmaps = (bool)dataRow["CacheBitmaps"]; + connectionInfo.RedirectDiskDrives = (bool)dataRow["RedirectDiskDrives"]; + connectionInfo.RedirectPorts = (bool)dataRow["RedirectPorts"]; + connectionInfo.RedirectPrinters = (bool)dataRow["RedirectPrinters"]; + connectionInfo.RedirectClipboard = (bool)dataRow["RedirectClipboard"]; + connectionInfo.RedirectSmartCards = (bool)dataRow["RedirectSmartCards"]; + connectionInfo.RedirectSound = (RDPSounds)Enum.Parse(typeof(RDPSounds), (string)dataRow["RedirectSound"]); + connectionInfo.SoundQuality = (RDPSoundQuality)Enum.Parse(typeof(RDPSoundQuality), (string)dataRow["SoundQuality"]); + connectionInfo.RedirectAudioCapture = (bool)dataRow["RedirectAudioCapture"]; + connectionInfo.StartProgram = (string)dataRow["StartProgram"]; + connectionInfo.StartProgramWorkDir = (string)dataRow["StartProgramWorkDir"]; + connectionInfo.RedirectKeys = (bool)dataRow["RedirectKeys"]; + connectionInfo.OpeningCommand = (string)dataRow["OpeningCommand"]; + connectionInfo.PreExtApp = (string)dataRow["PreExtApp"]; + connectionInfo.PostExtApp = (string)dataRow["PostExtApp"]; + connectionInfo.MacAddress = (string)dataRow["MacAddress"]; + connectionInfo.UserField = (string)dataRow["UserField"]; + connectionInfo.ExtApp = (string)dataRow["ExtApp"]; + connectionInfo.VNCCompression = (ProtocolVNC.Compression)Enum.Parse(typeof(ProtocolVNC.Compression), (string)dataRow["VNCCompression"]); + connectionInfo.VNCEncoding = (ProtocolVNC.Encoding)Enum.Parse(typeof(ProtocolVNC.Encoding), (string)dataRow["VNCEncoding"]); + connectionInfo.VNCAuthMode = (ProtocolVNC.AuthMode)Enum.Parse(typeof(ProtocolVNC.AuthMode), (string)dataRow["VNCAuthMode"]); + connectionInfo.VNCProxyType = (ProtocolVNC.ProxyType)Enum.Parse(typeof(ProtocolVNC.ProxyType), (string)dataRow["VNCProxyType"]); + connectionInfo.VNCProxyIP = (string)dataRow["VNCProxyIP"]; + connectionInfo.VNCProxyPort = (int)dataRow["VNCProxyPort"]; + connectionInfo.VNCProxyUsername = (string)dataRow["VNCProxyUsername"]; + connectionInfo.VNCProxyPassword = DecryptValue((string)dataRow["VNCProxyPassword"]); + connectionInfo.VNCColors = (ProtocolVNC.Colors)Enum.Parse(typeof(ProtocolVNC.Colors), (string)dataRow["VNCColors"]); + connectionInfo.VNCSmartSizeMode = (ProtocolVNC.SmartSizeMode)Enum.Parse(typeof(ProtocolVNC.SmartSizeMode), (string)dataRow["VNCSmartSizeMode"]); + connectionInfo.VNCViewOnly = (bool)dataRow["VNCViewOnly"]; + connectionInfo.RDGatewayUsageMethod = (RDGatewayUsageMethod)Enum.Parse(typeof(RDGatewayUsageMethod), (string)dataRow["RDGatewayUsageMethod"]); + connectionInfo.RDGatewayHostname = (string)dataRow["RDGatewayHostname"]; + connectionInfo.RDGatewayUseConnectionCredentials = (RDGatewayUseConnectionCredentials)Enum.Parse(typeof(RDGatewayUseConnectionCredentials), (string)dataRow["RDGatewayUseConnectionCredentials"]); + connectionInfo.RDGatewayUsername = (string)dataRow["RDGatewayUsername"]; + connectionInfo.RDGatewayPassword = DecryptValue((string)dataRow["RDGatewayPassword"]); + connectionInfo.RDGatewayDomain = (string)dataRow["RDGatewayDomain"]; + + if (!dataRow.IsNull("RdpVersion")) // table allows null values which must be handled + if (Enum.TryParse((string)dataRow["RdpVersion"], true, out RdpVersion rdpVersion)) + connectionInfo.RdpVersion = rdpVersion; + + connectionInfo.Inheritance.CacheBitmaps = (bool)dataRow["InheritCacheBitmaps"]; + connectionInfo.Inheritance.Colors = (bool)dataRow["InheritColors"]; + connectionInfo.Inheritance.Description = (bool)dataRow["InheritDescription"]; + connectionInfo.Inheritance.DisplayThemes = (bool)dataRow["InheritDisplayThemes"]; + connectionInfo.Inheritance.DisplayWallpaper = (bool)dataRow["InheritDisplayWallpaper"]; + connectionInfo.Inheritance.EnableFontSmoothing = (bool)dataRow["InheritEnableFontSmoothing"]; + connectionInfo.Inheritance.EnableDesktopComposition = (bool)dataRow["InheritEnableDesktopComposition"]; + connectionInfo.Inheritance.DisableFullWindowDrag = (bool)dataRow["InheritDisableFullWindowDrag"]; + connectionInfo.Inheritance.DisableMenuAnimations = (bool)dataRow["InheritDisableMenuAnimations"]; + connectionInfo.Inheritance.DisableCursorShadow = (bool)dataRow["InheritDisableCursorShadow"]; + connectionInfo.Inheritance.DisableCursorBlinking = (bool)dataRow["InheritDisableCursorBlinking"]; + connectionInfo.Inheritance.Domain = (bool)dataRow["InheritDomain"]; + connectionInfo.Inheritance.Icon = (bool)dataRow["InheritIcon"]; + connectionInfo.Inheritance.Panel = (bool)dataRow["InheritPanel"]; + connectionInfo.Inheritance.Password = (bool)dataRow["InheritPassword"]; + connectionInfo.Inheritance.Port = (bool)dataRow["InheritPort"]; + connectionInfo.Inheritance.Protocol = (bool)dataRow["InheritProtocol"]; + connectionInfo.Inheritance.SSHTunnelConnectionName = (bool)dataRow["InheritSSHTunnelConnectionName"]; + connectionInfo.Inheritance.OpeningCommand = (bool)dataRow["InheritOpeningCommand"]; + connectionInfo.Inheritance.SSHOptions = (bool)dataRow["InheritSSHOptions"]; + connectionInfo.Inheritance.PuttySession = (bool)dataRow["InheritPuttySession"]; + connectionInfo.Inheritance.RedirectDiskDrives = (bool)dataRow["InheritRedirectDiskDrives"]; + connectionInfo.Inheritance.RedirectKeys = (bool)dataRow["InheritRedirectKeys"]; + connectionInfo.Inheritance.RedirectPorts = (bool)dataRow["InheritRedirectPorts"]; + connectionInfo.Inheritance.RedirectPrinters = (bool)dataRow["InheritRedirectPrinters"]; + connectionInfo.Inheritance.RedirectClipboard = (bool)dataRow["InheritRedirectClipboard"]; + connectionInfo.Inheritance.RedirectSmartCards = (bool)dataRow["InheritRedirectSmartCards"]; + connectionInfo.Inheritance.RedirectSound = (bool)dataRow["InheritRedirectSound"]; + connectionInfo.Inheritance.SoundQuality = (bool)dataRow["InheritSoundQuality"]; + connectionInfo.Inheritance.RedirectAudioCapture = (bool)dataRow["InheritRedirectAudioCapture"]; + connectionInfo.Inheritance.Resolution = (bool)dataRow["InheritResolution"]; + connectionInfo.Inheritance.AutomaticResize = (bool)dataRow["InheritAutomaticResize"]; + connectionInfo.Inheritance.UseConsoleSession = (bool)dataRow["InheritUseConsoleSession"]; + connectionInfo.Inheritance.UseCredSsp = (bool)dataRow["InheritUseCredSsp"]; + connectionInfo.Inheritance.UseVmId = (bool)dataRow["InheritUseVmId"]; + connectionInfo.Inheritance.UseEnhancedMode = (bool)dataRow["InheritUseEnhancedMode"]; + connectionInfo.Inheritance.VmId = (bool)dataRow["InheritVmId"]; + connectionInfo.Inheritance.RenderingEngine = (bool)dataRow["InheritRenderingEngine"]; + connectionInfo.Inheritance.Username = (bool)dataRow["InheritUsername"]; + connectionInfo.Inheritance.RDPAuthenticationLevel = (bool)dataRow["InheritRDPAuthenticationLevel"]; + connectionInfo.Inheritance.RDPAlertIdleTimeout = (bool)dataRow["InheritRDPAlertIdleTimeout"]; + connectionInfo.Inheritance.RDPMinutesToIdleTimeout = (bool)dataRow["InheritRDPMinutesToIdleTimeout"]; + connectionInfo.Inheritance.LoadBalanceInfo = (bool)dataRow["InheritLoadBalanceInfo"]; + connectionInfo.Inheritance.OpeningCommand = (bool)dataRow["InheritOpeningCommand"]; + connectionInfo.Inheritance.PreExtApp = (bool)dataRow["InheritPreExtApp"]; + connectionInfo.Inheritance.PostExtApp = (bool)dataRow["InheritPostExtApp"]; + connectionInfo.Inheritance.MacAddress = (bool)dataRow["InheritMacAddress"]; + connectionInfo.Inheritance.UserField = (bool)dataRow["InheritUserField"]; + connectionInfo.Inheritance.ExtApp = (bool)dataRow["InheritExtApp"]; + connectionInfo.Inheritance.VNCCompression = (bool)dataRow["InheritVNCCompression"]; + connectionInfo.Inheritance.VNCEncoding = (bool)dataRow["InheritVNCEncoding"]; + connectionInfo.Inheritance.VNCAuthMode = (bool)dataRow["InheritVNCAuthMode"]; + connectionInfo.Inheritance.VNCProxyType = (bool)dataRow["InheritVNCProxyType"]; + connectionInfo.Inheritance.VNCProxyIP = (bool)dataRow["InheritVNCProxyIP"]; + connectionInfo.Inheritance.VNCProxyPort = (bool)dataRow["InheritVNCProxyPort"]; + connectionInfo.Inheritance.VNCProxyUsername = (bool)dataRow["InheritVNCProxyUsername"]; + connectionInfo.Inheritance.VNCProxyPassword = (bool)dataRow["InheritVNCProxyPassword"]; + connectionInfo.Inheritance.VNCColors = (bool)dataRow["InheritVNCColors"]; + connectionInfo.Inheritance.VNCSmartSizeMode = (bool)dataRow["InheritVNCSmartSizeMode"]; + connectionInfo.Inheritance.VNCViewOnly = (bool)dataRow["InheritVNCViewOnly"]; + connectionInfo.Inheritance.RDGatewayUsageMethod = (bool)dataRow["InheritRDGatewayUsageMethod"]; + connectionInfo.Inheritance.RDGatewayHostname = (bool)dataRow["InheritRDGatewayHostname"]; + connectionInfo.Inheritance.RDGatewayUseConnectionCredentials = (bool)dataRow["InheritRDGatewayUseConnectionCredentials"]; + connectionInfo.Inheritance.RDGatewayUsername = (bool)dataRow["InheritRDGatewayUsername"]; + connectionInfo.Inheritance.RDGatewayPassword = (bool)dataRow["InheritRDGatewayPassword"]; + connectionInfo.Inheritance.RDGatewayDomain = (bool)dataRow["InheritRDGatewayDomain"]; + connectionInfo.Inheritance.RdpVersion = (bool)dataRow["InheritRdpVersion"]; + } + + private string DecryptValue(string cipherText) + { + try + { + return _cryptographyProvider.Decrypt(cipherText, _decryptionKey); + } + catch (EncryptionException) + { + // value may not be encrypted + return cipherText; + } + } + + private ConnectionTreeModel CreateNodeHierarchy(List connectionList, DataTable dataTable) + { + var connectionTreeModel = new ConnectionTreeModel(); + var rootNode = new RootNodeInfo(RootNodeType.Connection, "0") + { + PasswordString = _decryptionKey.ConvertToUnsecureString() + }; + connectionTreeModel.AddRootNode(rootNode); + + foreach (DataRow row in dataTable.Rows) + { + var id = (string)row["ConstantID"]; + var connectionInfo = connectionList.First(node => node.ConstantID == id); + var parentId = (string)row["ParentID"]; + if (parentId == "0" || connectionList.All(node => node.ConstantID != parentId)) + rootNode.AddChild(connectionInfo); + else + (connectionList.First(node => node.ConstantID == parentId) as ContainerInfo)?.AddChild( + connectionInfo); + } + + return connectionTreeModel; + } + } } \ No newline at end of file diff --git a/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/DataTableSerializer.cs b/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/DataTableSerializer.cs index 34a4834ab..f92bc20b8 100644 --- a/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/DataTableSerializer.cs +++ b/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/DataTableSerializer.cs @@ -1,724 +1,739 @@ -using System; -using System.Collections.Generic; -using System.Data; -using System.Linq; -using System.Security; -using mRemoteNG.Connection; -using mRemoteNG.Container; -using mRemoteNG.Security; -using mRemoteNG.Tools; -using mRemoteNG.Tree; -using mRemoteNG.Tree.Root; - -namespace mRemoteNG.Config.Serializers.ConnectionSerializers.MsSql -{ - public class DataTableSerializer : ISerializer - { - public readonly int DELETE = 0; - private readonly ICryptographyProvider _cryptographyProvider; - private readonly SecureString _encryptionKey; - private DataTable _dataTable; - private DataTable _sourceDataTable; - private Dictionary sourcePrimaryKeyDict = new Dictionary(); - private const string TableName = "tblCons"; - private readonly SaveFilter _saveFilter; - private int _currentNodeIndex; - - public Version Version { get; } = new Version(2, 8); - - public DataTableSerializer(SaveFilter saveFilter, - ICryptographyProvider cryptographyProvider, - SecureString encryptionKey) - { - _saveFilter = saveFilter.ThrowIfNull(nameof(saveFilter)); - _cryptographyProvider = cryptographyProvider.ThrowIfNull(nameof(cryptographyProvider)); - _encryptionKey = encryptionKey.ThrowIfNull(nameof(encryptionKey)); - } - - public void SetSourceDataTable(DataTable sourceDataTable) - { - _sourceDataTable = sourceDataTable; - } - - - public DataTable Serialize(ConnectionTreeModel connectionTreeModel) - { - try - { - _dataTable = BuildTable(); - _currentNodeIndex = 0; - var rootNode = connectionTreeModel.RootNodes.First(node => node is RootNodeInfo); - return Serialize(rootNode); - } - catch - { - return _dataTable; - } - } - - public DataTable Serialize(ConnectionInfo serializationTarget) - { - _dataTable = BuildTable(); - _currentNodeIndex = 0; - // Register add or update row - SerializeNodesRecursive(serializationTarget); - var entryToDelete = sourcePrimaryKeyDict.Keys.ToList(); - foreach( var entry in entryToDelete) - { - _dataTable.Rows.Find(entry).Delete(); - } - return _dataTable; - } - - private DataTable BuildTable() - { - DataTable dataTable; - if (_sourceDataTable != null) - { - dataTable = _sourceDataTable; - }else - { - dataTable = new DataTable(TableName); - - } - if (dataTable.Columns.Count == 0) CreateSchema(dataTable); - if (dataTable.PrimaryKey.Length == 0 ) SetPrimaryKey(dataTable); - foreach(DataRow row in dataTable.Rows) - { - sourcePrimaryKeyDict.Add((string)row["ConstantID"], DELETE); - } - return dataTable; - } - - private void CreateSchema(DataTable dataTable) - { - // Note: these columns must be defined in the same order that they exist in the DB - dataTable.Columns.Add("ID", typeof(int)); - dataTable.Columns[0].AutoIncrement = true; - dataTable.Columns.Add("ConstantID", typeof(string)); - dataTable.Columns.Add("PositionID", typeof(int)); - dataTable.Columns.Add("ParentID", typeof(string)); - dataTable.Columns.Add("LastChange", MiscTools.DBTimeStampType()); - dataTable.Columns.Add("Name", typeof(string)); - dataTable.Columns.Add("Type", typeof(string)); - dataTable.Columns.Add("Expanded", typeof(bool)); - dataTable.Columns.Add("Description", typeof(string)); - dataTable.Columns.Add("Icon", typeof(string)); - dataTable.Columns.Add("Panel", typeof(string)); - dataTable.Columns.Add("Username", typeof(string)); - dataTable.Columns.Add("Domain", typeof(string)); - dataTable.Columns.Add("Password", typeof(string)); - dataTable.Columns.Add("Hostname", typeof(string)); - dataTable.Columns.Add("Port", typeof(int)); - dataTable.Columns.Add("Protocol", typeof(string)); - dataTable.Columns.Add("SSHTunnelConnectionName", typeof(string)); - dataTable.Columns.Add("SSHOptions", typeof(string)); - dataTable.Columns.Add("PuttySession", typeof(string)); - dataTable.Columns.Add("ConnectToConsole", typeof(bool)); - dataTable.Columns.Add("UseCredSsp", typeof(bool)); - dataTable.Columns.Add("RenderingEngine", typeof(string)); - dataTable.Columns.Add("RDPAuthenticationLevel", typeof(string)); - dataTable.Columns.Add("Colors", typeof(string)); - dataTable.Columns.Add("Resolution", typeof(string)); - dataTable.Columns.Add("DisplayWallpaper", typeof(bool)); - dataTable.Columns.Add("DisplayThemes", typeof(bool)); - dataTable.Columns.Add("EnableFontSmoothing", typeof(bool)); - dataTable.Columns.Add("EnableDesktopComposition", typeof(bool)); - dataTable.Columns.Add("DisableFullWindowDrag", typeof(bool)); - dataTable.Columns.Add("DisableMenuAnimations", typeof(bool)); - dataTable.Columns.Add("DisableCursorShadow", typeof(bool)); - dataTable.Columns.Add("DisableCursorBlinking", typeof(bool)); - dataTable.Columns.Add("CacheBitmaps", typeof(bool)); - dataTable.Columns.Add("RedirectDiskDrives", typeof(bool)); - dataTable.Columns.Add("RedirectPorts", typeof(bool)); - dataTable.Columns.Add("RedirectPrinters", typeof(bool)); - dataTable.Columns.Add("RedirectClipboard", typeof(bool)); - dataTable.Columns.Add("RedirectSmartCards", typeof(bool)); - dataTable.Columns.Add("RedirectSound", typeof(string)); - dataTable.Columns.Add("RedirectAudioCapture", typeof(bool)); - dataTable.Columns.Add("RedirectKeys", typeof(bool)); - dataTable.Columns.Add("Connected", typeof(bool)); - dataTable.Columns.Add("OpeningCommand", typeof(string)); - dataTable.Columns.Add("PreExtApp", typeof(string)); - dataTable.Columns.Add("PostExtApp", typeof(string)); - dataTable.Columns.Add("MacAddress", typeof(string)); - dataTable.Columns.Add("UserField", typeof(string)); - dataTable.Columns.Add("ExtApp", typeof(string)); - dataTable.Columns.Add("VNCCompression", typeof(string)); - dataTable.Columns.Add("VNCEncoding", typeof(string)); - dataTable.Columns.Add("VNCAuthMode", typeof(string)); - dataTable.Columns.Add("VNCProxyType", typeof(string)); - dataTable.Columns.Add("VNCProxyIP", typeof(string)); - dataTable.Columns.Add("VNCProxyPort", typeof(int)); - dataTable.Columns.Add("VNCProxyUsername", typeof(string)); - dataTable.Columns.Add("VNCProxyPassword", typeof(string)); - dataTable.Columns.Add("VNCColors", typeof(string)); - dataTable.Columns.Add("VNCSmartSizeMode", typeof(string)); - dataTable.Columns.Add("VNCViewOnly", typeof(bool)); - dataTable.Columns.Add("RDGatewayUsageMethod", typeof(string)); - dataTable.Columns.Add("RDGatewayHostname", typeof(string)); - dataTable.Columns.Add("RDGatewayUseConnectionCredentials", typeof(string)); - dataTable.Columns.Add("RDGatewayUsername", typeof(string)); - dataTable.Columns.Add("RDGatewayPassword", typeof(string)); - dataTable.Columns.Add("RDGatewayDomain", typeof(string)); - dataTable.Columns.Add("InheritCacheBitmaps", typeof(bool)); - dataTable.Columns.Add("InheritColors", typeof(bool)); - dataTable.Columns.Add("InheritDescription", typeof(bool)); - dataTable.Columns.Add("InheritDisplayThemes", typeof(bool)); - dataTable.Columns.Add("InheritDisplayWallpaper", typeof(bool)); - dataTable.Columns.Add("InheritEnableFontSmoothing", typeof(bool)); - dataTable.Columns.Add("InheritEnableDesktopComposition", typeof(bool)); - dataTable.Columns.Add("InheritDisableFullWindowDrag", typeof(bool)); - dataTable.Columns.Add("InheritDisableMenuAnimations", typeof(bool)); - dataTable.Columns.Add("InheritDisableCursorShadow", typeof(bool)); - dataTable.Columns.Add("InheritDisableCursorBlinking", typeof(bool)); - dataTable.Columns.Add("InheritDomain", typeof(bool)); - dataTable.Columns.Add("InheritIcon", typeof(bool)); - dataTable.Columns.Add("InheritPanel", typeof(bool)); - dataTable.Columns.Add("InheritPassword", typeof(bool)); - dataTable.Columns.Add("InheritPort", typeof(bool)); - dataTable.Columns.Add("InheritProtocol", typeof(bool)); - dataTable.Columns.Add("InheritSSHTunnelConnectionName", typeof(bool)); - dataTable.Columns.Add("InheritSSHOptions", typeof(bool)); - dataTable.Columns.Add("InheritPuttySession", typeof(bool)); - dataTable.Columns.Add("InheritRedirectDiskDrives", typeof(bool)); - dataTable.Columns.Add("InheritRedirectKeys", typeof(bool)); - dataTable.Columns.Add("InheritRedirectPorts", typeof(bool)); - dataTable.Columns.Add("InheritRedirectPrinters", typeof(bool)); - dataTable.Columns.Add("InheritRedirectClipboard", typeof(bool)); - dataTable.Columns.Add("InheritRedirectSmartCards", typeof(bool)); - dataTable.Columns.Add("InheritRedirectSound", typeof(bool)); - dataTable.Columns.Add("InheritRedirectAudioCapture", typeof(bool)); - dataTable.Columns.Add("InheritResolution", typeof(bool)); - dataTable.Columns.Add("InheritUseConsoleSession", typeof(bool)); - dataTable.Columns.Add("InheritUseCredSsp", typeof(bool)); - dataTable.Columns.Add("InheritRenderingEngine", typeof(bool)); - dataTable.Columns.Add("InheritRDPAuthenticationLevel", typeof(bool)); - dataTable.Columns.Add("InheritUsername", typeof(bool)); - dataTable.Columns.Add("InheritOpeningCommand", typeof(bool)); - dataTable.Columns.Add("InheritPreExtApp", typeof(bool)); - dataTable.Columns.Add("InheritPostExtApp", typeof(bool)); - dataTable.Columns.Add("InheritMacAddress", typeof(bool)); - dataTable.Columns.Add("InheritUserField", typeof(bool)); - dataTable.Columns.Add("InheritExtApp", typeof(bool)); - dataTable.Columns.Add("InheritVNCCompression", typeof(bool)); - dataTable.Columns.Add("InheritVNCEncoding", typeof(bool)); - dataTable.Columns.Add("InheritVNCAuthMode", typeof(bool)); - dataTable.Columns.Add("InheritVNCProxyType", typeof(bool)); - dataTable.Columns.Add("InheritVNCProxyIP", typeof(bool)); - dataTable.Columns.Add("InheritVNCProxyPort", typeof(bool)); - dataTable.Columns.Add("InheritVNCProxyUsername", typeof(bool)); - dataTable.Columns.Add("InheritVNCProxyPassword", typeof(bool)); - dataTable.Columns.Add("InheritVNCColors", typeof(bool)); - dataTable.Columns.Add("InheritVNCSmartSizeMode", typeof(bool)); - dataTable.Columns.Add("InheritVNCViewOnly", typeof(bool)); - dataTable.Columns.Add("InheritRDGatewayUsageMethod", typeof(bool)); - dataTable.Columns.Add("InheritRDGatewayHostname", typeof(bool)); - dataTable.Columns.Add("InheritRDGatewayUseConnectionCredentials", typeof(bool)); - dataTable.Columns.Add("InheritRDGatewayUsername", typeof(bool)); - dataTable.Columns.Add("InheritRDGatewayPassword", typeof(bool)); - dataTable.Columns.Add("InheritRDGatewayDomain", typeof(bool)); - dataTable.Columns.Add("LoadBalanceInfo", typeof(string)); - dataTable.Columns.Add("AutomaticResize", typeof(bool)); - dataTable.Columns.Add("InheritLoadBalanceInfo", typeof(bool)); - dataTable.Columns.Add("InheritAutomaticResize", typeof(bool)); - dataTable.Columns.Add("RDPMinutesToIdleTimeout", typeof(int)); - dataTable.Columns.Add("RDPAlertIdleTimeout", typeof(bool)); - dataTable.Columns.Add("SoundQuality", typeof(string)); - dataTable.Columns.Add("InheritRDPMinutesToIdleTimeout", typeof(bool)); - dataTable.Columns.Add("InheritRDPAlertIdleTimeout", typeof(bool)); - dataTable.Columns.Add("InheritSoundQuality", typeof(bool)); - dataTable.Columns.Add("VmId", typeof(string)); - dataTable.Columns.Add("UseVmId", typeof(bool)); - dataTable.Columns.Add("UseEnhancedMode", typeof(bool)); - dataTable.Columns.Add("InheritVmId", typeof(bool)); - dataTable.Columns.Add("InheritUseVmId", typeof(bool)); - dataTable.Columns.Add("InheritUseEnhancedMode", typeof(bool)); - dataTable.Columns.Add("RdpVersion", typeof(string)); - dataTable.Columns.Add("InheritRdpVersion", typeof(bool)); - dataTable.Columns.Add("EnhancedMode", typeof(bool)); - dataTable.Columns.Add("InheritEnhancedMode", typeof(bool)); - } - - private void SetPrimaryKey(DataTable dataTable) - { - dataTable.PrimaryKey = new[] {dataTable.Columns["ConstantID"]}; - } - - private void SerializeNodesRecursive(ConnectionInfo connectionInfo) - { - if (!(connectionInfo is RootNodeInfo)) - SerializeConnectionInfo(connectionInfo); - var containerInfo = connectionInfo as ContainerInfo; - if (containerInfo == null) return; - foreach (var child in containerInfo.Children) - SerializeNodesRecursive(child); - } - - public bool isRowUpdated(ConnectionInfo connectionInfo, DataRow dataRow) - { - var isFieldNotChange = dataRow["Name"].Equals(connectionInfo.Name) && - dataRow["Type"].Equals(connectionInfo.GetTreeNodeType().ToString()) && - dataRow["ParentID"].Equals(connectionInfo.Parent?.ConstantID ?? "") && - dataRow["PositionID"].Equals(_currentNodeIndex) && - dataRow["Expanded"].Equals(false) && - dataRow["Description"].Equals(connectionInfo.Description) && - dataRow["Icon"].Equals(connectionInfo.Icon) && - dataRow["Panel"].Equals(connectionInfo.Panel) && - dataRow["Username"].Equals(_saveFilter.SaveUsername ? connectionInfo.Username : "") && - dataRow["Domain"].Equals(_saveFilter.SaveDomain ? connectionInfo.Domain : ""); - - isFieldNotChange = isFieldNotChange && dataRow["Hostname"].Equals(connectionInfo.Hostname); - isFieldNotChange = isFieldNotChange && dataRow["VmId"].Equals(connectionInfo.VmId); - isFieldNotChange = isFieldNotChange && dataRow["Protocol"].Equals(connectionInfo.Protocol.ToString()); - isFieldNotChange = isFieldNotChange && dataRow["PuttySession"].Equals(connectionInfo.PuttySession); - isFieldNotChange = isFieldNotChange && - dataRow["Port"].Equals(connectionInfo.Port); - isFieldNotChange = isFieldNotChange && - dataRow["ConnectToConsole"].Equals(connectionInfo.UseConsoleSession); - isFieldNotChange = isFieldNotChange && - dataRow["UseCredSsp"].Equals(connectionInfo.UseCredSsp); - isFieldNotChange = isFieldNotChange && - dataRow["UseVmId"].Equals(connectionInfo.UseVmId); - isFieldNotChange = isFieldNotChange && - dataRow["UseEnhancedMode"].Equals(connectionInfo.UseEnhancedMode); - isFieldNotChange = isFieldNotChange && - dataRow["RenderingEngine"].Equals(connectionInfo.RenderingEngine.ToString()); - isFieldNotChange = isFieldNotChange && - dataRow["RDPAuthenticationLevel"].Equals(connectionInfo.RDPAuthenticationLevel.ToString()); - isFieldNotChange = isFieldNotChange && - dataRow["RDPMinutesToIdleTimeout"].Equals(connectionInfo.RDPMinutesToIdleTimeout); - isFieldNotChange = isFieldNotChange && - dataRow["RDPAlertIdleTimeout"].Equals(connectionInfo.RDPAlertIdleTimeout); - isFieldNotChange = isFieldNotChange && - dataRow["LoadBalanceInfo"].Equals(connectionInfo.LoadBalanceInfo); - isFieldNotChange = isFieldNotChange && - dataRow["Colors"].Equals(connectionInfo.Colors.ToString()); - isFieldNotChange = isFieldNotChange && - dataRow["Resolution"].Equals(connectionInfo.Resolution.ToString()); - isFieldNotChange = isFieldNotChange && - dataRow["AutomaticResize"].Equals(connectionInfo.AutomaticResize); - isFieldNotChange = isFieldNotChange && - dataRow["DisplayWallpaper"].Equals(connectionInfo.DisplayWallpaper) && - dataRow["DisplayThemes"].Equals(connectionInfo.DisplayThemes) && - dataRow["EnableFontSmoothing"].Equals(connectionInfo.EnableFontSmoothing) && - dataRow["EnableDesktopComposition"].Equals(connectionInfo.EnableDesktopComposition) && - dataRow["DisableFullWindowDrag"].Equals(connectionInfo.DisableFullWindowDrag) && - dataRow["DisableMenuAnimations"].Equals(connectionInfo.DisableMenuAnimations) && - dataRow["DisableCursorShadow"].Equals(connectionInfo.DisableCursorShadow) && - dataRow["DisableCursorBlinking"].Equals(connectionInfo.DisableCursorBlinking) && - dataRow["CacheBitmaps"].Equals(connectionInfo.CacheBitmaps) && - dataRow["RedirectDiskDrives"].Equals(connectionInfo.RedirectDiskDrives) && - dataRow["RedirectPorts"].Equals(connectionInfo.RedirectPorts) && - dataRow["RedirectPrinters"].Equals(connectionInfo.RedirectPrinters) && - dataRow["RedirectClipboard"].Equals(connectionInfo.RedirectClipboard) && - dataRow["RedirectSmartCards"].Equals(connectionInfo.RedirectSmartCards) && - dataRow["RedirectSound"].Equals(connectionInfo.RedirectSound.ToString()) && - dataRow["SoundQuality"].Equals(connectionInfo.SoundQuality.ToString()) && - dataRow["RedirectAudioCapture"].Equals(connectionInfo.RedirectAudioCapture) && - dataRow["RedirectKeys"].Equals(connectionInfo.RedirectKeys); - - isFieldNotChange = isFieldNotChange && - dataRow["Connected"].Equals(false) && // TODO: this column can eventually be removed. we now save this property locally - dataRow["OpeningCommand"].Equals(connectionInfo.OpeningCommand) && - dataRow["PreExtApp"].Equals(connectionInfo.PreExtApp) && - dataRow["PostExtApp"].Equals(connectionInfo.PostExtApp) && - dataRow["MacAddress"].Equals(connectionInfo.MacAddress) && - dataRow["UserField"].Equals(connectionInfo.UserField) && - dataRow["ExtApp"].Equals(connectionInfo.ExtApp) && - dataRow["VNCCompression"].Equals(connectionInfo.VNCCompression.ToString()) && - dataRow["VNCEncoding"].Equals(connectionInfo.VNCEncoding.ToString()) && - dataRow["VNCAuthMode"].Equals(connectionInfo.VNCAuthMode.ToString()) && - dataRow["VNCProxyType"].Equals(connectionInfo.VNCProxyType.ToString()) && - dataRow["VNCProxyIP"].Equals(connectionInfo.VNCProxyIP) && - dataRow["VNCProxyPort"].Equals(connectionInfo.VNCProxyPort) && - dataRow["VNCProxyUsername"].Equals(connectionInfo.VNCProxyUsername) && - dataRow["VNCColors"].Equals(connectionInfo.VNCColors.ToString()) && - dataRow["VNCSmartSizeMode"].Equals(connectionInfo.VNCSmartSizeMode.ToString()) && - dataRow["VNCViewOnly"].Equals(connectionInfo.VNCViewOnly) && - dataRow["RDGatewayUsageMethod"].Equals(connectionInfo.RDGatewayUsageMethod.ToString()) && - dataRow["RDGatewayHostname"].Equals(connectionInfo.RDGatewayHostname) && - dataRow["RDGatewayUseConnectionCredentials"].Equals(connectionInfo.RDGatewayUseConnectionCredentials.ToString()) && - dataRow["RDGatewayUsername"].Equals(connectionInfo.RDGatewayUsername) && - dataRow["RDGatewayDomain"].Equals(connectionInfo.RDGatewayDomain) && - dataRow["RdpVersion"].Equals(connectionInfo.RdpVersion.ToString()); - - var isInheritanceFieldNotChange = false; - if (_saveFilter.SaveInheritance) - { - isInheritanceFieldNotChange = (dataRow["InheritCacheBitmaps"].Equals(connectionInfo.Inheritance.CacheBitmaps) && - dataRow["InheritColors"].Equals(connectionInfo.Inheritance.Colors) && - dataRow["InheritDescription"].Equals(connectionInfo.Inheritance.Description) && - dataRow["InheritDisplayThemes"].Equals(connectionInfo.Inheritance.DisplayThemes) && - dataRow["InheritDisplayWallpaper"].Equals(connectionInfo.Inheritance.DisplayWallpaper) && - dataRow["InheritEnableFontSmoothing"].Equals(connectionInfo.Inheritance.EnableFontSmoothing) && - dataRow["InheritEnableDesktopComposition"].Equals(connectionInfo.Inheritance.EnableDesktopComposition) && - dataRow["InheritDisableFullWindowDrag"].Equals(connectionInfo.Inheritance.DisableFullWindowDrag) && - dataRow["InheritDisableMenuAnimations"].Equals(connectionInfo.Inheritance.DisableMenuAnimations) && - dataRow["InheritDisableCursorShadow"].Equals(connectionInfo.Inheritance.DisableCursorShadow) && - dataRow["InheritDisableCursorBlinking"].Equals(connectionInfo.Inheritance.DisableCursorBlinking) && - dataRow["InheritDomain"].Equals(connectionInfo.Inheritance.Domain) && - dataRow["InheritIcon"].Equals(connectionInfo.Inheritance.Icon) && - dataRow["InheritPanel"].Equals(connectionInfo.Inheritance.Panel) && - dataRow["InheritPassword"].Equals(connectionInfo.Inheritance.Password) && - dataRow["InheritPort"].Equals(connectionInfo.Inheritance.Port) && - dataRow["InheritProtocol"].Equals(connectionInfo.Inheritance.Protocol) && - dataRow["InheritPuttySession"].Equals(connectionInfo.Inheritance.PuttySession) && - dataRow["InheritRedirectDiskDrives"].Equals(connectionInfo.Inheritance.RedirectDiskDrives) && - dataRow["InheritRedirectKeys"].Equals(connectionInfo.Inheritance.RedirectKeys) && - dataRow["InheritRedirectPorts"].Equals(connectionInfo.Inheritance.RedirectPorts) && - dataRow["InheritRedirectPrinters"].Equals(connectionInfo.Inheritance.RedirectPrinters) && - dataRow["InheritRedirectClipboard"].Equals(connectionInfo.Inheritance.RedirectClipboard) && - dataRow["InheritRedirectSmartCards"].Equals(connectionInfo.Inheritance.RedirectSmartCards) && - dataRow["InheritRedirectSound"].Equals(connectionInfo.Inheritance.RedirectSound) && - dataRow["InheritSoundQuality"].Equals(connectionInfo.Inheritance.SoundQuality) && - dataRow["InheritRedirectAudioCapture"].Equals(connectionInfo.Inheritance.RedirectAudioCapture) && - dataRow["InheritResolution"].Equals(connectionInfo.Inheritance.Resolution) && - dataRow["InheritAutomaticResize"].Equals(connectionInfo.Inheritance.AutomaticResize) && - dataRow["InheritUseConsoleSession"].Equals(connectionInfo.Inheritance.UseConsoleSession) && - dataRow["InheritUseCredSsp"].Equals(connectionInfo.Inheritance.UseCredSsp) && - dataRow["InheritRenderingEngine"].Equals(connectionInfo.Inheritance.RenderingEngine) && - dataRow["InheritUsername"].Equals(connectionInfo.Inheritance.Username) && - dataRow["InheritVmId"].Equals(connectionInfo.Inheritance.VmId) && - dataRow["InheritUseVmId"].Equals(connectionInfo.Inheritance.UseVmId) && - dataRow["InheritUseEnhancedMode"].Equals(connectionInfo.Inheritance.UseEnhancedMode) && - dataRow["InheritRDPAuthenticationLevel"].Equals(connectionInfo.Inheritance.RDPAuthenticationLevel) && - dataRow["InheritRDPMinutesToIdleTimeout"].Equals(connectionInfo.Inheritance.RDPMinutesToIdleTimeout) && - dataRow["InheritRDPAlertIdleTimeout"].Equals(connectionInfo.Inheritance.RDPAlertIdleTimeout) && - dataRow["InheritLoadBalanceInfo"].Equals(connectionInfo.Inheritance.LoadBalanceInfo) && - dataRow["InheritOpeningCommand"].Equals(connectionInfo.Inheritance.OpeningCommand) && - dataRow["InheritPreExtApp"].Equals(connectionInfo.Inheritance.PreExtApp) && - dataRow["InheritPostExtApp"].Equals(connectionInfo.Inheritance.PostExtApp) && - dataRow["InheritMacAddress"].Equals(connectionInfo.Inheritance.MacAddress) && - dataRow["InheritUserField"].Equals(connectionInfo.Inheritance.UserField) && - dataRow["InheritExtApp"].Equals(connectionInfo.Inheritance.ExtApp) && - dataRow["InheritVNCCompression"].Equals(connectionInfo.Inheritance.VNCCompression) && - dataRow["InheritVNCEncoding"].Equals(connectionInfo.Inheritance.VNCEncoding) && - dataRow["InheritVNCAuthMode"].Equals(connectionInfo.Inheritance.VNCAuthMode) && - dataRow["InheritVNCProxyType"].Equals(connectionInfo.Inheritance.VNCProxyType) && - dataRow["InheritVNCProxyIP"].Equals(connectionInfo.Inheritance.VNCProxyIP) && - dataRow["InheritVNCProxyPort"].Equals(connectionInfo.Inheritance.VNCProxyPort) && - dataRow["InheritVNCProxyUsername"].Equals(connectionInfo.Inheritance.VNCProxyUsername) && - dataRow["InheritVNCProxyPassword"].Equals(connectionInfo.Inheritance.VNCProxyPassword) && - dataRow["InheritVNCColors"].Equals(connectionInfo.Inheritance.VNCColors) && - dataRow["InheritVNCSmartSizeMode"].Equals(connectionInfo.Inheritance.VNCSmartSizeMode) && - dataRow["InheritVNCViewOnly"].Equals(connectionInfo.Inheritance.VNCViewOnly) && - dataRow["InheritRDGatewayUsageMethod"].Equals(connectionInfo.Inheritance.RDGatewayUsageMethod) && - dataRow["InheritRDGatewayHostname"].Equals(connectionInfo.Inheritance.RDGatewayHostname) && - dataRow["InheritRDGatewayUseConnectionCredentials"].Equals(connectionInfo.Inheritance.RDGatewayUseConnectionCredentials) && - dataRow["InheritRDGatewayUsername"].Equals(connectionInfo.Inheritance.RDGatewayUsername) && - dataRow["InheritRDGatewayPassword"].Equals(connectionInfo.Inheritance.RDGatewayPassword) && - dataRow["InheritRDGatewayDomain"].Equals(connectionInfo.Inheritance.RDGatewayDomain) && - dataRow["InheritRdpVersion"].Equals(connectionInfo.Inheritance.RdpVersion)); - } - else - { - isInheritanceFieldNotChange = (dataRow["InheritCacheBitmaps"].Equals(false) && - dataRow["InheritColors"].Equals(false) && - dataRow["InheritDescription"].Equals(false) && - dataRow["InheritDisplayThemes"].Equals(false) && - dataRow["InheritDisplayWallpaper"].Equals(false) && - dataRow["InheritEnableFontSmoothing"].Equals(false) && - dataRow["InheritEnableDesktopComposition"].Equals(false) && - dataRow["InheritDisableFullWindowDrag"].Equals(false) && - dataRow["InheritDisableMenuAnimations"].Equals(false) && - dataRow["InheritDisableCursorShadow"].Equals(false) && - dataRow["InheritDisableCursorBlinking"].Equals(false) && - dataRow["InheritDomain"].Equals(false) && - dataRow["InheritIcon"].Equals(false) && - dataRow["InheritPanel"].Equals(false) && - dataRow["InheritPassword"].Equals(false) && - dataRow["InheritPort"].Equals(false) && - dataRow["InheritProtocol"].Equals(false) && - dataRow["InheritPuttySession"].Equals(false) && - dataRow["InheritRedirectDiskDrives"].Equals(false) && - dataRow["InheritRedirectKeys"].Equals(false) && - dataRow["InheritRedirectPorts"].Equals(false) && - dataRow["InheritRedirectPrinters"].Equals(false) && - dataRow["InheritRedirectClipboard"].Equals(false) && - dataRow["InheritRedirectSmartCards"].Equals(false) && - dataRow["InheritRedirectSound"].Equals(false) && - dataRow["InheritSoundQuality"].Equals(false) && - dataRow["InheritRedirectAudioCapture"].Equals(false) && - dataRow["InheritResolution"].Equals(false) && - dataRow["InheritAutomaticResize"].Equals(false) && - dataRow["InheritUseConsoleSession"].Equals(false) && - dataRow["InheritUseCredSsp"].Equals(false) && - dataRow["InheritRenderingEngine"].Equals(false) && - dataRow["InheritUsername"].Equals(false) && - dataRow["InheritRDPAuthenticationLevel"].Equals(false) && - dataRow["InheritRDPMinutesToIdleTimeout"].Equals(false) && - dataRow["InheritRDPAlertIdleTimeout"].Equals(false) && - dataRow["InheritLoadBalanceInfo"].Equals(false) && - dataRow["InheritOpeningCommand"].Equals(false) && - dataRow["InheritPreExtApp"].Equals(false) && - dataRow["InheritPostExtApp"].Equals(false) && - dataRow["InheritMacAddress"].Equals(false) && - dataRow["InheritUserField"].Equals(false) && - dataRow["InheritExtApp"].Equals(false) && - dataRow["InheritVNCCompression"].Equals(false) && - dataRow["InheritVNCEncoding"].Equals(false) && - dataRow["InheritVNCAuthMode"].Equals(false) && - dataRow["InheritVNCProxyType"].Equals(false) && - dataRow["InheritVNCProxyIP"].Equals(false) && - dataRow["InheritVNCProxyPort"].Equals(false) && - dataRow["InheritVNCProxyUsername"].Equals(false) && - dataRow["InheritVNCProxyPassword"].Equals(false) && - dataRow["InheritVNCColors"].Equals(false) && - dataRow["InheritVNCSmartSizeMode"].Equals(false) && - dataRow["InheritVNCViewOnly"].Equals(false) && - dataRow["InheritRDGatewayUsageMethod"].Equals(false) && - dataRow["InheritRDGatewayHostname"].Equals(false) && - dataRow["InheritRDGatewayUseConnectionCredentials"].Equals(false) && - dataRow["InheritRDGatewayUsername"].Equals(false) && - dataRow["InheritRDGatewayPassword"].Equals(false) && - dataRow["InheritRDGatewayDomain"].Equals(false) && - dataRow["InheritRdpVersion"].Equals(false)); - } - - var pwd = dataRow["Password"].Equals(_saveFilter.SavePassword ? _cryptographyProvider.Encrypt(connectionInfo.Password, _encryptionKey) : "") && - dataRow["VNCProxyPassword"].Equals(_cryptographyProvider.Encrypt(connectionInfo.VNCProxyPassword, _encryptionKey)) && - dataRow["RDGatewayPassword"].Equals(_cryptographyProvider.Encrypt(connectionInfo.RDGatewayPassword, _encryptionKey)); - return !(pwd && isFieldNotChange && isInheritanceFieldNotChange); - } - - private void SerializeConnectionInfo(ConnectionInfo connectionInfo) - { - _currentNodeIndex++; - var isNewRow = false; - DataRow dataRow = _dataTable.Rows.Find(connectionInfo.ConstantID); - if (dataRow == null) - { - dataRow = _dataTable.NewRow(); - dataRow["ConstantID"] = connectionInfo.ConstantID; - isNewRow = true; - } - else - { - sourcePrimaryKeyDict.Remove(connectionInfo.ConstantID); - } - var tmp = isRowUpdated(connectionInfo, dataRow); - if (!tmp){ - return; - } - dataRow["Name"] = connectionInfo.Name; - dataRow["Type"] = connectionInfo.GetTreeNodeType().ToString(); - dataRow["ParentID"] = connectionInfo.Parent?.ConstantID ?? ""; - dataRow["PositionID"] = _currentNodeIndex; - dataRow["LastChange"] = MiscTools.DBTimeStampNow(); - dataRow["Expanded"] = - false; // TODO: this column can eventually be removed. we now save this property locally - dataRow["Description"] = connectionInfo.Description; - dataRow["Icon"] = connectionInfo.Icon; - dataRow["Panel"] = connectionInfo.Panel; - dataRow["Username"] = _saveFilter.SaveUsername ? connectionInfo.Username : ""; - dataRow["Domain"] = _saveFilter.SaveDomain ? connectionInfo.Domain : ""; - dataRow["Password"] = _saveFilter.SavePassword - ? _cryptographyProvider.Encrypt(connectionInfo.Password, _encryptionKey) - : ""; - dataRow["Hostname"] = connectionInfo.Hostname; - dataRow["VmId"] = connectionInfo.VmId; - dataRow["Protocol"] = connectionInfo.Protocol; - dataRow["SSHTunnelConnectionName"] = connectionInfo.SSHTunnelConnectionName; - dataRow["OpeningCommand"] = connectionInfo.OpeningCommand; - dataRow["SSHOptions"] = connectionInfo.SSHOptions; - dataRow["PuttySession"] = connectionInfo.PuttySession; - dataRow["Port"] = connectionInfo.Port; - dataRow["ConnectToConsole"] = connectionInfo.UseConsoleSession; - dataRow["UseCredSsp"] = connectionInfo.UseCredSsp; - dataRow["UseVmId"] = connectionInfo.UseVmId; - dataRow["UseEnhancedMode"] = connectionInfo.UseEnhancedMode; - dataRow["RenderingEngine"] = connectionInfo.RenderingEngine; - dataRow["RDPAuthenticationLevel"] = connectionInfo.RDPAuthenticationLevel; - dataRow["RDPMinutesToIdleTimeout"] = connectionInfo.RDPMinutesToIdleTimeout; - dataRow["RDPAlertIdleTimeout"] = connectionInfo.RDPAlertIdleTimeout; - dataRow["LoadBalanceInfo"] = connectionInfo.LoadBalanceInfo; - dataRow["Colors"] = connectionInfo.Colors; - dataRow["Resolution"] = connectionInfo.Resolution; - dataRow["AutomaticResize"] = connectionInfo.AutomaticResize; - dataRow["DisplayWallpaper"] = connectionInfo.DisplayWallpaper; - dataRow["DisplayThemes"] = connectionInfo.DisplayThemes; - dataRow["EnableFontSmoothing"] = connectionInfo.EnableFontSmoothing; - dataRow["EnableDesktopComposition"] = connectionInfo.EnableDesktopComposition; - dataRow["DisableFullWindowDrag"] = connectionInfo.DisableFullWindowDrag; - dataRow["DisableMenuAnimations"] = connectionInfo.DisableMenuAnimations; - dataRow["DisableCursorShadow"] = connectionInfo.DisableCursorShadow; - dataRow["DisableCursorBlinking"] = connectionInfo.DisableCursorBlinking; - dataRow["CacheBitmaps"] = connectionInfo.CacheBitmaps; - dataRow["RedirectDiskDrives"] = connectionInfo.RedirectDiskDrives; - dataRow["RedirectPorts"] = connectionInfo.RedirectPorts; - dataRow["RedirectPrinters"] = connectionInfo.RedirectPrinters; - dataRow["RedirectClipboard"] = connectionInfo.RedirectClipboard; - dataRow["RedirectSmartCards"] = connectionInfo.RedirectSmartCards; - dataRow["RedirectSound"] = connectionInfo.RedirectSound; - dataRow["SoundQuality"] = connectionInfo.SoundQuality; - dataRow["RedirectAudioCapture"] = connectionInfo.RedirectAudioCapture; - dataRow["RedirectKeys"] = connectionInfo.RedirectKeys; - dataRow["Connected"] = false; // TODO: this column can eventually be removed. we now save this property locally - dataRow["OpeningCommand"] = connectionInfo.OpeningCommand; - dataRow["PreExtApp"] = connectionInfo.PreExtApp; - dataRow["PostExtApp"] = connectionInfo.PostExtApp; - dataRow["MacAddress"] = connectionInfo.MacAddress; - dataRow["UserField"] = connectionInfo.UserField; - dataRow["ExtApp"] = connectionInfo.ExtApp; - dataRow["VNCCompression"] = connectionInfo.VNCCompression; - dataRow["VNCEncoding"] = connectionInfo.VNCEncoding; - dataRow["VNCAuthMode"] = connectionInfo.VNCAuthMode; - dataRow["VNCProxyType"] = connectionInfo.VNCProxyType; - dataRow["VNCProxyIP"] = connectionInfo.VNCProxyIP; - dataRow["VNCProxyPort"] = connectionInfo.VNCProxyPort; - dataRow["VNCProxyUsername"] = connectionInfo.VNCProxyUsername; - dataRow["VNCProxyPassword"] = - _cryptographyProvider.Encrypt(connectionInfo.VNCProxyPassword, _encryptionKey); - dataRow["VNCColors"] = connectionInfo.VNCColors; - dataRow["VNCSmartSizeMode"] = connectionInfo.VNCSmartSizeMode; - dataRow["VNCViewOnly"] = connectionInfo.VNCViewOnly; - dataRow["RDGatewayUsageMethod"] = connectionInfo.RDGatewayUsageMethod; - dataRow["RDGatewayHostname"] = connectionInfo.RDGatewayHostname; - dataRow["RDGatewayUseConnectionCredentials"] = connectionInfo.RDGatewayUseConnectionCredentials; - dataRow["RDGatewayUsername"] = connectionInfo.RDGatewayUsername; - dataRow["RDGatewayPassword"] = _cryptographyProvider.Encrypt(connectionInfo.RDGatewayPassword, _encryptionKey); - dataRow["RDGatewayDomain"] = connectionInfo.RDGatewayDomain; - dataRow["RdpVersion"] = connectionInfo.RdpVersion; - - - if (_saveFilter.SaveInheritance) - { - dataRow["InheritCacheBitmaps"] = connectionInfo.Inheritance.CacheBitmaps; - dataRow["InheritColors"] = connectionInfo.Inheritance.Colors; - dataRow["InheritDescription"] = connectionInfo.Inheritance.Description; - dataRow["InheritDisplayThemes"] = connectionInfo.Inheritance.DisplayThemes; - dataRow["InheritDisplayWallpaper"] = connectionInfo.Inheritance.DisplayWallpaper; - dataRow["InheritEnableFontSmoothing"] = connectionInfo.Inheritance.EnableFontSmoothing; - dataRow["InheritEnableDesktopComposition"] = connectionInfo.Inheritance.EnableDesktopComposition; - dataRow["InheritDisableFullWindowDrag"] = connectionInfo.Inheritance.DisableFullWindowDrag; - dataRow["InheritDisableMenuAnimations"] = connectionInfo.Inheritance.DisableMenuAnimations; - dataRow["InheritDisableCursorShadow"] = connectionInfo.Inheritance.DisableCursorShadow; - dataRow["InheritDisableCursorBlinking"] = connectionInfo.Inheritance.DisableCursorBlinking; - dataRow["InheritDomain"] = connectionInfo.Inheritance.Domain; - dataRow["InheritIcon"] = connectionInfo.Inheritance.Icon; - dataRow["InheritPanel"] = connectionInfo.Inheritance.Panel; - dataRow["InheritPassword"] = connectionInfo.Inheritance.Password; - dataRow["InheritPort"] = connectionInfo.Inheritance.Port; - dataRow["InheritProtocol"] = connectionInfo.Inheritance.Protocol; - dataRow["InheritSSHTunnelConnectionName"] = connectionInfo.Inheritance.SSHTunnelConnectionName; - dataRow["InheritOpeningCommand"] = connectionInfo.Inheritance.OpeningCommand; - dataRow["InheritSSHOptions"] = connectionInfo.Inheritance.SSHOptions; - dataRow["InheritPuttySession"] = connectionInfo.Inheritance.PuttySession; - dataRow["InheritRedirectDiskDrives"] = connectionInfo.Inheritance.RedirectDiskDrives; - dataRow["InheritRedirectKeys"] = connectionInfo.Inheritance.RedirectKeys; - dataRow["InheritRedirectPorts"] = connectionInfo.Inheritance.RedirectPorts; - dataRow["InheritRedirectPrinters"] = connectionInfo.Inheritance.RedirectPrinters; - dataRow["InheritRedirectClipboard"] = connectionInfo.Inheritance.RedirectClipboard; - dataRow["InheritRedirectSmartCards"] = connectionInfo.Inheritance.RedirectSmartCards; - dataRow["InheritRedirectSound"] = connectionInfo.Inheritance.RedirectSound; - dataRow["InheritSoundQuality"] = connectionInfo.Inheritance.SoundQuality; - dataRow["InheritRedirectAudioCapture"] = connectionInfo.Inheritance.RedirectAudioCapture; - dataRow["InheritResolution"] = connectionInfo.Inheritance.Resolution; - dataRow["InheritAutomaticResize"] = connectionInfo.Inheritance.AutomaticResize; - dataRow["InheritUseConsoleSession"] = connectionInfo.Inheritance.UseConsoleSession; - dataRow["InheritUseCredSsp"] = connectionInfo.Inheritance.UseCredSsp; - dataRow["InheritRenderingEngine"] = connectionInfo.Inheritance.RenderingEngine; - dataRow["InheritUsername"] = connectionInfo.Inheritance.Username; - dataRow["InheritVmId"] = connectionInfo.Inheritance.VmId; - dataRow["InheritUseVmId"] = connectionInfo.Inheritance.UseVmId; - dataRow["InheritUseEnhancedMode"] = connectionInfo.Inheritance.UseEnhancedMode; - dataRow["InheritRDPAuthenticationLevel"] = connectionInfo.Inheritance.RDPAuthenticationLevel; - dataRow["InheritRDPMinutesToIdleTimeout"] = connectionInfo.Inheritance.RDPMinutesToIdleTimeout; - dataRow["InheritRDPAlertIdleTimeout"] = connectionInfo.Inheritance.RDPAlertIdleTimeout; - dataRow["InheritLoadBalanceInfo"] = connectionInfo.Inheritance.LoadBalanceInfo; - dataRow["InheritOpeningCommand"] = connectionInfo.Inheritance.OpeningCommand; - dataRow["InheritPreExtApp"] = connectionInfo.Inheritance.PreExtApp; - dataRow["InheritPostExtApp"] = connectionInfo.Inheritance.PostExtApp; - dataRow["InheritMacAddress"] = connectionInfo.Inheritance.MacAddress; - dataRow["InheritUserField"] = connectionInfo.Inheritance.UserField; - dataRow["InheritExtApp"] = connectionInfo.Inheritance.ExtApp; - dataRow["InheritVNCCompression"] = connectionInfo.Inheritance.VNCCompression; - dataRow["InheritVNCEncoding"] = connectionInfo.Inheritance.VNCEncoding; - dataRow["InheritVNCAuthMode"] = connectionInfo.Inheritance.VNCAuthMode; - dataRow["InheritVNCProxyType"] = connectionInfo.Inheritance.VNCProxyType; - dataRow["InheritVNCProxyIP"] = connectionInfo.Inheritance.VNCProxyIP; - dataRow["InheritVNCProxyPort"] = connectionInfo.Inheritance.VNCProxyPort; - dataRow["InheritVNCProxyUsername"] = connectionInfo.Inheritance.VNCProxyUsername; - dataRow["InheritVNCProxyPassword"] = connectionInfo.Inheritance.VNCProxyPassword; - dataRow["InheritVNCColors"] = connectionInfo.Inheritance.VNCColors; - dataRow["InheritVNCSmartSizeMode"] = connectionInfo.Inheritance.VNCSmartSizeMode; - dataRow["InheritVNCViewOnly"] = connectionInfo.Inheritance.VNCViewOnly; - dataRow["InheritRDGatewayUsageMethod"] = connectionInfo.Inheritance.RDGatewayUsageMethod; - dataRow["InheritRDGatewayHostname"] = connectionInfo.Inheritance.RDGatewayHostname; - dataRow["InheritRDGatewayUseConnectionCredentials"] = connectionInfo.Inheritance.RDGatewayUseConnectionCredentials; - dataRow["InheritRDGatewayUsername"] = connectionInfo.Inheritance.RDGatewayUsername; - dataRow["InheritRDGatewayPassword"] = connectionInfo.Inheritance.RDGatewayPassword; - dataRow["InheritRDGatewayDomain"] = connectionInfo.Inheritance.RDGatewayDomain; - dataRow["InheritRdpVersion"] = connectionInfo.Inheritance.RdpVersion; - } - else - { - dataRow["InheritCacheBitmaps"] = false; - dataRow["InheritColors"] = false; - dataRow["InheritDescription"] = false; - dataRow["InheritDisplayThemes"] = false; - dataRow["InheritDisplayWallpaper"] = false; - dataRow["InheritEnableFontSmoothing"] = false; - dataRow["InheritEnableDesktopComposition"] = false; - dataRow["InheritDisableFullWindowDrag"] = false; - dataRow["InheritDisableMenuAnimations"] = false; - dataRow["InheritDisableCursorShadow"] = false; - dataRow["InheritDisableCursorBlinking"] = false; - dataRow["InheritDomain"] = false; - dataRow["InheritIcon"] = false; - dataRow["InheritPanel"] = false; - dataRow["InheritPassword"] = false; - dataRow["InheritPort"] = false; - dataRow["InheritProtocol"] = false; - dataRow["InheritSSHTunnelConnectionName"] = false; - dataRow["InheritSSHOptions"] = false; - dataRow["InheritPuttySession"] = false; - dataRow["InheritRedirectDiskDrives"] = false; - dataRow["InheritRedirectKeys"] = false; - dataRow["InheritRedirectPorts"] = false; - dataRow["InheritRedirectPrinters"] = false; - dataRow["InheritRedirectClipboard"] = false; - dataRow["InheritRedirectSmartCards"] = false; - dataRow["InheritRedirectSound"] = false; - dataRow["InheritSoundQuality"] = false; - dataRow["InheritRedirectAudioCapture"] = false; - dataRow["InheritResolution"] = false; - dataRow["InheritAutomaticResize"] = false; - dataRow["InheritUseConsoleSession"] = false; - dataRow["InheritUseCredSsp"] = false; - dataRow["InheritRenderingEngine"] = false; - dataRow["InheritUsername"] = false; - dataRow["InheritRDPAuthenticationLevel"] = false; - dataRow["InheritRDPMinutesToIdleTimeout"] = false; - dataRow["InheritRDPAlertIdleTimeout"] = false; - dataRow["InheritLoadBalanceInfo"] = false; - dataRow["InheritOpeningCommand"] = false; - dataRow["InheritPreExtApp"] = false; - dataRow["InheritPostExtApp"] = false; - dataRow["InheritMacAddress"] = false; - dataRow["InheritUserField"] = false; - dataRow["InheritExtApp"] = false; - dataRow["InheritVNCCompression"] = false; - dataRow["InheritVNCEncoding"] = false; - dataRow["InheritVNCAuthMode"] = false; - dataRow["InheritVNCProxyType"] = false; - dataRow["InheritVNCProxyIP"] = false; - dataRow["InheritVNCProxyPort"] = false; - dataRow["InheritVNCProxyUsername"] = false; - dataRow["InheritVNCProxyPassword"] = false; - dataRow["InheritVNCColors"] = false; - dataRow["InheritVNCSmartSizeMode"] = false; - dataRow["InheritVNCViewOnly"] = false; - dataRow["InheritRDGatewayUsageMethod"] = false; - dataRow["InheritRDGatewayHostname"] = false; - dataRow["InheritRDGatewayUseConnectionCredentials"] = false; - dataRow["InheritRDGatewayUsername"] = false; - dataRow["InheritRDGatewayPassword"] = false; - dataRow["InheritRDGatewayDomain"] = false; - dataRow["InheritRdpVersion"] = false; - } - if (isNewRow)_dataTable.Rows.Add(dataRow); - } - } +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Security; +using mRemoteNG.Connection; +using mRemoteNG.Container; +using mRemoteNG.Security; +using mRemoteNG.Tools; +using mRemoteNG.Tree; +using mRemoteNG.Tree.Root; + +namespace mRemoteNG.Config.Serializers.ConnectionSerializers.MsSql +{ + public class DataTableSerializer : ISerializer + { + public readonly int DELETE = 0; + private readonly ICryptographyProvider _cryptographyProvider; + private readonly SecureString _encryptionKey; + private DataTable _dataTable; + private DataTable _sourceDataTable; + private Dictionary sourcePrimaryKeyDict = new Dictionary(); + private const string TableName = "tblCons"; + private readonly SaveFilter _saveFilter; + private int _currentNodeIndex; + + public Version Version { get; } = new Version(2, 8); + + public DataTableSerializer(SaveFilter saveFilter, + ICryptographyProvider cryptographyProvider, + SecureString encryptionKey) + { + _saveFilter = saveFilter.ThrowIfNull(nameof(saveFilter)); + _cryptographyProvider = cryptographyProvider.ThrowIfNull(nameof(cryptographyProvider)); + _encryptionKey = encryptionKey.ThrowIfNull(nameof(encryptionKey)); + } + + public void SetSourceDataTable(DataTable sourceDataTable) + { + _sourceDataTable = sourceDataTable; + } + + + public DataTable Serialize(ConnectionTreeModel connectionTreeModel) + { + try + { + _dataTable = BuildTable(); + _currentNodeIndex = 0; + var rootNode = connectionTreeModel.RootNodes.First(node => node is RootNodeInfo); + return Serialize(rootNode); + } + catch + { + return _dataTable; + } + } + + public DataTable Serialize(ConnectionInfo serializationTarget) + { + _dataTable = BuildTable(); + _currentNodeIndex = 0; + // Register add or update row + SerializeNodesRecursive(serializationTarget); + var entryToDelete = sourcePrimaryKeyDict.Keys.ToList(); + foreach( var entry in entryToDelete) + { + _dataTable.Rows.Find(entry).Delete(); + } + return _dataTable; + } + + private DataTable BuildTable() + { + DataTable dataTable; + if (_sourceDataTable != null) + { + dataTable = _sourceDataTable; + }else + { + dataTable = new DataTable(TableName); + + } + if (dataTable.Columns.Count == 0) CreateSchema(dataTable); + if (dataTable.PrimaryKey.Length == 0 ) SetPrimaryKey(dataTable); + foreach(DataRow row in dataTable.Rows) + { + sourcePrimaryKeyDict.Add((string)row["ConstantID"], DELETE); + } + return dataTable; + } + + private void CreateSchema(DataTable dataTable) + { + // Note: these columns must be defined in the same order that they exist in the DB + dataTable.Columns.Add("ID", typeof(int)); + dataTable.Columns[0].AutoIncrement = true; + dataTable.Columns.Add("ConstantID", typeof(string)); + dataTable.Columns.Add("PositionID", typeof(int)); + dataTable.Columns.Add("ParentID", typeof(string)); + dataTable.Columns.Add("LastChange", MiscTools.DBTimeStampType()); + dataTable.Columns.Add("Name", typeof(string)); + dataTable.Columns.Add("Type", typeof(string)); + dataTable.Columns.Add("Expanded", typeof(bool)); + dataTable.Columns.Add("Description", typeof(string)); + dataTable.Columns.Add("Icon", typeof(string)); + dataTable.Columns.Add("Panel", typeof(string)); + dataTable.Columns.Add("Username", typeof(string)); + dataTable.Columns.Add("Domain", typeof(string)); + dataTable.Columns.Add("Password", typeof(string)); + dataTable.Columns.Add("Hostname", typeof(string)); + dataTable.Columns.Add("Port", typeof(int)); + dataTable.Columns.Add("Protocol", typeof(string)); + dataTable.Columns.Add("SSHTunnelConnectionName", typeof(string)); + dataTable.Columns.Add("SSHOptions", typeof(string)); + dataTable.Columns.Add("PuttySession", typeof(string)); + dataTable.Columns.Add("ConnectToConsole", typeof(bool)); + dataTable.Columns.Add("UseCredSsp", typeof(bool)); + dataTable.Columns.Add("RenderingEngine", typeof(string)); + dataTable.Columns.Add("RDPAuthenticationLevel", typeof(string)); + dataTable.Columns.Add("Colors", typeof(string)); + dataTable.Columns.Add("Resolution", typeof(string)); + dataTable.Columns.Add("DisplayWallpaper", typeof(bool)); + dataTable.Columns.Add("DisplayThemes", typeof(bool)); + dataTable.Columns.Add("EnableFontSmoothing", typeof(bool)); + dataTable.Columns.Add("EnableDesktopComposition", typeof(bool)); + dataTable.Columns.Add("DisableFullWindowDrag", typeof(bool)); + dataTable.Columns.Add("DisableMenuAnimations", typeof(bool)); + dataTable.Columns.Add("DisableCursorShadow", typeof(bool)); + dataTable.Columns.Add("DisableCursorBlinking", typeof(bool)); + dataTable.Columns.Add("CacheBitmaps", typeof(bool)); + dataTable.Columns.Add("RedirectDiskDrives", typeof(bool)); + dataTable.Columns.Add("RedirectPorts", typeof(bool)); + dataTable.Columns.Add("RedirectPrinters", typeof(bool)); + dataTable.Columns.Add("RedirectClipboard", typeof(bool)); + dataTable.Columns.Add("RedirectSmartCards", typeof(bool)); + dataTable.Columns.Add("RedirectSound", typeof(string)); + dataTable.Columns.Add("RedirectAudioCapture", typeof(bool)); + dataTable.Columns.Add("RedirectKeys", typeof(bool)); + dataTable.Columns.Add("Connected", typeof(bool)); + dataTable.Columns.Add("OpeningCommand", typeof(string)); + dataTable.Columns.Add("PreExtApp", typeof(string)); + dataTable.Columns.Add("PostExtApp", typeof(string)); + dataTable.Columns.Add("MacAddress", typeof(string)); + dataTable.Columns.Add("UserField", typeof(string)); + dataTable.Columns.Add("ExtApp", typeof(string)); + dataTable.Columns.Add("VNCCompression", typeof(string)); + dataTable.Columns.Add("VNCEncoding", typeof(string)); + dataTable.Columns.Add("VNCAuthMode", typeof(string)); + dataTable.Columns.Add("VNCProxyType", typeof(string)); + dataTable.Columns.Add("VNCProxyIP", typeof(string)); + dataTable.Columns.Add("VNCProxyPort", typeof(int)); + dataTable.Columns.Add("VNCProxyUsername", typeof(string)); + dataTable.Columns.Add("VNCProxyPassword", typeof(string)); + dataTable.Columns.Add("VNCColors", typeof(string)); + dataTable.Columns.Add("VNCSmartSizeMode", typeof(string)); + dataTable.Columns.Add("VNCViewOnly", typeof(bool)); + dataTable.Columns.Add("RDGatewayUsageMethod", typeof(string)); + dataTable.Columns.Add("RDGatewayHostname", typeof(string)); + dataTable.Columns.Add("RDGatewayUseConnectionCredentials", typeof(string)); + dataTable.Columns.Add("RDGatewayUsername", typeof(string)); + dataTable.Columns.Add("RDGatewayPassword", typeof(string)); + dataTable.Columns.Add("RDGatewayDomain", typeof(string)); + dataTable.Columns.Add("InheritCacheBitmaps", typeof(bool)); + dataTable.Columns.Add("InheritColors", typeof(bool)); + dataTable.Columns.Add("InheritDescription", typeof(bool)); + dataTable.Columns.Add("InheritDisplayThemes", typeof(bool)); + dataTable.Columns.Add("InheritDisplayWallpaper", typeof(bool)); + dataTable.Columns.Add("InheritEnableFontSmoothing", typeof(bool)); + dataTable.Columns.Add("InheritEnableDesktopComposition", typeof(bool)); + dataTable.Columns.Add("InheritDisableFullWindowDrag", typeof(bool)); + dataTable.Columns.Add("InheritDisableMenuAnimations", typeof(bool)); + dataTable.Columns.Add("InheritDisableCursorShadow", typeof(bool)); + dataTable.Columns.Add("InheritDisableCursorBlinking", typeof(bool)); + dataTable.Columns.Add("InheritDomain", typeof(bool)); + dataTable.Columns.Add("InheritIcon", typeof(bool)); + dataTable.Columns.Add("InheritPanel", typeof(bool)); + dataTable.Columns.Add("InheritPassword", typeof(bool)); + dataTable.Columns.Add("InheritPort", typeof(bool)); + dataTable.Columns.Add("InheritProtocol", typeof(bool)); + dataTable.Columns.Add("InheritSSHTunnelConnectionName", typeof(bool)); + dataTable.Columns.Add("InheritSSHOptions", typeof(bool)); + dataTable.Columns.Add("InheritPuttySession", typeof(bool)); + dataTable.Columns.Add("InheritRedirectDiskDrives", typeof(bool)); + dataTable.Columns.Add("InheritRedirectKeys", typeof(bool)); + dataTable.Columns.Add("InheritRedirectPorts", typeof(bool)); + dataTable.Columns.Add("InheritRedirectPrinters", typeof(bool)); + dataTable.Columns.Add("InheritRedirectClipboard", typeof(bool)); + dataTable.Columns.Add("InheritRedirectSmartCards", typeof(bool)); + dataTable.Columns.Add("InheritRedirectSound", typeof(bool)); + dataTable.Columns.Add("InheritRedirectAudioCapture", typeof(bool)); + dataTable.Columns.Add("InheritResolution", typeof(bool)); + dataTable.Columns.Add("InheritUseConsoleSession", typeof(bool)); + dataTable.Columns.Add("InheritUseCredSsp", typeof(bool)); + dataTable.Columns.Add("InheritRenderingEngine", typeof(bool)); + dataTable.Columns.Add("InheritRDPAuthenticationLevel", typeof(bool)); + dataTable.Columns.Add("InheritUsername", typeof(bool)); + dataTable.Columns.Add("InheritOpeningCommand", typeof(bool)); + dataTable.Columns.Add("InheritPreExtApp", typeof(bool)); + dataTable.Columns.Add("InheritPostExtApp", typeof(bool)); + dataTable.Columns.Add("InheritMacAddress", typeof(bool)); + dataTable.Columns.Add("InheritUserField", typeof(bool)); + dataTable.Columns.Add("InheritExtApp", typeof(bool)); + dataTable.Columns.Add("InheritVNCCompression", typeof(bool)); + dataTable.Columns.Add("InheritVNCEncoding", typeof(bool)); + dataTable.Columns.Add("InheritVNCAuthMode", typeof(bool)); + dataTable.Columns.Add("InheritVNCProxyType", typeof(bool)); + dataTable.Columns.Add("InheritVNCProxyIP", typeof(bool)); + dataTable.Columns.Add("InheritVNCProxyPort", typeof(bool)); + dataTable.Columns.Add("InheritVNCProxyUsername", typeof(bool)); + dataTable.Columns.Add("InheritVNCProxyPassword", typeof(bool)); + dataTable.Columns.Add("InheritVNCColors", typeof(bool)); + dataTable.Columns.Add("InheritVNCSmartSizeMode", typeof(bool)); + dataTable.Columns.Add("InheritVNCViewOnly", typeof(bool)); + dataTable.Columns.Add("InheritRDGatewayUsageMethod", typeof(bool)); + dataTable.Columns.Add("InheritRDGatewayHostname", typeof(bool)); + dataTable.Columns.Add("InheritRDGatewayUseConnectionCredentials", typeof(bool)); + dataTable.Columns.Add("InheritRDGatewayUsername", typeof(bool)); + dataTable.Columns.Add("InheritRDGatewayPassword", typeof(bool)); + dataTable.Columns.Add("InheritRDGatewayDomain", typeof(bool)); + dataTable.Columns.Add("LoadBalanceInfo", typeof(string)); + dataTable.Columns.Add("AutomaticResize", typeof(bool)); + dataTable.Columns.Add("InheritLoadBalanceInfo", typeof(bool)); + dataTable.Columns.Add("InheritAutomaticResize", typeof(bool)); + dataTable.Columns.Add("RDPMinutesToIdleTimeout", typeof(int)); + dataTable.Columns.Add("RDPAlertIdleTimeout", typeof(bool)); + dataTable.Columns.Add("SoundQuality", typeof(string)); + dataTable.Columns.Add("InheritRDPMinutesToIdleTimeout", typeof(bool)); + dataTable.Columns.Add("InheritRDPAlertIdleTimeout", typeof(bool)); + dataTable.Columns.Add("InheritSoundQuality", typeof(bool)); + dataTable.Columns.Add("VmId", typeof(string)); + dataTable.Columns.Add("UseVmId", typeof(bool)); + dataTable.Columns.Add("UseEnhancedMode", typeof(bool)); + dataTable.Columns.Add("InheritVmId", typeof(bool)); + dataTable.Columns.Add("InheritUseVmId", typeof(bool)); + dataTable.Columns.Add("InheritUseEnhancedMode", typeof(bool)); + dataTable.Columns.Add("RdpVersion", typeof(string)); + dataTable.Columns.Add("InheritRdpVersion", typeof(bool)); + dataTable.Columns.Add("EnhancedMode", typeof(bool)); + dataTable.Columns.Add("InheritEnhancedMode", typeof(bool)); + dataTable.Columns.Add("Favorite", typeof(bool)); + dataTable.Columns.Add("InheritFavorite", typeof(bool)); + dataTable.Columns.Add("ICAEncryptionStrength", typeof(string)); + dataTable.Columns.Add("InheritICAEncryptionStrength", typeof(bool)); + dataTable.Columns.Add("StartProgram", typeof(string)); + dataTable.Columns.Add("StartProgramWorkDir", typeof(string)); + } + + private void SetPrimaryKey(DataTable dataTable) + { + dataTable.PrimaryKey = new[] {dataTable.Columns["ConstantID"]}; + } + + private void SerializeNodesRecursive(ConnectionInfo connectionInfo) + { + if (!(connectionInfo is RootNodeInfo)) + SerializeConnectionInfo(connectionInfo); + var containerInfo = connectionInfo as ContainerInfo; + if (containerInfo == null) return; + foreach (var child in containerInfo.Children) + SerializeNodesRecursive(child); + } + + public bool isRowUpdated(ConnectionInfo connectionInfo, DataRow dataRow) + { + var isFieldNotChange = dataRow["Name"].Equals(connectionInfo.Name) && + dataRow["Type"].Equals(connectionInfo.GetTreeNodeType().ToString()) && + dataRow["ParentID"].Equals(connectionInfo.Parent?.ConstantID ?? "") && + dataRow["PositionID"].Equals(_currentNodeIndex) && + dataRow["Expanded"].Equals(false) && + dataRow["Description"].Equals(connectionInfo.Description) && + dataRow["Icon"].Equals(connectionInfo.Icon) && + dataRow["Panel"].Equals(connectionInfo.Panel) && + dataRow["Username"].Equals(_saveFilter.SaveUsername ? connectionInfo.Username : "") && + dataRow["Domain"].Equals(_saveFilter.SaveDomain ? connectionInfo.Domain : ""); + + isFieldNotChange = isFieldNotChange && dataRow["Hostname"].Equals(connectionInfo.Hostname); + isFieldNotChange = isFieldNotChange && dataRow["VmId"].Equals(connectionInfo.VmId); + isFieldNotChange = isFieldNotChange && dataRow["Protocol"].Equals(connectionInfo.Protocol.ToString()); + isFieldNotChange = isFieldNotChange && dataRow["PuttySession"].Equals(connectionInfo.PuttySession); + isFieldNotChange = isFieldNotChange && + dataRow["Port"].Equals(connectionInfo.Port); + isFieldNotChange = isFieldNotChange && + dataRow["ConnectToConsole"].Equals(connectionInfo.UseConsoleSession); + isFieldNotChange = isFieldNotChange && + dataRow["UseCredSsp"].Equals(connectionInfo.UseCredSsp); + isFieldNotChange = isFieldNotChange && + dataRow["UseVmId"].Equals(connectionInfo.UseVmId); + isFieldNotChange = isFieldNotChange && + dataRow["UseEnhancedMode"].Equals(connectionInfo.UseEnhancedMode); + isFieldNotChange = isFieldNotChange && + dataRow["RenderingEngine"].Equals(connectionInfo.RenderingEngine.ToString()); + isFieldNotChange = isFieldNotChange && + dataRow["RDPAuthenticationLevel"].Equals(connectionInfo.RDPAuthenticationLevel.ToString()); + isFieldNotChange = isFieldNotChange && + dataRow["RDPMinutesToIdleTimeout"].Equals(connectionInfo.RDPMinutesToIdleTimeout); + isFieldNotChange = isFieldNotChange && + dataRow["RDPAlertIdleTimeout"].Equals(connectionInfo.RDPAlertIdleTimeout); + isFieldNotChange = isFieldNotChange && + dataRow["LoadBalanceInfo"].Equals(connectionInfo.LoadBalanceInfo); + isFieldNotChange = isFieldNotChange && + dataRow["Colors"].Equals(connectionInfo.Colors.ToString()); + isFieldNotChange = isFieldNotChange && + dataRow["Resolution"].Equals(connectionInfo.Resolution.ToString()); + isFieldNotChange = isFieldNotChange && + dataRow["AutomaticResize"].Equals(connectionInfo.AutomaticResize); + isFieldNotChange = isFieldNotChange && + dataRow["DisplayWallpaper"].Equals(connectionInfo.DisplayWallpaper) && + dataRow["DisplayThemes"].Equals(connectionInfo.DisplayThemes) && + dataRow["EnableFontSmoothing"].Equals(connectionInfo.EnableFontSmoothing) && + dataRow["EnableDesktopComposition"].Equals(connectionInfo.EnableDesktopComposition) && + dataRow["DisableFullWindowDrag"].Equals(connectionInfo.DisableFullWindowDrag) && + dataRow["DisableMenuAnimations"].Equals(connectionInfo.DisableMenuAnimations) && + dataRow["DisableCursorShadow"].Equals(connectionInfo.DisableCursorShadow) && + dataRow["DisableCursorBlinking"].Equals(connectionInfo.DisableCursorBlinking) && + dataRow["CacheBitmaps"].Equals(connectionInfo.CacheBitmaps) && + dataRow["RedirectDiskDrives"].Equals(connectionInfo.RedirectDiskDrives) && + dataRow["RedirectPorts"].Equals(connectionInfo.RedirectPorts) && + dataRow["RedirectPrinters"].Equals(connectionInfo.RedirectPrinters) && + dataRow["RedirectClipboard"].Equals(connectionInfo.RedirectClipboard) && + dataRow["RedirectSmartCards"].Equals(connectionInfo.RedirectSmartCards) && + dataRow["RedirectSound"].Equals(connectionInfo.RedirectSound.ToString()) && + dataRow["SoundQuality"].Equals(connectionInfo.SoundQuality.ToString()) && + dataRow["RedirectAudioCapture"].Equals(connectionInfo.RedirectAudioCapture) && + dataRow["RedirectKeys"].Equals(connectionInfo.RedirectKeys) && + dataRow["StartProgram"].Equals(connectionInfo.StartProgram) && + dataRow["StartProgramWorkDir"].Equals(connectionInfo.StartProgramWorkDir); + + isFieldNotChange = isFieldNotChange && + dataRow["Connected"].Equals(false) && // TODO: this column can eventually be removed. we now save this property locally + dataRow["OpeningCommand"].Equals(connectionInfo.OpeningCommand) && + dataRow["PreExtApp"].Equals(connectionInfo.PreExtApp) && + dataRow["PostExtApp"].Equals(connectionInfo.PostExtApp) && + dataRow["MacAddress"].Equals(connectionInfo.MacAddress) && + dataRow["UserField"].Equals(connectionInfo.UserField) && + dataRow["ExtApp"].Equals(connectionInfo.ExtApp) && + dataRow["VNCCompression"].Equals(connectionInfo.VNCCompression.ToString()) && + dataRow["VNCEncoding"].Equals(connectionInfo.VNCEncoding.ToString()) && + dataRow["VNCAuthMode"].Equals(connectionInfo.VNCAuthMode.ToString()) && + dataRow["VNCProxyType"].Equals(connectionInfo.VNCProxyType.ToString()) && + dataRow["VNCProxyIP"].Equals(connectionInfo.VNCProxyIP) && + dataRow["VNCProxyPort"].Equals(connectionInfo.VNCProxyPort) && + dataRow["VNCProxyUsername"].Equals(connectionInfo.VNCProxyUsername) && + dataRow["VNCColors"].Equals(connectionInfo.VNCColors.ToString()) && + dataRow["VNCSmartSizeMode"].Equals(connectionInfo.VNCSmartSizeMode.ToString()) && + dataRow["VNCViewOnly"].Equals(connectionInfo.VNCViewOnly) && + dataRow["RDGatewayUsageMethod"].Equals(connectionInfo.RDGatewayUsageMethod.ToString()) && + dataRow["RDGatewayHostname"].Equals(connectionInfo.RDGatewayHostname) && + dataRow["RDGatewayUseConnectionCredentials"].Equals(connectionInfo.RDGatewayUseConnectionCredentials.ToString()) && + dataRow["RDGatewayUsername"].Equals(connectionInfo.RDGatewayUsername) && + dataRow["RDGatewayDomain"].Equals(connectionInfo.RDGatewayDomain) && + dataRow["RdpVersion"].Equals(connectionInfo.RdpVersion.ToString()); + + var isInheritanceFieldNotChange = false; + if (_saveFilter.SaveInheritance) + { + isInheritanceFieldNotChange = (dataRow["InheritCacheBitmaps"].Equals(connectionInfo.Inheritance.CacheBitmaps) && + dataRow["InheritColors"].Equals(connectionInfo.Inheritance.Colors) && + dataRow["InheritDescription"].Equals(connectionInfo.Inheritance.Description) && + dataRow["InheritDisplayThemes"].Equals(connectionInfo.Inheritance.DisplayThemes) && + dataRow["InheritDisplayWallpaper"].Equals(connectionInfo.Inheritance.DisplayWallpaper) && + dataRow["InheritEnableFontSmoothing"].Equals(connectionInfo.Inheritance.EnableFontSmoothing) && + dataRow["InheritEnableDesktopComposition"].Equals(connectionInfo.Inheritance.EnableDesktopComposition) && + dataRow["InheritDisableFullWindowDrag"].Equals(connectionInfo.Inheritance.DisableFullWindowDrag) && + dataRow["InheritDisableMenuAnimations"].Equals(connectionInfo.Inheritance.DisableMenuAnimations) && + dataRow["InheritDisableCursorShadow"].Equals(connectionInfo.Inheritance.DisableCursorShadow) && + dataRow["InheritDisableCursorBlinking"].Equals(connectionInfo.Inheritance.DisableCursorBlinking) && + dataRow["InheritDomain"].Equals(connectionInfo.Inheritance.Domain) && + dataRow["InheritIcon"].Equals(connectionInfo.Inheritance.Icon) && + dataRow["InheritPanel"].Equals(connectionInfo.Inheritance.Panel) && + dataRow["InheritPassword"].Equals(connectionInfo.Inheritance.Password) && + dataRow["InheritPort"].Equals(connectionInfo.Inheritance.Port) && + dataRow["InheritProtocol"].Equals(connectionInfo.Inheritance.Protocol) && + dataRow["InheritPuttySession"].Equals(connectionInfo.Inheritance.PuttySession) && + dataRow["InheritRedirectDiskDrives"].Equals(connectionInfo.Inheritance.RedirectDiskDrives) && + dataRow["InheritRedirectKeys"].Equals(connectionInfo.Inheritance.RedirectKeys) && + dataRow["InheritRedirectPorts"].Equals(connectionInfo.Inheritance.RedirectPorts) && + dataRow["InheritRedirectPrinters"].Equals(connectionInfo.Inheritance.RedirectPrinters) && + dataRow["InheritRedirectClipboard"].Equals(connectionInfo.Inheritance.RedirectClipboard) && + dataRow["InheritRedirectSmartCards"].Equals(connectionInfo.Inheritance.RedirectSmartCards) && + dataRow["InheritRedirectSound"].Equals(connectionInfo.Inheritance.RedirectSound) && + dataRow["InheritSoundQuality"].Equals(connectionInfo.Inheritance.SoundQuality) && + dataRow["InheritRedirectAudioCapture"].Equals(connectionInfo.Inheritance.RedirectAudioCapture) && + dataRow["InheritResolution"].Equals(connectionInfo.Inheritance.Resolution) && + dataRow["InheritAutomaticResize"].Equals(connectionInfo.Inheritance.AutomaticResize) && + dataRow["InheritUseConsoleSession"].Equals(connectionInfo.Inheritance.UseConsoleSession) && + dataRow["InheritUseCredSsp"].Equals(connectionInfo.Inheritance.UseCredSsp) && + dataRow["InheritRenderingEngine"].Equals(connectionInfo.Inheritance.RenderingEngine) && + dataRow["InheritUsername"].Equals(connectionInfo.Inheritance.Username) && + dataRow["InheritVmId"].Equals(connectionInfo.Inheritance.VmId) && + dataRow["InheritUseVmId"].Equals(connectionInfo.Inheritance.UseVmId) && + dataRow["InheritUseEnhancedMode"].Equals(connectionInfo.Inheritance.UseEnhancedMode) && + dataRow["InheritRDPAuthenticationLevel"].Equals(connectionInfo.Inheritance.RDPAuthenticationLevel) && + dataRow["InheritRDPMinutesToIdleTimeout"].Equals(connectionInfo.Inheritance.RDPMinutesToIdleTimeout) && + dataRow["InheritRDPAlertIdleTimeout"].Equals(connectionInfo.Inheritance.RDPAlertIdleTimeout) && + dataRow["InheritLoadBalanceInfo"].Equals(connectionInfo.Inheritance.LoadBalanceInfo) && + dataRow["InheritOpeningCommand"].Equals(connectionInfo.Inheritance.OpeningCommand) && + dataRow["InheritPreExtApp"].Equals(connectionInfo.Inheritance.PreExtApp) && + dataRow["InheritPostExtApp"].Equals(connectionInfo.Inheritance.PostExtApp) && + dataRow["InheritMacAddress"].Equals(connectionInfo.Inheritance.MacAddress) && + dataRow["InheritUserField"].Equals(connectionInfo.Inheritance.UserField) && + dataRow["InheritExtApp"].Equals(connectionInfo.Inheritance.ExtApp) && + dataRow["InheritVNCCompression"].Equals(connectionInfo.Inheritance.VNCCompression) && + dataRow["InheritVNCEncoding"].Equals(connectionInfo.Inheritance.VNCEncoding) && + dataRow["InheritVNCAuthMode"].Equals(connectionInfo.Inheritance.VNCAuthMode) && + dataRow["InheritVNCProxyType"].Equals(connectionInfo.Inheritance.VNCProxyType) && + dataRow["InheritVNCProxyIP"].Equals(connectionInfo.Inheritance.VNCProxyIP) && + dataRow["InheritVNCProxyPort"].Equals(connectionInfo.Inheritance.VNCProxyPort) && + dataRow["InheritVNCProxyUsername"].Equals(connectionInfo.Inheritance.VNCProxyUsername) && + dataRow["InheritVNCProxyPassword"].Equals(connectionInfo.Inheritance.VNCProxyPassword) && + dataRow["InheritVNCColors"].Equals(connectionInfo.Inheritance.VNCColors) && + dataRow["InheritVNCSmartSizeMode"].Equals(connectionInfo.Inheritance.VNCSmartSizeMode) && + dataRow["InheritVNCViewOnly"].Equals(connectionInfo.Inheritance.VNCViewOnly) && + dataRow["InheritRDGatewayUsageMethod"].Equals(connectionInfo.Inheritance.RDGatewayUsageMethod) && + dataRow["InheritRDGatewayHostname"].Equals(connectionInfo.Inheritance.RDGatewayHostname) && + dataRow["InheritRDGatewayUseConnectionCredentials"].Equals(connectionInfo.Inheritance.RDGatewayUseConnectionCredentials) && + dataRow["InheritRDGatewayUsername"].Equals(connectionInfo.Inheritance.RDGatewayUsername) && + dataRow["InheritRDGatewayPassword"].Equals(connectionInfo.Inheritance.RDGatewayPassword) && + dataRow["InheritRDGatewayDomain"].Equals(connectionInfo.Inheritance.RDGatewayDomain) && + dataRow["InheritRdpVersion"].Equals(connectionInfo.Inheritance.RdpVersion)); + } + else + { + isInheritanceFieldNotChange = (dataRow["InheritCacheBitmaps"].Equals(false) && + dataRow["InheritColors"].Equals(false) && + dataRow["InheritDescription"].Equals(false) && + dataRow["InheritDisplayThemes"].Equals(false) && + dataRow["InheritDisplayWallpaper"].Equals(false) && + dataRow["InheritEnableFontSmoothing"].Equals(false) && + dataRow["InheritEnableDesktopComposition"].Equals(false) && + dataRow["InheritDisableFullWindowDrag"].Equals(false) && + dataRow["InheritDisableMenuAnimations"].Equals(false) && + dataRow["InheritDisableCursorShadow"].Equals(false) && + dataRow["InheritDisableCursorBlinking"].Equals(false) && + dataRow["InheritDomain"].Equals(false) && + dataRow["InheritIcon"].Equals(false) && + dataRow["InheritPanel"].Equals(false) && + dataRow["InheritPassword"].Equals(false) && + dataRow["InheritPort"].Equals(false) && + dataRow["InheritProtocol"].Equals(false) && + dataRow["InheritPuttySession"].Equals(false) && + dataRow["InheritRedirectDiskDrives"].Equals(false) && + dataRow["InheritRedirectKeys"].Equals(false) && + dataRow["InheritRedirectPorts"].Equals(false) && + dataRow["InheritRedirectPrinters"].Equals(false) && + dataRow["InheritRedirectClipboard"].Equals(false) && + dataRow["InheritRedirectSmartCards"].Equals(false) && + dataRow["InheritRedirectSound"].Equals(false) && + dataRow["InheritSoundQuality"].Equals(false) && + dataRow["InheritRedirectAudioCapture"].Equals(false) && + dataRow["InheritResolution"].Equals(false) && + dataRow["InheritAutomaticResize"].Equals(false) && + dataRow["InheritUseConsoleSession"].Equals(false) && + dataRow["InheritUseCredSsp"].Equals(false) && + dataRow["InheritRenderingEngine"].Equals(false) && + dataRow["InheritUsername"].Equals(false) && + dataRow["InheritRDPAuthenticationLevel"].Equals(false) && + dataRow["InheritRDPMinutesToIdleTimeout"].Equals(false) && + dataRow["InheritRDPAlertIdleTimeout"].Equals(false) && + dataRow["InheritLoadBalanceInfo"].Equals(false) && + dataRow["InheritOpeningCommand"].Equals(false) && + dataRow["InheritPreExtApp"].Equals(false) && + dataRow["InheritPostExtApp"].Equals(false) && + dataRow["InheritMacAddress"].Equals(false) && + dataRow["InheritUserField"].Equals(false) && + dataRow["InheritExtApp"].Equals(false) && + dataRow["InheritVNCCompression"].Equals(false) && + dataRow["InheritVNCEncoding"].Equals(false) && + dataRow["InheritVNCAuthMode"].Equals(false) && + dataRow["InheritVNCProxyType"].Equals(false) && + dataRow["InheritVNCProxyIP"].Equals(false) && + dataRow["InheritVNCProxyPort"].Equals(false) && + dataRow["InheritVNCProxyUsername"].Equals(false) && + dataRow["InheritVNCProxyPassword"].Equals(false) && + dataRow["InheritVNCColors"].Equals(false) && + dataRow["InheritVNCSmartSizeMode"].Equals(false) && + dataRow["InheritVNCViewOnly"].Equals(false) && + dataRow["InheritRDGatewayUsageMethod"].Equals(false) && + dataRow["InheritRDGatewayHostname"].Equals(false) && + dataRow["InheritRDGatewayUseConnectionCredentials"].Equals(false) && + dataRow["InheritRDGatewayUsername"].Equals(false) && + dataRow["InheritRDGatewayPassword"].Equals(false) && + dataRow["InheritRDGatewayDomain"].Equals(false) && + dataRow["InheritRdpVersion"].Equals(false)); + } + + var pwd = dataRow["Password"].Equals(_saveFilter.SavePassword ? _cryptographyProvider.Encrypt(connectionInfo.Password, _encryptionKey) : "") && + dataRow["VNCProxyPassword"].Equals(_cryptographyProvider.Encrypt(connectionInfo.VNCProxyPassword, _encryptionKey)) && + dataRow["RDGatewayPassword"].Equals(_cryptographyProvider.Encrypt(connectionInfo.RDGatewayPassword, _encryptionKey)); + return !(pwd && isFieldNotChange && isInheritanceFieldNotChange); + } + + private void SerializeConnectionInfo(ConnectionInfo connectionInfo) + { + _currentNodeIndex++; + var isNewRow = false; + DataRow dataRow = _dataTable.Rows.Find(connectionInfo.ConstantID); + if (dataRow == null) + { + dataRow = _dataTable.NewRow(); + dataRow["ConstantID"] = connectionInfo.ConstantID; + isNewRow = true; + } + else + { + sourcePrimaryKeyDict.Remove(connectionInfo.ConstantID); + } + var tmp = isRowUpdated(connectionInfo, dataRow); + if (!tmp){ + return; + } + dataRow["Name"] = connectionInfo.Name; + dataRow["Type"] = connectionInfo.GetTreeNodeType().ToString(); + dataRow["ParentID"] = connectionInfo.Parent?.ConstantID ?? ""; + dataRow["PositionID"] = _currentNodeIndex; + dataRow["LastChange"] = MiscTools.DBTimeStampNow(); + dataRow["Expanded"] = + false; // TODO: this column can eventually be removed. we now save this property locally + dataRow["Description"] = connectionInfo.Description; + dataRow["Icon"] = connectionInfo.Icon; + dataRow["Panel"] = connectionInfo.Panel; + dataRow["Username"] = _saveFilter.SaveUsername ? connectionInfo.Username : ""; + dataRow["Domain"] = _saveFilter.SaveDomain ? connectionInfo.Domain : ""; + dataRow["Password"] = _saveFilter.SavePassword + ? _cryptographyProvider.Encrypt(connectionInfo.Password, _encryptionKey) + : ""; + dataRow["Hostname"] = connectionInfo.Hostname; + dataRow["VmId"] = connectionInfo.VmId; + dataRow["Protocol"] = connectionInfo.Protocol; + dataRow["SSHTunnelConnectionName"] = connectionInfo.SSHTunnelConnectionName; + dataRow["OpeningCommand"] = connectionInfo.OpeningCommand; + dataRow["SSHOptions"] = connectionInfo.SSHOptions; + dataRow["PuttySession"] = connectionInfo.PuttySession; + dataRow["Port"] = connectionInfo.Port; + dataRow["ConnectToConsole"] = connectionInfo.UseConsoleSession; + dataRow["UseCredSsp"] = connectionInfo.UseCredSsp; + dataRow["UseVmId"] = connectionInfo.UseVmId; + dataRow["UseEnhancedMode"] = connectionInfo.UseEnhancedMode; + dataRow["RenderingEngine"] = connectionInfo.RenderingEngine; + dataRow["RDPAuthenticationLevel"] = connectionInfo.RDPAuthenticationLevel; + dataRow["RDPMinutesToIdleTimeout"] = connectionInfo.RDPMinutesToIdleTimeout; + dataRow["RDPAlertIdleTimeout"] = connectionInfo.RDPAlertIdleTimeout; + dataRow["LoadBalanceInfo"] = connectionInfo.LoadBalanceInfo; + dataRow["Colors"] = connectionInfo.Colors; + dataRow["Resolution"] = connectionInfo.Resolution; + dataRow["AutomaticResize"] = connectionInfo.AutomaticResize; + dataRow["DisplayWallpaper"] = connectionInfo.DisplayWallpaper; + dataRow["DisplayThemes"] = connectionInfo.DisplayThemes; + dataRow["EnableFontSmoothing"] = connectionInfo.EnableFontSmoothing; + dataRow["EnableDesktopComposition"] = connectionInfo.EnableDesktopComposition; + dataRow["DisableFullWindowDrag"] = connectionInfo.DisableFullWindowDrag; + dataRow["DisableMenuAnimations"] = connectionInfo.DisableMenuAnimations; + dataRow["DisableCursorShadow"] = connectionInfo.DisableCursorShadow; + dataRow["DisableCursorBlinking"] = connectionInfo.DisableCursorBlinking; + dataRow["CacheBitmaps"] = connectionInfo.CacheBitmaps; + dataRow["RedirectDiskDrives"] = connectionInfo.RedirectDiskDrives; + dataRow["RedirectPorts"] = connectionInfo.RedirectPorts; + dataRow["RedirectPrinters"] = connectionInfo.RedirectPrinters; + dataRow["RedirectClipboard"] = connectionInfo.RedirectClipboard; + dataRow["RedirectSmartCards"] = connectionInfo.RedirectSmartCards; + dataRow["RedirectSound"] = connectionInfo.RedirectSound; + dataRow["SoundQuality"] = connectionInfo.SoundQuality; + dataRow["RedirectAudioCapture"] = connectionInfo.RedirectAudioCapture; + dataRow["RedirectKeys"] = connectionInfo.RedirectKeys; + dataRow["Connected"] = false; // TODO: this column can eventually be removed. we now save this property locally + dataRow["OpeningCommand"] = connectionInfo.OpeningCommand; + dataRow["PreExtApp"] = connectionInfo.PreExtApp; + dataRow["PostExtApp"] = connectionInfo.PostExtApp; + dataRow["MacAddress"] = connectionInfo.MacAddress; + dataRow["UserField"] = connectionInfo.UserField; + dataRow["ExtApp"] = connectionInfo.ExtApp; + dataRow["VNCCompression"] = connectionInfo.VNCCompression; + dataRow["VNCEncoding"] = connectionInfo.VNCEncoding; + dataRow["VNCAuthMode"] = connectionInfo.VNCAuthMode; + dataRow["VNCProxyType"] = connectionInfo.VNCProxyType; + dataRow["VNCProxyIP"] = connectionInfo.VNCProxyIP; + dataRow["VNCProxyPort"] = connectionInfo.VNCProxyPort; + dataRow["VNCProxyUsername"] = connectionInfo.VNCProxyUsername; + dataRow["VNCProxyPassword"] = + _cryptographyProvider.Encrypt(connectionInfo.VNCProxyPassword, _encryptionKey); + dataRow["VNCColors"] = connectionInfo.VNCColors; + dataRow["VNCSmartSizeMode"] = connectionInfo.VNCSmartSizeMode; + dataRow["VNCViewOnly"] = connectionInfo.VNCViewOnly; + dataRow["RDGatewayUsageMethod"] = connectionInfo.RDGatewayUsageMethod; + dataRow["RDGatewayHostname"] = connectionInfo.RDGatewayHostname; + dataRow["RDGatewayUseConnectionCredentials"] = connectionInfo.RDGatewayUseConnectionCredentials; + dataRow["RDGatewayUsername"] = connectionInfo.RDGatewayUsername; + dataRow["RDGatewayPassword"] = _cryptographyProvider.Encrypt(connectionInfo.RDGatewayPassword, _encryptionKey); + dataRow["RDGatewayDomain"] = connectionInfo.RDGatewayDomain; + dataRow["RdpVersion"] = connectionInfo.RdpVersion; + dataRow["Favorite"] = connectionInfo.Favorite; + dataRow["ICAEncryptionStrength"] = string.Empty; + dataRow["Prop_StartProgram"] = connectionInfo.StartProgram; + dataRow["Prop_StartProgramWorkDir"] = connectionInfo.StartProgramWorkDir; + + if (_saveFilter.SaveInheritance) + { + dataRow["InheritCacheBitmaps"] = connectionInfo.Inheritance.CacheBitmaps; + dataRow["InheritColors"] = connectionInfo.Inheritance.Colors; + dataRow["InheritDescription"] = connectionInfo.Inheritance.Description; + dataRow["InheritDisplayThemes"] = connectionInfo.Inheritance.DisplayThemes; + dataRow["InheritDisplayWallpaper"] = connectionInfo.Inheritance.DisplayWallpaper; + dataRow["InheritEnableFontSmoothing"] = connectionInfo.Inheritance.EnableFontSmoothing; + dataRow["InheritEnableDesktopComposition"] = connectionInfo.Inheritance.EnableDesktopComposition; + dataRow["InheritDisableFullWindowDrag"] = connectionInfo.Inheritance.DisableFullWindowDrag; + dataRow["InheritDisableMenuAnimations"] = connectionInfo.Inheritance.DisableMenuAnimations; + dataRow["InheritDisableCursorShadow"] = connectionInfo.Inheritance.DisableCursorShadow; + dataRow["InheritDisableCursorBlinking"] = connectionInfo.Inheritance.DisableCursorBlinking; + dataRow["InheritDomain"] = connectionInfo.Inheritance.Domain; + dataRow["InheritIcon"] = connectionInfo.Inheritance.Icon; + dataRow["InheritPanel"] = connectionInfo.Inheritance.Panel; + dataRow["InheritPassword"] = connectionInfo.Inheritance.Password; + dataRow["InheritPort"] = connectionInfo.Inheritance.Port; + dataRow["InheritProtocol"] = connectionInfo.Inheritance.Protocol; + dataRow["InheritSSHTunnelConnectionName"] = connectionInfo.Inheritance.SSHTunnelConnectionName; + dataRow["InheritOpeningCommand"] = connectionInfo.Inheritance.OpeningCommand; + dataRow["InheritSSHOptions"] = connectionInfo.Inheritance.SSHOptions; + dataRow["InheritPuttySession"] = connectionInfo.Inheritance.PuttySession; + dataRow["InheritRedirectDiskDrives"] = connectionInfo.Inheritance.RedirectDiskDrives; + dataRow["InheritRedirectKeys"] = connectionInfo.Inheritance.RedirectKeys; + dataRow["InheritRedirectPorts"] = connectionInfo.Inheritance.RedirectPorts; + dataRow["InheritRedirectPrinters"] = connectionInfo.Inheritance.RedirectPrinters; + dataRow["InheritRedirectClipboard"] = connectionInfo.Inheritance.RedirectClipboard; + dataRow["InheritRedirectSmartCards"] = connectionInfo.Inheritance.RedirectSmartCards; + dataRow["InheritRedirectSound"] = connectionInfo.Inheritance.RedirectSound; + dataRow["InheritSoundQuality"] = connectionInfo.Inheritance.SoundQuality; + dataRow["InheritRedirectAudioCapture"] = connectionInfo.Inheritance.RedirectAudioCapture; + dataRow["InheritResolution"] = connectionInfo.Inheritance.Resolution; + dataRow["InheritAutomaticResize"] = connectionInfo.Inheritance.AutomaticResize; + dataRow["InheritUseConsoleSession"] = connectionInfo.Inheritance.UseConsoleSession; + dataRow["InheritUseCredSsp"] = connectionInfo.Inheritance.UseCredSsp; + dataRow["InheritRenderingEngine"] = connectionInfo.Inheritance.RenderingEngine; + dataRow["InheritUsername"] = connectionInfo.Inheritance.Username; + dataRow["InheritVmId"] = connectionInfo.Inheritance.VmId; + dataRow["InheritUseVmId"] = connectionInfo.Inheritance.UseVmId; + dataRow["InheritUseEnhancedMode"] = connectionInfo.Inheritance.UseEnhancedMode; + dataRow["InheritRDPAuthenticationLevel"] = connectionInfo.Inheritance.RDPAuthenticationLevel; + dataRow["InheritRDPMinutesToIdleTimeout"] = connectionInfo.Inheritance.RDPMinutesToIdleTimeout; + dataRow["InheritRDPAlertIdleTimeout"] = connectionInfo.Inheritance.RDPAlertIdleTimeout; + dataRow["InheritLoadBalanceInfo"] = connectionInfo.Inheritance.LoadBalanceInfo; + dataRow["InheritOpeningCommand"] = connectionInfo.Inheritance.OpeningCommand; + dataRow["InheritPreExtApp"] = connectionInfo.Inheritance.PreExtApp; + dataRow["InheritPostExtApp"] = connectionInfo.Inheritance.PostExtApp; + dataRow["InheritMacAddress"] = connectionInfo.Inheritance.MacAddress; + dataRow["InheritUserField"] = connectionInfo.Inheritance.UserField; + dataRow["InheritExtApp"] = connectionInfo.Inheritance.ExtApp; + dataRow["InheritVNCCompression"] = connectionInfo.Inheritance.VNCCompression; + dataRow["InheritVNCEncoding"] = connectionInfo.Inheritance.VNCEncoding; + dataRow["InheritVNCAuthMode"] = connectionInfo.Inheritance.VNCAuthMode; + dataRow["InheritVNCProxyType"] = connectionInfo.Inheritance.VNCProxyType; + dataRow["InheritVNCProxyIP"] = connectionInfo.Inheritance.VNCProxyIP; + dataRow["InheritVNCProxyPort"] = connectionInfo.Inheritance.VNCProxyPort; + dataRow["InheritVNCProxyUsername"] = connectionInfo.Inheritance.VNCProxyUsername; + dataRow["InheritVNCProxyPassword"] = connectionInfo.Inheritance.VNCProxyPassword; + dataRow["InheritVNCColors"] = connectionInfo.Inheritance.VNCColors; + dataRow["InheritVNCSmartSizeMode"] = connectionInfo.Inheritance.VNCSmartSizeMode; + dataRow["InheritVNCViewOnly"] = connectionInfo.Inheritance.VNCViewOnly; + dataRow["InheritRDGatewayUsageMethod"] = connectionInfo.Inheritance.RDGatewayUsageMethod; + dataRow["InheritRDGatewayHostname"] = connectionInfo.Inheritance.RDGatewayHostname; + dataRow["InheritRDGatewayUseConnectionCredentials"] = connectionInfo.Inheritance.RDGatewayUseConnectionCredentials; + dataRow["InheritRDGatewayUsername"] = connectionInfo.Inheritance.RDGatewayUsername; + dataRow["InheritRDGatewayPassword"] = connectionInfo.Inheritance.RDGatewayPassword; + dataRow["InheritRDGatewayDomain"] = connectionInfo.Inheritance.RDGatewayDomain; + dataRow["InheritRdpVersion"] = connectionInfo.Inheritance.RdpVersion; + dataRow["InheritFavorite"] = connectionInfo.Inheritance.Favorite; + dataRow["InheritICAEncryptionStrength"] = false; + } + else + { + dataRow["InheritCacheBitmaps"] = false; + dataRow["InheritColors"] = false; + dataRow["InheritDescription"] = false; + dataRow["InheritDisplayThemes"] = false; + dataRow["InheritDisplayWallpaper"] = false; + dataRow["InheritEnableFontSmoothing"] = false; + dataRow["InheritEnableDesktopComposition"] = false; + dataRow["InheritDisableFullWindowDrag"] = false; + dataRow["InheritDisableMenuAnimations"] = false; + dataRow["InheritDisableCursorShadow"] = false; + dataRow["InheritDisableCursorBlinking"] = false; + dataRow["InheritDomain"] = false; + dataRow["InheritIcon"] = false; + dataRow["InheritPanel"] = false; + dataRow["InheritPassword"] = false; + dataRow["InheritPort"] = false; + dataRow["InheritProtocol"] = false; + dataRow["InheritSSHTunnelConnectionName"] = false; + dataRow["InheritSSHOptions"] = false; + dataRow["InheritPuttySession"] = false; + dataRow["InheritRedirectDiskDrives"] = false; + dataRow["InheritRedirectKeys"] = false; + dataRow["InheritRedirectPorts"] = false; + dataRow["InheritRedirectPrinters"] = false; + dataRow["InheritRedirectClipboard"] = false; + dataRow["InheritRedirectSmartCards"] = false; + dataRow["InheritRedirectSound"] = false; + dataRow["InheritSoundQuality"] = false; + dataRow["InheritRedirectAudioCapture"] = false; + dataRow["InheritResolution"] = false; + dataRow["InheritAutomaticResize"] = false; + dataRow["InheritUseConsoleSession"] = false; + dataRow["InheritUseCredSsp"] = false; + dataRow["InheritRenderingEngine"] = false; + dataRow["InheritUsername"] = false; + dataRow["InheritRDPAuthenticationLevel"] = false; + dataRow["InheritRDPMinutesToIdleTimeout"] = false; + dataRow["InheritRDPAlertIdleTimeout"] = false; + dataRow["InheritLoadBalanceInfo"] = false; + dataRow["InheritOpeningCommand"] = false; + dataRow["InheritPreExtApp"] = false; + dataRow["InheritPostExtApp"] = false; + dataRow["InheritMacAddress"] = false; + dataRow["InheritUserField"] = false; + dataRow["InheritExtApp"] = false; + dataRow["InheritVNCCompression"] = false; + dataRow["InheritVNCEncoding"] = false; + dataRow["InheritVNCAuthMode"] = false; + dataRow["InheritVNCProxyType"] = false; + dataRow["InheritVNCProxyIP"] = false; + dataRow["InheritVNCProxyPort"] = false; + dataRow["InheritVNCProxyUsername"] = false; + dataRow["InheritVNCProxyPassword"] = false; + dataRow["InheritVNCColors"] = false; + dataRow["InheritVNCSmartSizeMode"] = false; + dataRow["InheritVNCViewOnly"] = false; + dataRow["InheritRDGatewayUsageMethod"] = false; + dataRow["InheritRDGatewayHostname"] = false; + dataRow["InheritRDGatewayUseConnectionCredentials"] = false; + dataRow["InheritRDGatewayUsername"] = false; + dataRow["InheritRDGatewayPassword"] = false; + dataRow["InheritRDGatewayDomain"] = false; + dataRow["InheritRdpVersion"] = false; + dataRow["InheritFavorite"] = false; + dataRow["InheritICAEncryptionStrength"] = false; + } + if (isNewRow)_dataTable.Rows.Add(dataRow); + } + } } \ No newline at end of file diff --git a/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/SqlDatabaseMetaDataRetriever.cs b/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/SqlDatabaseMetaDataRetriever.cs index f51ce665e..1252fb280 100644 --- a/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/SqlDatabaseMetaDataRetriever.cs +++ b/mRemoteNG/Config/Serializers/ConnectionSerializers/MsSql/SqlDatabaseMetaDataRetriever.cs @@ -80,9 +80,9 @@ namespace mRemoteNG.Config.Serializers.ConnectionSerializers.MsSql if (rootTreeNode != null) { cmd = databaseConnector.DbCommand( - "INSERT INTO tblRoot (Name, Export, Protected, ConfVersion) VALUES(\'" + - MiscTools.PrepareValueForDB(rootTreeNode.Name) + "\', 0, \'" + strProtected + "\'," + - ConnectionsFileInfo.ConnectionFileVersion.ToString(CultureInfo.InvariantCulture) + ")"); + "INSERT INTO tblRoot (Name, Export, Protected, ConfVersion) VALUES('" + + MiscTools.PrepareValueForDB(rootTreeNode.Name) + "', 0, '" + strProtected + "','" + + ConnectionsFileInfo.ConnectionFileVersion.ToString() + "')"); cmd.ExecuteNonQuery(); } else diff --git a/mRemoteNG/Config/Serializers/ConnectionSerializers/Xml/XmlConnectionNodeSerializer27.cs b/mRemoteNG/Config/Serializers/ConnectionSerializers/Xml/XmlConnectionNodeSerializer27.cs index 17e9d6fc8..c2d822edf 100644 --- a/mRemoteNG/Config/Serializers/ConnectionSerializers/Xml/XmlConnectionNodeSerializer27.cs +++ b/mRemoteNG/Config/Serializers/ConnectionSerializers/Xml/XmlConnectionNodeSerializer27.cs @@ -116,6 +116,7 @@ namespace mRemoteNG.Config.Serializers.ConnectionSerializers.Xml element.Add(new XAttribute("Favorite", connectionInfo.Favorite)); element.Add(new XAttribute("ExtApp", connectionInfo.ExtApp)); element.Add(new XAttribute("StartProgram", connectionInfo.StartProgram)); + element.Add(new XAttribute("StartProgramWorkDir", connectionInfo.StartProgramWorkDir)); element.Add(new XAttribute("VNCCompression", connectionInfo.VNCCompression)); element.Add(new XAttribute("VNCEncoding", connectionInfo.VNCEncoding)); element.Add(new XAttribute("VNCAuthMode", connectionInfo.VNCAuthMode)); diff --git a/mRemoteNG/Config/Serializers/ConnectionSerializers/Xml/XmlConnectionsDeserializer.cs b/mRemoteNG/Config/Serializers/ConnectionSerializers/Xml/XmlConnectionsDeserializer.cs index 3e1e3c8d7..e74b2a4b7 100644 --- a/mRemoteNG/Config/Serializers/ConnectionSerializers/Xml/XmlConnectionsDeserializer.cs +++ b/mRemoteNG/Config/Serializers/ConnectionSerializers/Xml/XmlConnectionsDeserializer.cs @@ -1,574 +1,577 @@ -using System; -using System.Globalization; -using System.Security; -using System.Windows.Forms; -using System.Xml; -using mRemoteNG.App; -using mRemoteNG.Connection; -using mRemoteNG.Connection.Protocol; -using mRemoteNG.Connection.Protocol.Http; -using mRemoteNG.Connection.Protocol.RDP; -using mRemoteNG.Connection.Protocol.VNC; -using mRemoteNG.Container; -using mRemoteNG.Messages; -using mRemoteNG.Security; -using mRemoteNG.Tools; -using mRemoteNG.Tree; -using mRemoteNG.Tree.Root; -using mRemoteNG.UI.Forms; -using mRemoteNG.UI.TaskDialog; -using mRemoteNG.Resources.Language; - -namespace mRemoteNG.Config.Serializers.ConnectionSerializers.Xml -{ - public class XmlConnectionsDeserializer : IDeserializer - { - private XmlDocument _xmlDocument; - private double _confVersion; - private XmlConnectionsDecryptor _decryptor; - private string ConnectionFileName = ""; - private const double MaxSupportedConfVersion = 2.8; - private readonly RootNodeInfo _rootNodeInfo = new RootNodeInfo(RootNodeType.Connection); - - public Func> AuthenticationRequestor { get; set; } - - public XmlConnectionsDeserializer(Func> authenticationRequestor = null) - { - AuthenticationRequestor = authenticationRequestor; - } - - public ConnectionTreeModel Deserialize(string xml) - { - return Deserialize(xml, false); - } - - public ConnectionTreeModel Deserialize(string xml, bool import) - { - try - { - LoadXmlConnectionData(xml); - ValidateConnectionFileVersion(); - - var rootXmlElement = _xmlDocument.DocumentElement; - InitializeRootNode(rootXmlElement); - CreateDecryptor(_rootNodeInfo, rootXmlElement); - var connectionTreeModel = new ConnectionTreeModel(); - connectionTreeModel.AddRootNode(_rootNodeInfo); - - - if (_confVersion > 1.3) - { - var protectedString = _xmlDocument.DocumentElement?.Attributes["Protected"].Value; - if (!_decryptor.ConnectionsFileIsAuthentic(protectedString, - _rootNodeInfo.PasswordString.ConvertToSecureString())) - { - return null; - } - } - - if (_confVersion >= 2.6) - { - var fullFileEncryptionValue = rootXmlElement.GetAttributeAsBool("FullFileEncryption"); - if (fullFileEncryptionValue) - { - var decryptedContent = _decryptor.Decrypt(rootXmlElement.InnerText); - rootXmlElement.InnerXml = decryptedContent; - } - } - - AddNodesFromXmlRecursive(_xmlDocument.DocumentElement, _rootNodeInfo); - - if (!import) - Runtime.ConnectionsService.IsConnectionsFileLoaded = true; - - return connectionTreeModel; - } - catch (Exception ex) - { - Runtime.ConnectionsService.IsConnectionsFileLoaded = false; - Runtime.MessageCollector.AddExceptionStackTrace(Language.LoadFromXmlFailed, ex); - throw; - } - } - - private void LoadXmlConnectionData(string connections) - { - CreateDecryptor(new RootNodeInfo(RootNodeType.Connection)); - connections = _decryptor.LegacyFullFileDecrypt(connections); - _xmlDocument = new XmlDocument(); - if (connections != "") - _xmlDocument.LoadXml(connections); - } - - private void ValidateConnectionFileVersion() - { - if (_xmlDocument.DocumentElement != null && _xmlDocument.DocumentElement.HasAttribute("ConfVersion")) - _confVersion = - Convert.ToDouble(_xmlDocument.DocumentElement.Attributes["ConfVersion"].Value.Replace(",", "."), - CultureInfo.InvariantCulture); - else - Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg, Language.OldConffile); - - if (!(_confVersion > MaxSupportedConfVersion)) return; - ShowIncompatibleVersionDialogBox(); - throw new Exception($"Incompatible connection file format (file format version {_confVersion})."); - } - - private void ShowIncompatibleVersionDialogBox() - { - CTaskDialog.ShowTaskDialogBox( - FrmMain.Default, - Application.ProductName, - "Incompatible connection file format", - $"The format of this connection file is not supported. Please upgrade to a newer version of {Application.ProductName}.", - string - .Format("{1}{0}File Format Version: {2}{0}Highest Supported Version: {3}", - Environment.NewLine, - ConnectionFileName, _confVersion, MaxSupportedConfVersion), - "", - "", - "", - "", - ETaskDialogButtons.Ok, - ESysIcons.Error, - ESysIcons.Error - ); - } - - private void InitializeRootNode(XmlElement connectionsRootElement) - { - var rootNodeName = connectionsRootElement?.Attributes["Name"].Value.Trim(); - _rootNodeInfo.Name = rootNodeName; - } - - private void CreateDecryptor(RootNodeInfo rootNodeInfo, XmlElement connectionsRootElement = null) - { - if (_confVersion >= 2.6) - { - var engine = connectionsRootElement.GetAttributeAsEnum("EncryptionEngine"); - var mode = connectionsRootElement.GetAttributeAsEnum("BlockCipherMode"); - var keyDerivationIterations = connectionsRootElement.GetAttributeAsInt("KdfIterations"); - - _decryptor = new XmlConnectionsDecryptor(engine, mode, rootNodeInfo) - { - AuthenticationRequestor = AuthenticationRequestor, - KeyDerivationIterations = keyDerivationIterations - }; - } - else - { - _decryptor = new XmlConnectionsDecryptor(_rootNodeInfo) - {AuthenticationRequestor = AuthenticationRequestor}; - } - } - - private void AddNodesFromXmlRecursive(XmlNode parentXmlNode, ContainerInfo parentContainer) - { - try - { - if (!parentXmlNode.HasChildNodes) return; - foreach (XmlNode xmlNode in parentXmlNode.ChildNodes) - { - var nodeType = xmlNode.GetAttributeAsEnum("Type", TreeNodeType.Connection); - - // ReSharper disable once SwitchStatementMissingSomeCases - switch (nodeType) - { - case TreeNodeType.Connection: - var connectionInfo = GetConnectionInfoFromXml(xmlNode); - parentContainer.AddChild(connectionInfo); - break; - case TreeNodeType.Container: - var containerInfo = new ContainerInfo(); - - if (_confVersion >= 0.9) - containerInfo.CopyFrom(GetConnectionInfoFromXml(xmlNode)); - if (_confVersion >= 0.8) - { - containerInfo.IsExpanded = xmlNode.GetAttributeAsBool("Expanded"); - } - - parentContainer.AddChild(containerInfo); - AddNodesFromXmlRecursive(xmlNode, containerInfo); - break; - } - } - } - catch (Exception ex) - { - Runtime.MessageCollector.AddExceptionStackTrace(Language.AddNodeFromXmlFailed, ex); - throw; - } - } - - private ConnectionInfo GetConnectionInfoFromXml(XmlNode xmlnode) - { - if (xmlnode?.Attributes == null) - return null; - - var connectionId = xmlnode.GetAttributeAsString("Id"); - if (string.IsNullOrWhiteSpace(connectionId)) - connectionId = Guid.NewGuid().ToString(); - var connectionInfo = new ConnectionInfo(connectionId); - - try - { - if (_confVersion >= 0.2) - { - connectionInfo.Name = xmlnode.GetAttributeAsString("Name"); - connectionInfo.Description = xmlnode.GetAttributeAsString("Descr"); - connectionInfo.Hostname = xmlnode.GetAttributeAsString("Hostname"); - connectionInfo.DisplayWallpaper = xmlnode.GetAttributeAsBool("DisplayWallpaper"); - connectionInfo.DisplayThemes = xmlnode.GetAttributeAsBool("DisplayThemes"); - connectionInfo.CacheBitmaps = xmlnode.GetAttributeAsBool("CacheBitmaps"); - - if (_confVersion < 1.1) //1.0 - 0.1 - { - connectionInfo.Resolution = xmlnode.GetAttributeAsBool("Fullscreen") - ? RDPResolutions.Fullscreen - : RDPResolutions.FitToWindow; - } - - if (!Runtime.UseCredentialManager || _confVersion <= 2.6) // 0.2 - 2.6 - { -#pragma warning disable 618 - connectionInfo.Username = xmlnode.GetAttributeAsString("Username"); - connectionInfo.Password = _decryptor.Decrypt(xmlnode.GetAttributeAsString("Password")); - connectionInfo.Domain = xmlnode.GetAttributeAsString("Domain"); -#pragma warning restore 618 - } - } - - if (_confVersion >= 0.3) - { - if (_confVersion < 0.7) - { - if (xmlnode.GetAttributeAsBool("UseVNC")) - { - connectionInfo.Protocol = ProtocolType.VNC; - connectionInfo.Port = xmlnode.GetAttributeAsInt("VNCPort"); - } - else - { - connectionInfo.Protocol = ProtocolType.RDP; - } - } - } - else - { - connectionInfo.Port = (int)RdpProtocol6.Defaults.Port; - connectionInfo.Protocol = ProtocolType.RDP; - } - - if (_confVersion >= 0.4) - { - if (_confVersion < 0.7) - { - connectionInfo.Port = xmlnode.GetAttributeAsBool("UseVNC") - ? xmlnode.GetAttributeAsInt("VNCPort") - : xmlnode.GetAttributeAsInt("RDPPort"); - } - - connectionInfo.UseConsoleSession = xmlnode.GetAttributeAsBool("ConnectToConsole"); - } - else - { - if (_confVersion < 0.7) - { - if (xmlnode.GetAttributeAsBool("UseVNC")) - connectionInfo.Port = (int)ProtocolVNC.Defaults.Port; - else - connectionInfo.Port = (int)RdpProtocol6.Defaults.Port; - } - - connectionInfo.UseConsoleSession = false; - } - - if (_confVersion >= 0.5) - { - connectionInfo.RedirectDiskDrives = xmlnode.GetAttributeAsBool("RedirectDiskDrives"); - connectionInfo.RedirectPrinters = xmlnode.GetAttributeAsBool("RedirectPrinters"); - connectionInfo.RedirectPorts = xmlnode.GetAttributeAsBool("RedirectPorts"); - connectionInfo.RedirectSmartCards = xmlnode.GetAttributeAsBool("RedirectSmartCards"); - } - else - { - connectionInfo.RedirectDiskDrives = false; - connectionInfo.RedirectPrinters = false; - connectionInfo.RedirectPorts = false; - connectionInfo.RedirectSmartCards = false; - } - - if (_confVersion >= 0.7) - { - connectionInfo.Protocol = xmlnode.GetAttributeAsEnum("Protocol"); - connectionInfo.Port = xmlnode.GetAttributeAsInt("Port"); - } - - if (_confVersion >= 1.0) - { - connectionInfo.RedirectKeys = xmlnode.GetAttributeAsBool("RedirectKeys"); - } - - if (_confVersion >= 1.2) - { - connectionInfo.PuttySession = xmlnode.GetAttributeAsString("PuttySession"); - } - - if (_confVersion >= 1.3) - { - connectionInfo.Colors = xmlnode.GetAttributeAsEnum("Colors"); - connectionInfo.Resolution = xmlnode.GetAttributeAsEnum("Resolution"); - connectionInfo.RedirectSound = xmlnode.GetAttributeAsEnum("RedirectSound"); - connectionInfo.RedirectAudioCapture = xmlnode.GetAttributeAsBool("RedirectAudioCapture"); - } - else - { - switch (xmlnode.GetAttributeAsInt("Colors")) - { - case 0: - connectionInfo.Colors = RDPColors.Colors256; - break; - case 1: - connectionInfo.Colors = RDPColors.Colors16Bit; - break; - case 2: - connectionInfo.Colors = RDPColors.Colors24Bit; - break; - case 3: - connectionInfo.Colors = RDPColors.Colors32Bit; - break; - // ReSharper disable once RedundantCaseLabel - case 4: - default: - connectionInfo.Colors = RDPColors.Colors15Bit; - break; - } - - connectionInfo.RedirectSound = xmlnode.GetAttributeAsEnum("RedirectSound"); - connectionInfo.RedirectAudioCapture = xmlnode.GetAttributeAsBool("RedirectAudioCapture"); - } - - if (_confVersion >= 1.3) - { - connectionInfo.Inheritance.CacheBitmaps = xmlnode.GetAttributeAsBool("InheritCacheBitmaps"); - connectionInfo.Inheritance.Colors = xmlnode.GetAttributeAsBool("InheritColors"); - connectionInfo.Inheritance.Description = xmlnode.GetAttributeAsBool("InheritDescription"); - connectionInfo.Inheritance.DisplayThemes = xmlnode.GetAttributeAsBool("InheritDisplayThemes"); - connectionInfo.Inheritance.DisplayWallpaper = xmlnode.GetAttributeAsBool("InheritDisplayWallpaper"); - connectionInfo.Inheritance.Icon = xmlnode.GetAttributeAsBool("InheritIcon"); - connectionInfo.Inheritance.Panel = xmlnode.GetAttributeAsBool("InheritPanel"); - connectionInfo.Inheritance.Port = xmlnode.GetAttributeAsBool("InheritPort"); - connectionInfo.Inheritance.Protocol = xmlnode.GetAttributeAsBool("InheritProtocol"); - connectionInfo.Inheritance.PuttySession = xmlnode.GetAttributeAsBool("InheritPuttySession"); - connectionInfo.Inheritance.RedirectDiskDrives = - xmlnode.GetAttributeAsBool("InheritRedirectDiskDrives"); - connectionInfo.Inheritance.RedirectKeys = xmlnode.GetAttributeAsBool("InheritRedirectKeys"); - connectionInfo.Inheritance.RedirectPorts = xmlnode.GetAttributeAsBool("InheritRedirectPorts"); - connectionInfo.Inheritance.RedirectPrinters = xmlnode.GetAttributeAsBool("InheritRedirectPrinters"); - connectionInfo.Inheritance.RedirectSmartCards = - xmlnode.GetAttributeAsBool("InheritRedirectSmartCards"); - connectionInfo.Inheritance.RedirectSound = xmlnode.GetAttributeAsBool("InheritRedirectSound"); - connectionInfo.Inheritance.RedirectAudioCapture = xmlnode.GetAttributeAsBool("RedirectAudioCapture"); - connectionInfo.Inheritance.Resolution = xmlnode.GetAttributeAsBool("InheritResolution"); - connectionInfo.Inheritance.UseConsoleSession = - xmlnode.GetAttributeAsBool("InheritUseConsoleSession"); - - if (!Runtime.UseCredentialManager || _confVersion <= 2.6) // 1.3 - 2.6 - { - connectionInfo.Inheritance.Domain = xmlnode.GetAttributeAsBool("InheritDomain"); - connectionInfo.Inheritance.Password = xmlnode.GetAttributeAsBool("InheritPassword"); - connectionInfo.Inheritance.Username = xmlnode.GetAttributeAsBool("InheritUsername"); - } - - connectionInfo.Icon = xmlnode.GetAttributeAsString("Icon"); - connectionInfo.Panel = xmlnode.GetAttributeAsString("Panel"); - } - else - { - if (xmlnode.GetAttributeAsBool("Inherit")) - connectionInfo.Inheritance.TurnOnInheritanceCompletely(); - connectionInfo.Icon = xmlnode.GetAttributeAsString("Icon").Replace(".ico", ""); - connectionInfo.Panel = Language.General; - } - - if (_confVersion >= 1.5) - { - connectionInfo.PleaseConnect = xmlnode.GetAttributeAsBool("Connected"); - } - - if (_confVersion >= 1.6) - { - connectionInfo.PreExtApp = xmlnode.GetAttributeAsString("PreExtApp"); - connectionInfo.PostExtApp = xmlnode.GetAttributeAsString("PostExtApp"); - connectionInfo.Inheritance.PreExtApp = xmlnode.GetAttributeAsBool("InheritPreExtApp"); - connectionInfo.Inheritance.PostExtApp = xmlnode.GetAttributeAsBool("InheritPostExtApp"); - } - - if (_confVersion >= 1.7) - { - connectionInfo.VNCCompression = - xmlnode.GetAttributeAsEnum("VNCCompression"); - connectionInfo.VNCEncoding = xmlnode.GetAttributeAsEnum("VNCEncoding"); - connectionInfo.VNCAuthMode = xmlnode.GetAttributeAsEnum("VNCAuthMode"); - connectionInfo.VNCProxyType = xmlnode.GetAttributeAsEnum("VNCProxyType"); - connectionInfo.VNCProxyIP = xmlnode.GetAttributeAsString("VNCProxyIP"); - connectionInfo.VNCProxyPort = xmlnode.GetAttributeAsInt("VNCProxyPort"); - connectionInfo.VNCProxyUsername = xmlnode.GetAttributeAsString("VNCProxyUsername"); - connectionInfo.VNCProxyPassword = - _decryptor.Decrypt(xmlnode.GetAttributeAsString("VNCProxyPassword")); - connectionInfo.VNCColors = xmlnode.GetAttributeAsEnum("VNCColors"); - connectionInfo.VNCSmartSizeMode = - xmlnode.GetAttributeAsEnum("VNCSmartSizeMode"); - connectionInfo.VNCViewOnly = xmlnode.GetAttributeAsBool("VNCViewOnly"); - connectionInfo.Inheritance.VNCCompression = xmlnode.GetAttributeAsBool("InheritVNCCompression"); - connectionInfo.Inheritance.VNCEncoding = xmlnode.GetAttributeAsBool("InheritVNCEncoding"); - connectionInfo.Inheritance.VNCAuthMode = xmlnode.GetAttributeAsBool("InheritVNCAuthMode"); - connectionInfo.Inheritance.VNCProxyType = xmlnode.GetAttributeAsBool("InheritVNCProxyType"); - connectionInfo.Inheritance.VNCProxyIP = xmlnode.GetAttributeAsBool("InheritVNCProxyIP"); - connectionInfo.Inheritance.VNCProxyPort = xmlnode.GetAttributeAsBool("InheritVNCProxyPort"); - connectionInfo.Inheritance.VNCProxyUsername = xmlnode.GetAttributeAsBool("InheritVNCProxyUsername"); - connectionInfo.Inheritance.VNCProxyPassword = xmlnode.GetAttributeAsBool("InheritVNCProxyPassword"); - connectionInfo.Inheritance.VNCColors = xmlnode.GetAttributeAsBool("InheritVNCColors"); - connectionInfo.Inheritance.VNCSmartSizeMode = xmlnode.GetAttributeAsBool("InheritVNCSmartSizeMode"); - connectionInfo.Inheritance.VNCViewOnly = xmlnode.GetAttributeAsBool("InheritVNCViewOnly"); - } - - if (_confVersion >= 1.8) - { - connectionInfo.RDPAuthenticationLevel = - xmlnode.GetAttributeAsEnum("RDPAuthenticationLevel"); - connectionInfo.Inheritance.RDPAuthenticationLevel = - xmlnode.GetAttributeAsBool("InheritRDPAuthenticationLevel"); - } - - if (_confVersion >= 1.9) - { - connectionInfo.RenderingEngine = - xmlnode.GetAttributeAsEnum("RenderingEngine"); - connectionInfo.MacAddress = xmlnode.GetAttributeAsString("MacAddress"); - connectionInfo.Inheritance.RenderingEngine = xmlnode.GetAttributeAsBool("InheritRenderingEngine"); - connectionInfo.Inheritance.MacAddress = xmlnode.GetAttributeAsBool("InheritMacAddress"); - } - - if (_confVersion >= 2.0) - { - connectionInfo.UserField = xmlnode.GetAttributeAsString("UserField"); - connectionInfo.Inheritance.UserField = xmlnode.GetAttributeAsBool("InheritUserField"); - } - - if (_confVersion >= 2.1) - { - connectionInfo.ExtApp = xmlnode.GetAttributeAsString("ExtApp"); - connectionInfo.Inheritance.ExtApp = xmlnode.GetAttributeAsBool("InheritExtApp"); - } - - if (_confVersion >= 2.2) - { - // Get settings - connectionInfo.RDGatewayUsageMethod = - xmlnode.GetAttributeAsEnum("RDGatewayUsageMethod"); - connectionInfo.RDGatewayHostname = xmlnode.GetAttributeAsString("RDGatewayHostname"); - connectionInfo.RDGatewayUseConnectionCredentials = - xmlnode.GetAttributeAsEnum( - "RDGatewayUseConnectionCredentials"); - connectionInfo.RDGatewayUsername = xmlnode.GetAttributeAsString("RDGatewayUsername"); - connectionInfo.RDGatewayPassword = - _decryptor.Decrypt(xmlnode.GetAttributeAsString("RDGatewayPassword")); - connectionInfo.RDGatewayDomain = xmlnode.GetAttributeAsString("RDGatewayDomain"); - - // Get inheritance settings - connectionInfo.Inheritance.RDGatewayUsageMethod = - xmlnode.GetAttributeAsBool("InheritRDGatewayUsageMethod"); - connectionInfo.Inheritance.RDGatewayHostname = - xmlnode.GetAttributeAsBool("InheritRDGatewayHostname"); - connectionInfo.Inheritance.RDGatewayUseConnectionCredentials = - xmlnode.GetAttributeAsBool("InheritRDGatewayUseConnectionCredentials"); - connectionInfo.Inheritance.RDGatewayUsername = - xmlnode.GetAttributeAsBool("InheritRDGatewayUsername"); - connectionInfo.Inheritance.RDGatewayPassword = - xmlnode.GetAttributeAsBool("InheritRDGatewayPassword"); - connectionInfo.Inheritance.RDGatewayDomain = xmlnode.GetAttributeAsBool("InheritRDGatewayDomain"); - } - - if (_confVersion >= 2.3) - { - // Get settings - connectionInfo.EnableFontSmoothing = xmlnode.GetAttributeAsBool("EnableFontSmoothing"); - connectionInfo.EnableDesktopComposition = xmlnode.GetAttributeAsBool("EnableDesktopComposition"); - - // Get inheritance settings - connectionInfo.Inheritance.EnableFontSmoothing = - xmlnode.GetAttributeAsBool("InheritEnableFontSmoothing"); - connectionInfo.Inheritance.EnableDesktopComposition = - xmlnode.GetAttributeAsBool("InheritEnableDesktopComposition"); - } - - if (_confVersion >= 2.4) - { - connectionInfo.UseCredSsp = xmlnode.GetAttributeAsBool("UseCredSsp"); - connectionInfo.Inheritance.UseCredSsp = xmlnode.GetAttributeAsBool("InheritUseCredSsp"); - } - - if (_confVersion >= 2.5) - { - connectionInfo.LoadBalanceInfo = xmlnode.GetAttributeAsString("LoadBalanceInfo"); - connectionInfo.AutomaticResize = xmlnode.GetAttributeAsBool("AutomaticResize"); - connectionInfo.Inheritance.LoadBalanceInfo = xmlnode.GetAttributeAsBool("InheritLoadBalanceInfo"); - connectionInfo.Inheritance.AutomaticResize = xmlnode.GetAttributeAsBool("InheritAutomaticResize"); - } - - if (_confVersion >= 2.6) - { - connectionInfo.SoundQuality = - xmlnode.GetAttributeAsEnum("SoundQuality"); - connectionInfo.Inheritance.SoundQuality = xmlnode.GetAttributeAsBool("InheritSoundQuality"); - connectionInfo.RDPMinutesToIdleTimeout = xmlnode.GetAttributeAsInt("RDPMinutesToIdleTimeout"); - connectionInfo.Inheritance.RDPMinutesToIdleTimeout = - xmlnode.GetAttributeAsBool("InheritRDPMinutesToIdleTimeout"); - connectionInfo.RDPAlertIdleTimeout = xmlnode.GetAttributeAsBool("RDPAlertIdleTimeout"); - connectionInfo.Inheritance.RDPAlertIdleTimeout = - xmlnode.GetAttributeAsBool("InheritRDPAlertIdleTimeout"); } - - if (_confVersion >= 2.7) - { - connectionInfo.RedirectClipboard = xmlnode.GetAttributeAsBool("RedirectClipboard"); - connectionInfo.Favorite = xmlnode.GetAttributeAsBool("Favorite"); - connectionInfo.UseVmId = xmlnode.GetAttributeAsBool("UseVmId"); - connectionInfo.VmId = xmlnode.GetAttributeAsString("VmId"); - connectionInfo.UseEnhancedMode = xmlnode.GetAttributeAsBool("UseEnhancedMode"); - connectionInfo.RdpVersion = xmlnode.GetAttributeAsEnum("RdpVersion", RdpVersion.Highest); - connectionInfo.SSHTunnelConnectionName = xmlnode.GetAttributeAsString("SSHTunnelConnectionName"); - connectionInfo.OpeningCommand = xmlnode.GetAttributeAsString("OpeningCommand"); - connectionInfo.SSHOptions = xmlnode.GetAttributeAsString("SSHOptions"); - connectionInfo.StartProgram = xmlnode.GetAttributeAsString("StartProgram"); - connectionInfo.DisableFullWindowDrag = xmlnode.GetAttributeAsBool("DisableFullWindowDrag"); - connectionInfo.DisableMenuAnimations = xmlnode.GetAttributeAsBool("DisableMenuAnimations"); - connectionInfo.DisableCursorShadow = xmlnode.GetAttributeAsBool("DisableCursorShadow"); - connectionInfo.DisableCursorBlinking = xmlnode.GetAttributeAsBool("DisableCursorBlinking"); - connectionInfo.Inheritance.RedirectClipboard = xmlnode.GetAttributeAsBool("InheritRedirectClipboard"); - connectionInfo.Inheritance.Favorite = xmlnode.GetAttributeAsBool("InheritFavorite"); - connectionInfo.Inheritance.RdpVersion = xmlnode.GetAttributeAsBool("InheritRdpVersion"); - connectionInfo.Inheritance.UseVmId = xmlnode.GetAttributeAsBool("InheritUseVmId"); - connectionInfo.Inheritance.VmId = xmlnode.GetAttributeAsBool("InheritVmId"); - connectionInfo.Inheritance.UseEnhancedMode = xmlnode.GetAttributeAsBool("InheritUseEnhancedMode"); - connectionInfo.Inheritance.SSHTunnelConnectionName = xmlnode.GetAttributeAsBool("InheritSSHTunnelConnectionName"); - connectionInfo.Inheritance.OpeningCommand = xmlnode.GetAttributeAsBool("InheritOpeningCommand"); - connectionInfo.Inheritance.SSHOptions = xmlnode.GetAttributeAsBool("InheritSSHOptions"); - connectionInfo.Inheritance.DisableFullWindowDrag = xmlnode.GetAttributeAsBool("InheritDisableFullWindowDrag"); - connectionInfo.Inheritance.DisableMenuAnimations = xmlnode.GetAttributeAsBool("InheritDisableMenuAnimations"); - connectionInfo.Inheritance.DisableCursorShadow = xmlnode.GetAttributeAsBool("InheritDisableCursorShadow"); - connectionInfo.Inheritance.DisableCursorBlinking = xmlnode.GetAttributeAsBool("InheritDisableCursorBlinking"); - } - } - catch (Exception ex) - { - Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, - string.Format(Language.GetConnectionInfoFromXmlFailed, - connectionInfo.Name, ConnectionFileName, ex.Message)); - } - - return connectionInfo; - } - } +using System; +using System.Globalization; +using System.Security; +using System.Windows.Forms; +using System.Xml; +using mRemoteNG.App; +using mRemoteNG.Connection; +using mRemoteNG.Connection.Protocol; +using mRemoteNG.Connection.Protocol.Http; +using mRemoteNG.Connection.Protocol.RDP; +using mRemoteNG.Connection.Protocol.VNC; +using mRemoteNG.Container; +using mRemoteNG.Messages; +using mRemoteNG.Security; +using mRemoteNG.Tools; +using mRemoteNG.Tree; +using mRemoteNG.Tree.Root; +using mRemoteNG.UI.Forms; +using mRemoteNG.UI.TaskDialog; +using mRemoteNG.Resources.Language; + +namespace mRemoteNG.Config.Serializers.ConnectionSerializers.Xml +{ + public class XmlConnectionsDeserializer : IDeserializer + { + private XmlDocument _xmlDocument; + private double _confVersion; + private XmlConnectionsDecryptor _decryptor; + private string ConnectionFileName = ""; + private const double MaxSupportedConfVersion = 2.8; + private readonly RootNodeInfo _rootNodeInfo = new RootNodeInfo(RootNodeType.Connection); + + public Func> AuthenticationRequestor { get; set; } + + public XmlConnectionsDeserializer(Func> authenticationRequestor = null) + { + AuthenticationRequestor = authenticationRequestor; + } + + public ConnectionTreeModel Deserialize(string xml) + { + return Deserialize(xml, false); + } + + public ConnectionTreeModel Deserialize(string xml, bool import) + { + try + { + LoadXmlConnectionData(xml); + ValidateConnectionFileVersion(); + + var rootXmlElement = _xmlDocument.DocumentElement; + InitializeRootNode(rootXmlElement); + CreateDecryptor(_rootNodeInfo, rootXmlElement); + var connectionTreeModel = new ConnectionTreeModel(); + connectionTreeModel.AddRootNode(_rootNodeInfo); + + + if (_confVersion > 1.3) + { + var protectedString = _xmlDocument.DocumentElement?.Attributes["Protected"].Value; + if (!_decryptor.ConnectionsFileIsAuthentic(protectedString, + _rootNodeInfo.PasswordString.ConvertToSecureString())) + { + return null; + } + } + + if (_confVersion >= 2.6) + { + var fullFileEncryptionValue = rootXmlElement.GetAttributeAsBool("FullFileEncryption"); + if (fullFileEncryptionValue) + { + var decryptedContent = _decryptor.Decrypt(rootXmlElement.InnerText); + rootXmlElement.InnerXml = decryptedContent; + } + } + + AddNodesFromXmlRecursive(_xmlDocument.DocumentElement, _rootNodeInfo); + + if (!import) + Runtime.ConnectionsService.IsConnectionsFileLoaded = true; + + return connectionTreeModel; + } + catch (Exception ex) + { + Runtime.ConnectionsService.IsConnectionsFileLoaded = false; + Runtime.MessageCollector.AddExceptionStackTrace(Language.LoadFromXmlFailed, ex); + throw; + } + } + + private void LoadXmlConnectionData(string connections) + { + CreateDecryptor(new RootNodeInfo(RootNodeType.Connection)); + connections = _decryptor.LegacyFullFileDecrypt(connections); + _xmlDocument = new XmlDocument(); + if (connections != "") + _xmlDocument.LoadXml(connections); + } + + private void ValidateConnectionFileVersion() + { + if (_xmlDocument.DocumentElement != null && _xmlDocument.DocumentElement.HasAttribute("ConfVersion")) + _confVersion = + Convert.ToDouble(_xmlDocument.DocumentElement.Attributes["ConfVersion"].Value.Replace(",", "."), + CultureInfo.InvariantCulture); + else + Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg, Language.OldConffile); + + if (!(_confVersion > MaxSupportedConfVersion)) return; + ShowIncompatibleVersionDialogBox(); + throw new Exception($"Incompatible connection file format (file format version {_confVersion})."); + } + + private void ShowIncompatibleVersionDialogBox() + { + CTaskDialog.ShowTaskDialogBox( + FrmMain.Default, + Application.ProductName, + "Incompatible connection file format", + $"The format of this connection file is not supported. Please upgrade to a newer version of {Application.ProductName}.", + string + .Format("{1}{0}File Format Version: {2}{0}Highest Supported Version: {3}", + Environment.NewLine, + ConnectionFileName, _confVersion, MaxSupportedConfVersion), + "", + "", + "", + "", + ETaskDialogButtons.Ok, + ESysIcons.Error, + ESysIcons.Error + ); + } + + private void InitializeRootNode(XmlElement connectionsRootElement) + { + var rootNodeName = connectionsRootElement?.Attributes["Name"].Value.Trim(); + _rootNodeInfo.Name = rootNodeName; + } + + private void CreateDecryptor(RootNodeInfo rootNodeInfo, XmlElement connectionsRootElement = null) + { + if (_confVersion >= 2.6) + { + var engine = connectionsRootElement.GetAttributeAsEnum("EncryptionEngine"); + var mode = connectionsRootElement.GetAttributeAsEnum("BlockCipherMode"); + var keyDerivationIterations = connectionsRootElement.GetAttributeAsInt("KdfIterations"); + + _decryptor = new XmlConnectionsDecryptor(engine, mode, rootNodeInfo) + { + AuthenticationRequestor = AuthenticationRequestor, + KeyDerivationIterations = keyDerivationIterations + }; + } + else + { + _decryptor = new XmlConnectionsDecryptor(_rootNodeInfo) + {AuthenticationRequestor = AuthenticationRequestor}; + } + } + + private void AddNodesFromXmlRecursive(XmlNode parentXmlNode, ContainerInfo parentContainer) + { + try + { + if (!parentXmlNode.HasChildNodes) return; + foreach (XmlNode xmlNode in parentXmlNode.ChildNodes) + { + var nodeType = xmlNode.GetAttributeAsEnum("Type", TreeNodeType.Connection); + + // ReSharper disable once SwitchStatementMissingSomeCases + switch (nodeType) + { + case TreeNodeType.Connection: + var connectionInfo = GetConnectionInfoFromXml(xmlNode); + parentContainer.AddChild(connectionInfo); + break; + case TreeNodeType.Container: + var containerInfo = new ContainerInfo(); + + if (_confVersion >= 0.9) + containerInfo.CopyFrom(GetConnectionInfoFromXml(xmlNode)); + if (_confVersion >= 0.8) + { + containerInfo.IsExpanded = xmlNode.GetAttributeAsBool("Expanded"); + } + + parentContainer.AddChild(containerInfo); + AddNodesFromXmlRecursive(xmlNode, containerInfo); + break; + } + } + } + catch (Exception ex) + { + Runtime.MessageCollector.AddExceptionStackTrace(Language.AddNodeFromXmlFailed, ex); + throw; + } + } + + private ConnectionInfo GetConnectionInfoFromXml(XmlNode xmlnode) + { + if (xmlnode?.Attributes == null) + return null; + + var connectionId = xmlnode.GetAttributeAsString("Id"); + if (string.IsNullOrWhiteSpace(connectionId)) + connectionId = Guid.NewGuid().ToString(); + var connectionInfo = new ConnectionInfo(connectionId); + + try + { + if (_confVersion >= 0.2) + { + connectionInfo.Name = xmlnode.GetAttributeAsString("Name"); + connectionInfo.Description = xmlnode.GetAttributeAsString("Descr"); + connectionInfo.Hostname = xmlnode.GetAttributeAsString("Hostname"); + connectionInfo.DisplayWallpaper = xmlnode.GetAttributeAsBool("DisplayWallpaper"); + connectionInfo.DisplayThemes = xmlnode.GetAttributeAsBool("DisplayThemes"); + connectionInfo.CacheBitmaps = xmlnode.GetAttributeAsBool("CacheBitmaps"); + + if (_confVersion < 1.1) //1.0 - 0.1 + { + connectionInfo.Resolution = xmlnode.GetAttributeAsBool("Fullscreen") + ? RDPResolutions.Fullscreen + : RDPResolutions.FitToWindow; + } + + if (!Runtime.UseCredentialManager || _confVersion <= 2.6) // 0.2 - 2.6 + { +#pragma warning disable 618 + connectionInfo.Username = xmlnode.GetAttributeAsString("Username"); + connectionInfo.Password = _decryptor.Decrypt(xmlnode.GetAttributeAsString("Password")); + connectionInfo.Domain = xmlnode.GetAttributeAsString("Domain"); +#pragma warning restore 618 + } + } + + if (_confVersion >= 0.3) + { + if (_confVersion < 0.7) + { + if (xmlnode.GetAttributeAsBool("UseVNC")) + { + connectionInfo.Protocol = ProtocolType.VNC; + connectionInfo.Port = xmlnode.GetAttributeAsInt("VNCPort"); + } + else + { + connectionInfo.Protocol = ProtocolType.RDP; + } + } + } + else + { + connectionInfo.Port = (int)RdpProtocol6.Defaults.Port; + connectionInfo.Protocol = ProtocolType.RDP; + } + + if (_confVersion >= 0.4) + { + if (_confVersion < 0.7) + { + connectionInfo.Port = xmlnode.GetAttributeAsBool("UseVNC") + ? xmlnode.GetAttributeAsInt("VNCPort") + : xmlnode.GetAttributeAsInt("RDPPort"); + } + + connectionInfo.UseConsoleSession = xmlnode.GetAttributeAsBool("ConnectToConsole"); + } + else + { + if (_confVersion < 0.7) + { + if (xmlnode.GetAttributeAsBool("UseVNC")) + connectionInfo.Port = (int)ProtocolVNC.Defaults.Port; + else + connectionInfo.Port = (int)RdpProtocol6.Defaults.Port; + } + + connectionInfo.UseConsoleSession = false; + } + + if (_confVersion >= 0.5) + { + connectionInfo.RedirectDiskDrives = xmlnode.GetAttributeAsBool("RedirectDiskDrives"); + connectionInfo.RedirectPrinters = xmlnode.GetAttributeAsBool("RedirectPrinters"); + connectionInfo.RedirectPorts = xmlnode.GetAttributeAsBool("RedirectPorts"); + connectionInfo.RedirectSmartCards = xmlnode.GetAttributeAsBool("RedirectSmartCards"); + } + else + { + connectionInfo.RedirectDiskDrives = false; + connectionInfo.RedirectPrinters = false; + connectionInfo.RedirectPorts = false; + connectionInfo.RedirectSmartCards = false; + } + + if (_confVersion >= 0.7) + { + connectionInfo.Protocol = xmlnode.GetAttributeAsEnum("Protocol"); + connectionInfo.Port = xmlnode.GetAttributeAsInt("Port"); + } + + if (_confVersion >= 1.0) + { + connectionInfo.RedirectKeys = xmlnode.GetAttributeAsBool("RedirectKeys"); + } + + if (_confVersion >= 1.2) + { + connectionInfo.PuttySession = xmlnode.GetAttributeAsString("PuttySession"); + } + + if (_confVersion >= 1.3) + { + connectionInfo.Colors = xmlnode.GetAttributeAsEnum("Colors"); + connectionInfo.Resolution = xmlnode.GetAttributeAsEnum("Resolution"); + connectionInfo.RedirectSound = xmlnode.GetAttributeAsEnum("RedirectSound"); + connectionInfo.RedirectAudioCapture = xmlnode.GetAttributeAsBool("RedirectAudioCapture"); + } + else + { + switch (xmlnode.GetAttributeAsInt("Colors")) + { + case 0: + connectionInfo.Colors = RDPColors.Colors256; + break; + case 1: + connectionInfo.Colors = RDPColors.Colors16Bit; + break; + case 2: + connectionInfo.Colors = RDPColors.Colors24Bit; + break; + case 3: + connectionInfo.Colors = RDPColors.Colors32Bit; + break; + // ReSharper disable once RedundantCaseLabel + case 4: + default: + connectionInfo.Colors = RDPColors.Colors15Bit; + break; + } + + connectionInfo.RedirectSound = xmlnode.GetAttributeAsEnum("RedirectSound"); + connectionInfo.RedirectAudioCapture = xmlnode.GetAttributeAsBool("RedirectAudioCapture"); + } + + if (_confVersion >= 1.3) + { + connectionInfo.Inheritance.CacheBitmaps = xmlnode.GetAttributeAsBool("InheritCacheBitmaps"); + connectionInfo.Inheritance.Colors = xmlnode.GetAttributeAsBool("InheritColors"); + connectionInfo.Inheritance.Description = xmlnode.GetAttributeAsBool("InheritDescription"); + connectionInfo.Inheritance.DisplayThemes = xmlnode.GetAttributeAsBool("InheritDisplayThemes"); + connectionInfo.Inheritance.DisplayWallpaper = xmlnode.GetAttributeAsBool("InheritDisplayWallpaper"); + connectionInfo.Inheritance.Icon = xmlnode.GetAttributeAsBool("InheritIcon"); + connectionInfo.Inheritance.Panel = xmlnode.GetAttributeAsBool("InheritPanel"); + connectionInfo.Inheritance.Port = xmlnode.GetAttributeAsBool("InheritPort"); + connectionInfo.Inheritance.Protocol = xmlnode.GetAttributeAsBool("InheritProtocol"); + connectionInfo.Inheritance.PuttySession = xmlnode.GetAttributeAsBool("InheritPuttySession"); + connectionInfo.Inheritance.RedirectDiskDrives = + xmlnode.GetAttributeAsBool("InheritRedirectDiskDrives"); + connectionInfo.Inheritance.RedirectKeys = xmlnode.GetAttributeAsBool("InheritRedirectKeys"); + connectionInfo.Inheritance.RedirectPorts = xmlnode.GetAttributeAsBool("InheritRedirectPorts"); + connectionInfo.Inheritance.RedirectPrinters = xmlnode.GetAttributeAsBool("InheritRedirectPrinters"); + connectionInfo.Inheritance.RedirectSmartCards = + xmlnode.GetAttributeAsBool("InheritRedirectSmartCards"); + connectionInfo.Inheritance.RedirectSound = xmlnode.GetAttributeAsBool("InheritRedirectSound"); + connectionInfo.Inheritance.RedirectAudioCapture = xmlnode.GetAttributeAsBool("RedirectAudioCapture"); + connectionInfo.Inheritance.Resolution = xmlnode.GetAttributeAsBool("InheritResolution"); + connectionInfo.Inheritance.UseConsoleSession = + xmlnode.GetAttributeAsBool("InheritUseConsoleSession"); + + if (!Runtime.UseCredentialManager || _confVersion <= 2.6) // 1.3 - 2.6 + { + connectionInfo.Inheritance.Domain = xmlnode.GetAttributeAsBool("InheritDomain"); + connectionInfo.Inheritance.Password = xmlnode.GetAttributeAsBool("InheritPassword"); + connectionInfo.Inheritance.Username = xmlnode.GetAttributeAsBool("InheritUsername"); + } + + connectionInfo.Icon = xmlnode.GetAttributeAsString("Icon"); + connectionInfo.Panel = xmlnode.GetAttributeAsString("Panel"); + } + else + { + if (xmlnode.GetAttributeAsBool("Inherit")) + connectionInfo.Inheritance.TurnOnInheritanceCompletely(); + connectionInfo.Icon = xmlnode.GetAttributeAsString("Icon").Replace(".ico", ""); + connectionInfo.Panel = Language.General; + } + + if (_confVersion >= 1.5) + { + connectionInfo.PleaseConnect = xmlnode.GetAttributeAsBool("Connected"); + } + + if (_confVersion >= 1.6) + { + connectionInfo.PreExtApp = xmlnode.GetAttributeAsString("PreExtApp"); + connectionInfo.PostExtApp = xmlnode.GetAttributeAsString("PostExtApp"); + connectionInfo.Inheritance.PreExtApp = xmlnode.GetAttributeAsBool("InheritPreExtApp"); + connectionInfo.Inheritance.PostExtApp = xmlnode.GetAttributeAsBool("InheritPostExtApp"); + } + + if (_confVersion >= 1.7) + { + connectionInfo.VNCCompression = + xmlnode.GetAttributeAsEnum("VNCCompression"); + connectionInfo.VNCEncoding = xmlnode.GetAttributeAsEnum("VNCEncoding"); + connectionInfo.VNCAuthMode = xmlnode.GetAttributeAsEnum("VNCAuthMode"); + connectionInfo.VNCProxyType = xmlnode.GetAttributeAsEnum("VNCProxyType"); + connectionInfo.VNCProxyIP = xmlnode.GetAttributeAsString("VNCProxyIP"); + connectionInfo.VNCProxyPort = xmlnode.GetAttributeAsInt("VNCProxyPort"); + connectionInfo.VNCProxyUsername = xmlnode.GetAttributeAsString("VNCProxyUsername"); + connectionInfo.VNCProxyPassword = + _decryptor.Decrypt(xmlnode.GetAttributeAsString("VNCProxyPassword")); + connectionInfo.VNCColors = xmlnode.GetAttributeAsEnum("VNCColors"); + connectionInfo.VNCSmartSizeMode = + xmlnode.GetAttributeAsEnum("VNCSmartSizeMode"); + connectionInfo.VNCViewOnly = xmlnode.GetAttributeAsBool("VNCViewOnly"); + connectionInfo.Inheritance.VNCCompression = xmlnode.GetAttributeAsBool("InheritVNCCompression"); + connectionInfo.Inheritance.VNCEncoding = xmlnode.GetAttributeAsBool("InheritVNCEncoding"); + connectionInfo.Inheritance.VNCAuthMode = xmlnode.GetAttributeAsBool("InheritVNCAuthMode"); + connectionInfo.Inheritance.VNCProxyType = xmlnode.GetAttributeAsBool("InheritVNCProxyType"); + connectionInfo.Inheritance.VNCProxyIP = xmlnode.GetAttributeAsBool("InheritVNCProxyIP"); + connectionInfo.Inheritance.VNCProxyPort = xmlnode.GetAttributeAsBool("InheritVNCProxyPort"); + connectionInfo.Inheritance.VNCProxyUsername = xmlnode.GetAttributeAsBool("InheritVNCProxyUsername"); + connectionInfo.Inheritance.VNCProxyPassword = xmlnode.GetAttributeAsBool("InheritVNCProxyPassword"); + connectionInfo.Inheritance.VNCColors = xmlnode.GetAttributeAsBool("InheritVNCColors"); + connectionInfo.Inheritance.VNCSmartSizeMode = xmlnode.GetAttributeAsBool("InheritVNCSmartSizeMode"); + connectionInfo.Inheritance.VNCViewOnly = xmlnode.GetAttributeAsBool("InheritVNCViewOnly"); + } + + if (_confVersion >= 1.8) + { + connectionInfo.RDPAuthenticationLevel = + xmlnode.GetAttributeAsEnum("RDPAuthenticationLevel"); + connectionInfo.Inheritance.RDPAuthenticationLevel = + xmlnode.GetAttributeAsBool("InheritRDPAuthenticationLevel"); + } + + if (_confVersion >= 1.9) + { + connectionInfo.RenderingEngine = + xmlnode.GetAttributeAsEnum("RenderingEngine"); + connectionInfo.MacAddress = xmlnode.GetAttributeAsString("MacAddress"); + connectionInfo.Inheritance.RenderingEngine = xmlnode.GetAttributeAsBool("InheritRenderingEngine"); + connectionInfo.Inheritance.MacAddress = xmlnode.GetAttributeAsBool("InheritMacAddress"); + } + + if (_confVersion >= 2.0) + { + connectionInfo.UserField = xmlnode.GetAttributeAsString("UserField"); + connectionInfo.Inheritance.UserField = xmlnode.GetAttributeAsBool("InheritUserField"); + } + + if (_confVersion >= 2.1) + { + connectionInfo.ExtApp = xmlnode.GetAttributeAsString("ExtApp"); + connectionInfo.Inheritance.ExtApp = xmlnode.GetAttributeAsBool("InheritExtApp"); + } + + if (_confVersion >= 2.2) + { + // Get settings + connectionInfo.RDGatewayUsageMethod = + xmlnode.GetAttributeAsEnum("RDGatewayUsageMethod"); + connectionInfo.RDGatewayHostname = xmlnode.GetAttributeAsString("RDGatewayHostname"); + connectionInfo.RDGatewayUseConnectionCredentials = + xmlnode.GetAttributeAsEnum( + "RDGatewayUseConnectionCredentials"); + connectionInfo.RDGatewayUsername = xmlnode.GetAttributeAsString("RDGatewayUsername"); + connectionInfo.RDGatewayPassword = + _decryptor.Decrypt(xmlnode.GetAttributeAsString("RDGatewayPassword")); + connectionInfo.RDGatewayDomain = xmlnode.GetAttributeAsString("RDGatewayDomain"); + + // Get inheritance settings + connectionInfo.Inheritance.RDGatewayUsageMethod = + xmlnode.GetAttributeAsBool("InheritRDGatewayUsageMethod"); + connectionInfo.Inheritance.RDGatewayHostname = + xmlnode.GetAttributeAsBool("InheritRDGatewayHostname"); + connectionInfo.Inheritance.RDGatewayUseConnectionCredentials = + xmlnode.GetAttributeAsBool("InheritRDGatewayUseConnectionCredentials"); + connectionInfo.Inheritance.RDGatewayUsername = + xmlnode.GetAttributeAsBool("InheritRDGatewayUsername"); + connectionInfo.Inheritance.RDGatewayPassword = + xmlnode.GetAttributeAsBool("InheritRDGatewayPassword"); + connectionInfo.Inheritance.RDGatewayDomain = xmlnode.GetAttributeAsBool("InheritRDGatewayDomain"); + } + + if (_confVersion >= 2.3) + { + // Get settings + connectionInfo.EnableFontSmoothing = xmlnode.GetAttributeAsBool("EnableFontSmoothing"); + connectionInfo.EnableDesktopComposition = xmlnode.GetAttributeAsBool("EnableDesktopComposition"); + + // Get inheritance settings + connectionInfo.Inheritance.EnableFontSmoothing = + xmlnode.GetAttributeAsBool("InheritEnableFontSmoothing"); + connectionInfo.Inheritance.EnableDesktopComposition = + xmlnode.GetAttributeAsBool("InheritEnableDesktopComposition"); + } + + if (_confVersion >= 2.4) + { + connectionInfo.UseCredSsp = xmlnode.GetAttributeAsBool("UseCredSsp"); + connectionInfo.Inheritance.UseCredSsp = xmlnode.GetAttributeAsBool("InheritUseCredSsp"); + } + + if (_confVersion >= 2.5) + { + connectionInfo.LoadBalanceInfo = xmlnode.GetAttributeAsString("LoadBalanceInfo"); + connectionInfo.AutomaticResize = xmlnode.GetAttributeAsBool("AutomaticResize"); + connectionInfo.Inheritance.LoadBalanceInfo = xmlnode.GetAttributeAsBool("InheritLoadBalanceInfo"); + connectionInfo.Inheritance.AutomaticResize = xmlnode.GetAttributeAsBool("InheritAutomaticResize"); + } + + if (_confVersion >= 2.6) + { + connectionInfo.SoundQuality = + xmlnode.GetAttributeAsEnum("SoundQuality"); + connectionInfo.Inheritance.SoundQuality = xmlnode.GetAttributeAsBool("InheritSoundQuality"); + connectionInfo.RDPMinutesToIdleTimeout = xmlnode.GetAttributeAsInt("RDPMinutesToIdleTimeout"); + connectionInfo.Inheritance.RDPMinutesToIdleTimeout = + xmlnode.GetAttributeAsBool("InheritRDPMinutesToIdleTimeout"); + connectionInfo.RDPAlertIdleTimeout = xmlnode.GetAttributeAsBool("RDPAlertIdleTimeout"); + connectionInfo.Inheritance.RDPAlertIdleTimeout = + xmlnode.GetAttributeAsBool("InheritRDPAlertIdleTimeout"); } + + if (_confVersion >= 2.7) + { + connectionInfo.RedirectClipboard = xmlnode.GetAttributeAsBool("RedirectClipboard"); + connectionInfo.Favorite = xmlnode.GetAttributeAsBool("Favorite"); + connectionInfo.UseVmId = xmlnode.GetAttributeAsBool("UseVmId"); + connectionInfo.VmId = xmlnode.GetAttributeAsString("VmId"); + connectionInfo.UseEnhancedMode = xmlnode.GetAttributeAsBool("UseEnhancedMode"); + connectionInfo.RdpVersion = xmlnode.GetAttributeAsEnum("RdpVersion", RdpVersion.Highest); + connectionInfo.SSHTunnelConnectionName = xmlnode.GetAttributeAsString("SSHTunnelConnectionName"); + connectionInfo.OpeningCommand = xmlnode.GetAttributeAsString("OpeningCommand"); + connectionInfo.SSHOptions = xmlnode.GetAttributeAsString("SSHOptions"); + connectionInfo.StartProgram = xmlnode.GetAttributeAsString("StartProgram"); + connectionInfo.DisableFullWindowDrag = xmlnode.GetAttributeAsBool("DisableFullWindowDrag"); + connectionInfo.DisableMenuAnimations = xmlnode.GetAttributeAsBool("DisableMenuAnimations"); + connectionInfo.DisableCursorShadow = xmlnode.GetAttributeAsBool("DisableCursorShadow"); + connectionInfo.DisableCursorBlinking = xmlnode.GetAttributeAsBool("DisableCursorBlinking"); + connectionInfo.StartProgram = xmlnode.GetAttributeAsString("StartProgram"); + connectionInfo.StartProgramWorkDir = xmlnode.GetAttributeAsString("StartProgramWorkDir"); + connectionInfo.Inheritance.RedirectClipboard = xmlnode.GetAttributeAsBool("InheritRedirectClipboard"); + connectionInfo.Inheritance.Favorite = xmlnode.GetAttributeAsBool("InheritFavorite"); + connectionInfo.Inheritance.RdpVersion = xmlnode.GetAttributeAsBool("InheritRdpVersion"); + connectionInfo.Inheritance.UseVmId = xmlnode.GetAttributeAsBool("InheritUseVmId"); + connectionInfo.Inheritance.VmId = xmlnode.GetAttributeAsBool("InheritVmId"); + connectionInfo.Inheritance.UseEnhancedMode = xmlnode.GetAttributeAsBool("InheritUseEnhancedMode"); + connectionInfo.Inheritance.SSHTunnelConnectionName = xmlnode.GetAttributeAsBool("InheritSSHTunnelConnectionName"); + connectionInfo.Inheritance.OpeningCommand = xmlnode.GetAttributeAsBool("InheritOpeningCommand"); + connectionInfo.Inheritance.SSHOptions = xmlnode.GetAttributeAsBool("InheritSSHOptions"); + connectionInfo.Inheritance.DisableFullWindowDrag = xmlnode.GetAttributeAsBool("InheritDisableFullWindowDrag"); + connectionInfo.Inheritance.DisableMenuAnimations = xmlnode.GetAttributeAsBool("InheritDisableMenuAnimations"); + connectionInfo.Inheritance.DisableCursorShadow = xmlnode.GetAttributeAsBool("InheritDisableCursorShadow"); + connectionInfo.Inheritance.DisableCursorBlinking = xmlnode.GetAttributeAsBool("InheritDisableCursorBlinking"); + } + + } + catch (Exception ex) + { + Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg, + string.Format(Language.GetConnectionInfoFromXmlFailed, + connectionInfo.Name, ConnectionFileName, ex.Message)); + } + + return connectionInfo; + } + } } \ No newline at end of file diff --git a/mRemoteNG/Config/Serializers/Versioning/SqlDatabaseVersionVerifier.cs b/mRemoteNG/Config/Serializers/Versioning/SqlDatabaseVersionVerifier.cs index 8e14486ff..84081be0a 100644 --- a/mRemoteNG/Config/Serializers/Versioning/SqlDatabaseVersionVerifier.cs +++ b/mRemoteNG/Config/Serializers/Versioning/SqlDatabaseVersionVerifier.cs @@ -8,7 +8,9 @@ using System; namespace mRemoteNG.Config.Serializers.Versioning { public class SqlDatabaseVersionVerifier - { + { + protected readonly Version currentSupportedVersion = new Version(2, 9); + private readonly IDatabaseConnector _databaseConnector; public SqlDatabaseVersionVerifier(IDatabaseConnector DatabaseConnector) @@ -39,6 +41,7 @@ namespace mRemoteNG.Config.Serializers.Versioning new SqlVersion25To26Upgrader(_databaseConnector), new SqlVersion26To27Upgrader(_databaseConnector), new SqlVersion27To28Upgrader(_databaseConnector), + new SqlVersion28To29Upgrader(_databaseConnector), }; foreach (var upgrader in dbUpgraders) @@ -50,7 +53,7 @@ namespace mRemoteNG.Config.Serializers.Versioning } // DB is at the highest current supported version - if (databaseVersion.CompareTo(new Version(2, 8)) == 0) + if (databaseVersion.CompareTo(currentSupportedVersion) == 0) isVerified = true; if (isVerified == false) diff --git a/mRemoteNG/Config/Serializers/Versioning/SqlVersion28To29Upgrader.cs b/mRemoteNG/Config/Serializers/Versioning/SqlVersion28To29Upgrader.cs new file mode 100644 index 000000000..ff84b9121 --- /dev/null +++ b/mRemoteNG/Config/Serializers/Versioning/SqlVersion28To29Upgrader.cs @@ -0,0 +1,80 @@ +using mRemoteNG.App; +using mRemoteNG.Config.DatabaseConnectors; +using mRemoteNG.Messages; +using System; +using System.Data.Common; + +namespace mRemoteNG.Config.Serializers.Versioning +{ + public class SqlVersion28To29Upgrader : IVersionUpgrader + { + private readonly Version version = new Version(2, 9); + private readonly IDatabaseConnector _databaseConnector; + + public SqlVersion28To29Upgrader(IDatabaseConnector databaseConnector) + { + _databaseConnector = databaseConnector ?? throw new ArgumentNullException(nameof(databaseConnector)); + } + + public bool CanUpgrade(Version currentVersion) + { + return currentVersion == new Version(2, 8) || + // Support upgrading during dev revisions, 2.9.1, 2.9.2, etc... + (currentVersion <= new Version(2, 9) && + currentVersion < version); + } + + public Version Upgrade() + { + Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, + string.Format("Upgrading database to version {0}.", version)); + + const string mySqlAlter = @" +ALTER TABLE tblCons ADD COLUMN StartProgram varchar(512) DEFAULT NULL; +ALTER TABLE tblCons ADD COLUMN StartProgramWorkDir varchar(512) DEFAULT NULL; +ALTER TABLE tblRoot CHANGE COLUMN ConfVersion ConfVersion VARCHAR(15) NOT NULL;"; + const string mySqlUpdate = @"UPDATE tblRoot SET ConfVersion=?;"; + const string msSqlAlter = @" +IF NOT EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID(N'[dbo].[tblCons]') AND name = 'StartProgram') +BEGIN + ALTER TABLE tblCons ADD StartProgram varchar(512), StartProgramWorkDir varchar(512); +END;GO; +ALTER TABLE tblRoot MODIFY COLUMN ConfVersion varchar(15);GO;"; + const string msSqlUpdate = @"UPDATE tblRoot SET ConfVersion=@confVersion;"; + using (var sqlTran = _databaseConnector.DbConnection().BeginTransaction(System.Data.IsolationLevel.Serializable)) + { + DbCommand dbCommand; + if (_databaseConnector.GetType() == typeof(MSSqlDatabaseConnector)) + { + dbCommand = _databaseConnector.DbCommand(msSqlAlter); + dbCommand.Transaction = sqlTran; + dbCommand.ExecuteNonQuery(); + dbCommand = _databaseConnector.DbCommand(msSqlUpdate); + dbCommand.Transaction = sqlTran; + } + else if (_databaseConnector.GetType() == typeof(MySqlDatabaseConnector)) + { + dbCommand = _databaseConnector.DbCommand(mySqlAlter); + dbCommand.Transaction = sqlTran; + dbCommand.ExecuteNonQuery(); + dbCommand = _databaseConnector.DbCommand(mySqlUpdate); + dbCommand.Transaction = sqlTran; + } + else + { + throw new Exception("Unknown database back-end"); + } + var pConfVersion = dbCommand.CreateParameter(); + pConfVersion.ParameterName = "confVersion"; + pConfVersion.Value = version.ToString(); + pConfVersion.DbType = System.Data.DbType.String; + pConfVersion.Direction = System.Data.ParameterDirection.Input; + dbCommand.Parameters.Add(pConfVersion); + + dbCommand.ExecuteNonQuery(); + sqlTran.Commit(); + } + return version; + } + } +} \ No newline at end of file diff --git a/mRemoteNG/Connection/AbstractConnectionRecord.cs b/mRemoteNG/Connection/AbstractConnectionRecord.cs index c2a6dc0f1..de680bc37 100644 --- a/mRemoteNG/Connection/AbstractConnectionRecord.cs +++ b/mRemoteNG/Connection/AbstractConnectionRecord.cs @@ -1,915 +1,926 @@ -using System.Collections.Generic; -using System.ComponentModel; -using mRemoteNG.Connection.Protocol; -using mRemoteNG.Connection.Protocol.Http; -using mRemoteNG.Connection.Protocol.RDP; -using mRemoteNG.Connection.Protocol.VNC; -using mRemoteNG.Properties; -using mRemoteNG.Tools; -using mRemoteNG.Tools.Attributes; -using mRemoteNG.Resources.Language; - - -namespace mRemoteNG.Connection -{ - public abstract class AbstractConnectionRecord : INotifyPropertyChanged - { - #region Fields - - private string _name; - private string _description; - private string _icon; - private string _panel; - - private string _hostname; - private string _username = ""; - private string _password = ""; - private string _domain = ""; - private string _vmId = ""; - private bool _useEnhancedMode; - - private string _sshTunnelConnectionName = ""; - private ProtocolType _protocol; - private RdpVersion _rdpProtocolVersion; - private string _extApp; - private int _port; - private string _sshOptions = ""; - private string _puttySession; - private bool _useConsoleSession; - private AuthenticationLevel _rdpAuthenticationLevel; - private int _rdpMinutesToIdleTimeout; - private bool _rdpAlertIdleTimeout; - private string _loadBalanceInfo; - private HTTPBase.RenderingEngine _renderingEngine; - private bool _useCredSsp; - private bool _useVmId; - - private RDGatewayUsageMethod _rdGatewayUsageMethod; - private string _rdGatewayHostname; - private RDGatewayUseConnectionCredentials _rdGatewayUseConnectionCredentials; - private string _rdGatewayUsername; - private string _rdGatewayPassword; - private string _rdGatewayDomain; - - private RDPResolutions _resolution; - private bool _automaticResize; - private RDPColors _colors; - private bool _cacheBitmaps; - private bool _displayWallpaper; - private bool _displayThemes; - private bool _enableFontSmoothing; - private bool _enableDesktopComposition; - private bool _disableFullWindowDrag; - private bool _disableMenuAnimations; - private bool _disableCursorShadow; - private bool _disableCursorBlinking; - - private bool _redirectKeys; - private bool _redirectDiskDrives; - private bool _redirectPrinters; - private bool _redirectClipboard; - private bool _redirectPorts; - private bool _redirectSmartCards; - private RDPSounds _redirectSound; - private RDPSoundQuality _soundQuality; - private bool _redirectAudioCapture; - - private string _preExtApp; - private string _postExtApp; - private string _macAddress; - private string _openingCommand; - private string _userField; - private string _startProgram; - private bool _favorite; - - private ProtocolVNC.Compression _vncCompression; - private ProtocolVNC.Encoding _vncEncoding; - private ProtocolVNC.AuthMode _vncAuthMode; - private ProtocolVNC.ProxyType _vncProxyType; - private string _vncProxyIp; - private int _vncProxyPort; - private string _vncProxyUsername; - private string _vncProxyPassword; - private ProtocolVNC.Colors _vncColors; - private ProtocolVNC.SmartSizeMode _vncSmartSizeMode; - private bool _vncViewOnly; - - #endregion - - #region Properties - - #region Display - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Display)), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Name)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionName))] - public virtual string Name - { - get => _name; - set => SetField(ref _name, value, "Name"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Display)), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Description)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDescription))] - public virtual string Description - { - get => GetPropertyValue("Description", _description); - set => SetField(ref _description, value, "Description"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Display)), - TypeConverter(typeof(ConnectionIcon)), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Icon)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionIcon))] - public virtual string Icon - { - get => GetPropertyValue("Icon", _icon); - set => SetField(ref _icon, value, "Icon"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Display)), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Panel)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPanel))] - public virtual string Panel - { - get => GetPropertyValue("Panel", _panel); - set => SetField(ref _panel, value, "Panel"); - } - - #endregion - - #region Connection - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.HostnameIp)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionHostnameIp)), - AttributeUsedInAllProtocolsExcept()] - public virtual string Hostname - { - get => _hostname.Trim(); - set => SetField(ref _hostname, value?.Trim(), "Hostname"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Port)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPort)), - AttributeUsedInAllProtocolsExcept()] - public virtual int Port - { - get => GetPropertyValue("Port", _port); - set => SetField(ref _port, value, "Port"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Username)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUsername)), - AttributeUsedInAllProtocolsExcept(ProtocolType.VNC, ProtocolType.Telnet, ProtocolType.Rlogin, ProtocolType.RAW)] - public virtual string Username - { - get => GetPropertyValue("Username", _username); - set => SetField(ref _username, Settings.Default.DoNotTrimUsername ? value : value?.Trim(), "Username"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Password)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPassword)), - PasswordPropertyText(true), - AttributeUsedInAllProtocolsExcept(ProtocolType.Telnet, ProtocolType.Rlogin, ProtocolType.RAW)] - public virtual string Password - { - get => GetPropertyValue("Password", _password); - set => SetField(ref _password, value, "Password"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Domain)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDomain)), - AttributeUsedInProtocol(ProtocolType.RDP, ProtocolType.IntApp, ProtocolType.PowerShell)] - public string Domain - { - get => GetPropertyValue("Domain", _domain).Trim(); - set => SetField(ref _domain, value?.Trim(), "Domain"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.VmId)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVmId)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public string VmId - { - get => GetPropertyValue("VmId", _vmId).Trim(); - set => SetField(ref _vmId, value?.Trim(), "VmId"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.SshTunnel)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSshTunnel)), - TypeConverter(typeof(SshTunnelTypeConverter)), - AttributeUsedInAllProtocolsExcept()] - public string SSHTunnelConnectionName - { - get => GetPropertyValue("SSHTunnelConnectionName", _sshTunnelConnectionName).Trim(); - set => SetField(ref _sshTunnelConnectionName, value?.Trim(), "SSHTunnelConnectionName"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.OpeningCommand)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionOpeningCommand)), - AttributeUsedInProtocol(ProtocolType.SSH1, ProtocolType.SSH2)] - public virtual string OpeningCommand - { - get => GetPropertyValue("OpeningCommand", _openingCommand); - set => SetField(ref _openingCommand, value, "OpeningCommand"); - } - #endregion - - #region Protocol - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Protocol)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionProtocol)), - TypeConverter(typeof(MiscTools.EnumTypeConverter))] - public virtual ProtocolType Protocol - { - get => GetPropertyValue("Protocol", _protocol); - set => SetField(ref _protocol, value, "Protocol"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpVersion)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRdpVersion)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public virtual RdpVersion RdpVersion - { - get => GetPropertyValue("RdpVersion", _rdpProtocolVersion); - set => SetField(ref _rdpProtocolVersion, value, nameof(RdpVersion)); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.ExternalTool)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionExternalTool)), - TypeConverter(typeof(ExternalToolsTypeConverter)), - AttributeUsedInProtocol(ProtocolType.IntApp)] - public string ExtApp - { - get => GetPropertyValue("ExtApp", _extApp); - set => SetField(ref _extApp, value, "ExtApp"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.PuttySession)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPuttySession)), - TypeConverter(typeof(Config.Putty.PuttySessionsManager.SessionList)), - AttributeUsedInProtocol(ProtocolType.SSH1, ProtocolType.SSH2, ProtocolType.Telnet, - ProtocolType.RAW, ProtocolType.Rlogin)] - public virtual string PuttySession - { - get => GetPropertyValue("PuttySession", _puttySession); - set => SetField(ref _puttySession, value, "PuttySession"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.SshOptions)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSshOptions)), - AttributeUsedInProtocol(ProtocolType.SSH1, ProtocolType.SSH2)] - public virtual string SSHOptions - { - get => GetPropertyValue("SSHOptions", _sshOptions); - set => SetField(ref _sshOptions, value, "SSHOptions"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseConsoleSession)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseConsoleSession)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool UseConsoleSession - { - get => GetPropertyValue("UseConsoleSession", _useConsoleSession); - set => SetField(ref _useConsoleSession, value, "UseConsoleSession"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.AuthenticationLevel)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionAuthenticationLevel)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public AuthenticationLevel RDPAuthenticationLevel - { - get => GetPropertyValue("RDPAuthenticationLevel", _rdpAuthenticationLevel); - set => SetField(ref _rdpAuthenticationLevel, value, "RDPAuthenticationLevel"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.MinutesToIdleTimeout)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDPMinutesToIdleTimeout)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public virtual int RDPMinutesToIdleTimeout - { - get => GetPropertyValue("RDPMinutesToIdleTimeout", _rdpMinutesToIdleTimeout); - set - { - if (value < 0) - value = 0; - else if (value > 240) - value = 240; - SetField(ref _rdpMinutesToIdleTimeout, value, "RDPMinutesToIdleTimeout"); - } - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.MinutesToIdleTimeout)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDPAlertIdleTimeout)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool RDPAlertIdleTimeout - { - get => GetPropertyValue("RDPAlertIdleTimeout", _rdpAlertIdleTimeout); - set => SetField(ref _rdpAlertIdleTimeout, value, "RDPAlertIdleTimeout"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.LoadBalanceInfo)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionLoadBalanceInfo)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public string LoadBalanceInfo - { - get => GetPropertyValue("LoadBalanceInfo", _loadBalanceInfo).Trim(); - set => SetField(ref _loadBalanceInfo, value?.Trim(), "LoadBalanceInfo"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.RenderingEngine)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRenderingEngine)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.HTTP, ProtocolType.HTTPS)] - public HTTPBase.RenderingEngine RenderingEngine - { - get => GetPropertyValue("RenderingEngine", _renderingEngine); - set => SetField(ref _renderingEngine, value, "RenderingEngine"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseCredSsp)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseCredSsp)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool UseCredSsp - { - get => GetPropertyValue("UseCredSsp", _useCredSsp); - set => SetField(ref _useCredSsp, value, "UseCredSsp"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseVmId)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseVmId)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool UseVmId - { - get => GetPropertyValue("UseVmId", _useVmId); - set => SetField(ref _useVmId, value, "UseVmId"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseEnhancedMode)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseEnhancedMode)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool UseEnhancedMode - { - get => GetPropertyValue("UseEnhancedMode", _useEnhancedMode); - set => SetField(ref _useEnhancedMode, value, "UseEnhancedMode"); - } - #endregion - - #region RD Gateway - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayUsageMethod)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRdpGatewayUsageMethod)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public RDGatewayUsageMethod RDGatewayUsageMethod - { - get => GetPropertyValue("RDGatewayUsageMethod", _rdGatewayUsageMethod); - set => SetField(ref _rdGatewayUsageMethod, value, "RDGatewayUsageMethod"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayHostname)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayHostname)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public string RDGatewayHostname - { - get => GetPropertyValue("RDGatewayHostname", _rdGatewayHostname).Trim(); - set => SetField(ref _rdGatewayHostname, value?.Trim(), "RDGatewayHostname"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayUseConnectionCredentials)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayUseConnectionCredentials)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public RDGatewayUseConnectionCredentials RDGatewayUseConnectionCredentials - { - get => GetPropertyValue("RDGatewayUseConnectionCredentials", _rdGatewayUseConnectionCredentials); - set => SetField(ref _rdGatewayUseConnectionCredentials, value, "RDGatewayUseConnectionCredentials"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayUsername)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayUsername)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public string RDGatewayUsername - { - get => GetPropertyValue("RDGatewayUsername", _rdGatewayUsername).Trim(); - set => SetField(ref _rdGatewayUsername, value?.Trim(), "RDGatewayUsername"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayPassword)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRdpGatewayPassword)), - PasswordPropertyText(true), - AttributeUsedInProtocol(ProtocolType.RDP)] - public string RDGatewayPassword - { - get => GetPropertyValue("RDGatewayPassword", _rdGatewayPassword); - set => SetField(ref _rdGatewayPassword, value, "RDGatewayPassword"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayDomain)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayDomain)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public string RDGatewayDomain - { - get => GetPropertyValue("RDGatewayDomain", _rdGatewayDomain).Trim(); - set => SetField(ref _rdGatewayDomain, value?.Trim(), "RDGatewayDomain"); - } - - #endregion - - #region Appearance - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Resolution)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionResolution)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public RDPResolutions Resolution - { - get => GetPropertyValue("Resolution", _resolution); - set => SetField(ref _resolution, value, "Resolution"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.AutomaticResize)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionAutomaticResize)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool AutomaticResize - { - get => GetPropertyValue("AutomaticResize", _automaticResize); - set => SetField(ref _automaticResize, value, "AutomaticResize"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Colors)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionColors)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public RDPColors Colors - { - get => GetPropertyValue("Colors", _colors); - set => SetField(ref _colors, value, "Colors"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.CacheBitmaps)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionCacheBitmaps)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool CacheBitmaps - { - get => GetPropertyValue("CacheBitmaps", _cacheBitmaps); - set => SetField(ref _cacheBitmaps, value, "CacheBitmaps"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisplayWallpaper)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisplayWallpaper)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool DisplayWallpaper - { - get => GetPropertyValue("DisplayWallpaper", _displayWallpaper); - set => SetField(ref _displayWallpaper, value, "DisplayWallpaper"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisplayThemes)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisplayThemes)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool DisplayThemes - { - get => GetPropertyValue("DisplayThemes", _displayThemes); - set => SetField(ref _displayThemes, value, "DisplayThemes"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.FontSmoothing)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEnableFontSmoothing)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool EnableFontSmoothing - { - get => GetPropertyValue("EnableFontSmoothing", _enableFontSmoothing); - set => SetField(ref _enableFontSmoothing, value, "EnableFontSmoothing"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.EnableDesktopComposition)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEnableDesktopComposition)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool EnableDesktopComposition - { - get => GetPropertyValue("EnableDesktopComposition", _enableDesktopComposition); - set => SetField(ref _enableDesktopComposition, value, "EnableDesktopComposition"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableFullWindowDrag)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableFullWindowDrag)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool DisableFullWindowDrag - { - get => GetPropertyValue("DisableFullWindowDrag", _disableFullWindowDrag); - set => SetField(ref _disableFullWindowDrag, value, "DisableFullWindowDrag"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableMenuAnimations)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableMenuAnimations)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool DisableMenuAnimations - { - get => GetPropertyValue("DisableMenuAnimations", _disableMenuAnimations); - set => SetField(ref _disableMenuAnimations, value, "DisableMenuAnimations"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableCursorShadow)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableCursorShadow)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool DisableCursorShadow - { - get => GetPropertyValue("DisableCursorShadow", _disableCursorShadow); - set => SetField(ref _disableCursorShadow, value, "DisableCursorShadow"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableCursorShadow)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableCursorShadow)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool DisableCursorBlinking - { - get => GetPropertyValue("DisableCursorBlinking", _disableCursorBlinking); - set => SetField(ref _disableCursorBlinking, value, "DisableCursorBlinking"); - } - #endregion - - #region Redirect - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.RedirectKeys)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectKeys)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool RedirectKeys - { - get => GetPropertyValue("RedirectKeys", _redirectKeys); - set => SetField(ref _redirectKeys, value, "RedirectKeys"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.DiskDrives)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectDrives)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool RedirectDiskDrives - { - get => GetPropertyValue("RedirectDiskDrives", _redirectDiskDrives); - set => SetField(ref _redirectDiskDrives, value, "RedirectDiskDrives"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Printers)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectPrinters)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool RedirectPrinters - { - get => GetPropertyValue("RedirectPrinters", _redirectPrinters); - set => SetField(ref _redirectPrinters, value, "RedirectPrinters"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Clipboard)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectClipboard)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool RedirectClipboard - { - get => GetPropertyValue("RedirectClipboard", _redirectClipboard); - set => SetField(ref _redirectClipboard, value, "RedirectClipboard"); - } - - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Ports)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectPorts)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool RedirectPorts - { - get => GetPropertyValue("RedirectPorts", _redirectPorts); - set => SetField(ref _redirectPorts, value, "RedirectPorts"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.SmartCard)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectSmartCards)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool RedirectSmartCards - { - get => GetPropertyValue("RedirectSmartCards", _redirectSmartCards); - set => SetField(ref _redirectSmartCards, value, "RedirectSmartCards"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Sounds)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectSounds)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public RDPSounds RedirectSound - { - get => GetPropertyValue("RedirectSound", _redirectSound); - set => SetField(ref _redirectSound, value, "RedirectSound"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.SoundQuality)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSoundQuality)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public RDPSoundQuality SoundQuality - { - get => GetPropertyValue("SoundQuality", _soundQuality); - set => SetField(ref _soundQuality, value, "SoundQuality"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.AudioCapture)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectAudioCapture)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public bool RedirectAudioCapture - { - get => GetPropertyValue("RedirectAudioCapture", _redirectAudioCapture); - set => SetField(ref _redirectAudioCapture, value, nameof(RedirectAudioCapture)); - } - - #endregion - - #region Misc - - [Browsable(false)] public string ConstantID { get; } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.ExternalToolBefore)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionExternalToolBefore)), - TypeConverter(typeof(ExternalToolsTypeConverter))] - public virtual string PreExtApp - { - get => GetPropertyValue("PreExtApp", _preExtApp); - set => SetField(ref _preExtApp, value, "PreExtApp"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.ExternalToolAfter)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionExternalToolAfter)), - TypeConverter(typeof(ExternalToolsTypeConverter))] - public virtual string PostExtApp - { - get => GetPropertyValue("PostExtApp", _postExtApp); - set => SetField(ref _postExtApp, value, "PostExtApp"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.MacAddress)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionMACAddress))] - public virtual string MacAddress - { - get => GetPropertyValue("MacAddress", _macAddress); - set => SetField(ref _macAddress, value, "MacAddress"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.UserField)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUser1))] - public virtual string UserField - { - get => GetPropertyValue("UserField", _userField); - set => SetField(ref _userField, value, "UserField"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Favorite)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionFavorite)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter))] - public virtual bool Favorite - { - get => GetPropertyValue("Favorite", _favorite); - set => SetField(ref _favorite, value, "Favorite"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.StartProgram)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionStartProgram)), - AttributeUsedInProtocol(ProtocolType.RDP)] - public virtual string StartProgram - { - get => GetPropertyValue("StartProgram", _startProgram); - set => SetField(ref _startProgram, value, "StartProgram"); - } - - #endregion - - #region VNC - // TODO: it seems all these VNC properties were added and serialized but - // never hooked up to the VNC protocol or shown to the user - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Compression)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionCompression)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.VNC), - Browsable(false)] - public ProtocolVNC.Compression VNCCompression - { - get => GetPropertyValue("VNCCompression", _vncCompression); - set => SetField(ref _vncCompression, value, "VNCCompression"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Encoding)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEncoding)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.VNC), - Browsable(false)] - public ProtocolVNC.Encoding VNCEncoding - { - get => GetPropertyValue("VNCEncoding", _vncEncoding); - set => SetField(ref _vncEncoding, value, "VNCEncoding"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.AuthenticationMode)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionAuthenticationMode)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.VNC), - Browsable(false)] - public ProtocolVNC.AuthMode VNCAuthMode - { - get => GetPropertyValue("VNCAuthMode", _vncAuthMode); - set => SetField(ref _vncAuthMode, value, "VNCAuthMode"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyType)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyType)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.VNC), - Browsable(false)] - public ProtocolVNC.ProxyType VNCProxyType - { - get => GetPropertyValue("VNCProxyType", _vncProxyType); - set => SetField(ref _vncProxyType, value, "VNCProxyType"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyAddress)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyAddress)), - AttributeUsedInProtocol(ProtocolType.VNC), - Browsable(false)] - public string VNCProxyIP - { - get => GetPropertyValue("VNCProxyIP", _vncProxyIp); - set => SetField(ref _vncProxyIp, value, "VNCProxyIP"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyPort)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyPort)), - AttributeUsedInProtocol(ProtocolType.VNC), - Browsable(false)] - public int VNCProxyPort - { - get => GetPropertyValue("VNCProxyPort", _vncProxyPort); - set => SetField(ref _vncProxyPort, value, "VNCProxyPort"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyUsername)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyUsername)), - AttributeUsedInProtocol(ProtocolType.VNC), - Browsable(false)] - public string VNCProxyUsername - { - get => GetPropertyValue("VNCProxyUsername", _vncProxyUsername); - set => SetField(ref _vncProxyUsername, value, "VNCProxyUsername"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyPassword)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyPassword)), - PasswordPropertyText(true), - AttributeUsedInProtocol(ProtocolType.VNC), - Browsable(false)] - public string VNCProxyPassword - { - get => GetPropertyValue("VNCProxyPassword", _vncProxyPassword); - set => SetField(ref _vncProxyPassword, value, "VNCProxyPassword"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.Colors)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionColors)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.VNC), - Browsable(false)] - public ProtocolVNC.Colors VNCColors - { - get => GetPropertyValue("VNCColors", _vncColors); - set => SetField(ref _vncColors, value, "VNCColors"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.SmartSizeMode)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSmartSizeMode)), - TypeConverter(typeof(MiscTools.EnumTypeConverter)), - AttributeUsedInProtocol(ProtocolType.VNC)] - public ProtocolVNC.SmartSizeMode VNCSmartSizeMode - { - get => GetPropertyValue("VNCSmartSizeMode", _vncSmartSizeMode); - set => SetField(ref _vncSmartSizeMode, value, "VNCSmartSizeMode"); - } - - [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), - LocalizedAttributes.LocalizedDisplayName(nameof(Language.ViewOnly)), - LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionViewOnly)), - TypeConverter(typeof(MiscTools.YesNoTypeConverter)), - AttributeUsedInProtocol(ProtocolType.VNC)] - public bool VNCViewOnly - { - get => GetPropertyValue("VNCViewOnly", _vncViewOnly); - set => SetField(ref _vncViewOnly, value, "VNCViewOnly"); - } - - #endregion - - #endregion - - protected AbstractConnectionRecord(string uniqueId) - { - ConstantID = uniqueId.ThrowIfNullOrEmpty(nameof(uniqueId)); - } - - protected virtual TPropertyType GetPropertyValue(string propertyName, TPropertyType value) - { - return (TPropertyType)GetType().GetProperty(propertyName)?.GetValue(this, null); - } - - public event PropertyChangedEventHandler PropertyChanged; - - protected virtual void RaisePropertyChangedEvent(object sender, PropertyChangedEventArgs args) - { - PropertyChanged?.Invoke(sender, new PropertyChangedEventArgs(args.PropertyName)); - } - - protected void SetField(ref T field, T value, string propertyName = null) - { - if (EqualityComparer.Default.Equals(field, value)) return; - field = value; - RaisePropertyChangedEvent(this, new PropertyChangedEventArgs(propertyName)); - } - } +using System.Collections.Generic; +using System.ComponentModel; +using mRemoteNG.Connection.Protocol; +using mRemoteNG.Connection.Protocol.Http; +using mRemoteNG.Connection.Protocol.RDP; +using mRemoteNG.Connection.Protocol.VNC; +using mRemoteNG.Properties; +using mRemoteNG.Tools; +using mRemoteNG.Tools.Attributes; +using mRemoteNG.Resources.Language; + + +namespace mRemoteNG.Connection +{ + public abstract class AbstractConnectionRecord : INotifyPropertyChanged + { + #region Fields + + private string _name; + private string _description; + private string _icon; + private string _panel; + + private string _hostname; + private string _username = ""; + private string _password = ""; + private string _domain = ""; + private string _vmId = ""; + private bool _useEnhancedMode; + private string _startProgramWorkDir = ""; + + private string _sshTunnelConnectionName = ""; + private ProtocolType _protocol; + private RdpVersion _rdpProtocolVersion; + private string _extApp; + private int _port; + private string _sshOptions = ""; + private string _puttySession; + private bool _useConsoleSession; + private AuthenticationLevel _rdpAuthenticationLevel; + private int _rdpMinutesToIdleTimeout; + private bool _rdpAlertIdleTimeout; + private string _loadBalanceInfo; + private HTTPBase.RenderingEngine _renderingEngine; + private bool _useCredSsp; + private bool _useVmId; + + private RDGatewayUsageMethod _rdGatewayUsageMethod; + private string _rdGatewayHostname; + private RDGatewayUseConnectionCredentials _rdGatewayUseConnectionCredentials; + private string _rdGatewayUsername; + private string _rdGatewayPassword; + private string _rdGatewayDomain; + + private RDPResolutions _resolution; + private bool _automaticResize; + private RDPColors _colors; + private bool _cacheBitmaps; + private bool _displayWallpaper; + private bool _displayThemes; + private bool _enableFontSmoothing; + private bool _enableDesktopComposition; + private bool _disableFullWindowDrag; + private bool _disableMenuAnimations; + private bool _disableCursorShadow; + private bool _disableCursorBlinking; + + private bool _redirectKeys; + private bool _redirectDiskDrives; + private bool _redirectPrinters; + private bool _redirectClipboard; + private bool _redirectPorts; + private bool _redirectSmartCards; + private RDPSounds _redirectSound; + private RDPSoundQuality _soundQuality; + private bool _redirectAudioCapture; + + private string _preExtApp; + private string _postExtApp; + private string _macAddress; + private string _openingCommand; + private string _userField; + private string _startProgram; + private bool _favorite; + + private ProtocolVNC.Compression _vncCompression; + private ProtocolVNC.Encoding _vncEncoding; + private ProtocolVNC.AuthMode _vncAuthMode; + private ProtocolVNC.ProxyType _vncProxyType; + private string _vncProxyIp; + private int _vncProxyPort; + private string _vncProxyUsername; + private string _vncProxyPassword; + private ProtocolVNC.Colors _vncColors; + private ProtocolVNC.SmartSizeMode _vncSmartSizeMode; + private bool _vncViewOnly; + + #endregion + + #region Properties + + #region Display + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Display)), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Name)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionName))] + public virtual string Name + { + get => _name; + set => SetField(ref _name, value, "Name"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Display)), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Description)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDescription))] + public virtual string Description + { + get => GetPropertyValue("Description", _description); + set => SetField(ref _description, value, "Description"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Display)), + TypeConverter(typeof(ConnectionIcon)), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Icon)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionIcon))] + public virtual string Icon + { + get => GetPropertyValue("Icon", _icon); + set => SetField(ref _icon, value, "Icon"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Display)), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Panel)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPanel))] + public virtual string Panel + { + get => GetPropertyValue("Panel", _panel); + set => SetField(ref _panel, value, "Panel"); + } + + #endregion + + #region Connection + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.HostnameIp)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionHostnameIp)), + AttributeUsedInAllProtocolsExcept()] + public virtual string Hostname + { + get => _hostname.Trim(); + set => SetField(ref _hostname, value?.Trim(), "Hostname"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Port)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPort)), + AttributeUsedInAllProtocolsExcept()] + public virtual int Port + { + get => GetPropertyValue("Port", _port); + set => SetField(ref _port, value, "Port"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Username)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUsername)), + AttributeUsedInAllProtocolsExcept(ProtocolType.VNC, ProtocolType.Telnet, ProtocolType.Rlogin, ProtocolType.RAW)] + public virtual string Username + { + get => GetPropertyValue("Username", _username); + set => SetField(ref _username, Settings.Default.DoNotTrimUsername ? value : value?.Trim(), "Username"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Password)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPassword)), + PasswordPropertyText(true), + AttributeUsedInAllProtocolsExcept(ProtocolType.Telnet, ProtocolType.Rlogin, ProtocolType.RAW)] + public virtual string Password + { + get => GetPropertyValue("Password", _password); + set => SetField(ref _password, value, "Password"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Domain)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDomain)), + AttributeUsedInProtocol(ProtocolType.RDP, ProtocolType.IntApp, ProtocolType.PowerShell)] + public string Domain + { + get => GetPropertyValue("Domain", _domain).Trim(); + set => SetField(ref _domain, value?.Trim(), "Domain"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.VmId)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVmId)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public string VmId + { + get => GetPropertyValue("VmId", _vmId).Trim(); + set => SetField(ref _vmId, value?.Trim(), "VmId"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.SshTunnel)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSshTunnel)), + TypeConverter(typeof(SshTunnelTypeConverter)), + AttributeUsedInAllProtocolsExcept()] + public string SSHTunnelConnectionName + { + get => GetPropertyValue("SSHTunnelConnectionName", _sshTunnelConnectionName).Trim(); + set => SetField(ref _sshTunnelConnectionName, value?.Trim(), "SSHTunnelConnectionName"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.OpeningCommand)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionOpeningCommand)), + AttributeUsedInProtocol(ProtocolType.SSH1, ProtocolType.SSH2)] + public virtual string OpeningCommand + { + get => GetPropertyValue("OpeningCommand", _openingCommand); + set => SetField(ref _openingCommand, value, "OpeningCommand"); + } + #endregion + + #region Protocol + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Protocol)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionProtocol)), + TypeConverter(typeof(MiscTools.EnumTypeConverter))] + public virtual ProtocolType Protocol + { + get => GetPropertyValue("Protocol", _protocol); + set => SetField(ref _protocol, value, "Protocol"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpVersion)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRdpVersion)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public virtual RdpVersion RdpVersion + { + get => GetPropertyValue("RdpVersion", _rdpProtocolVersion); + set => SetField(ref _rdpProtocolVersion, value, nameof(RdpVersion)); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.ExternalTool)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionExternalTool)), + TypeConverter(typeof(ExternalToolsTypeConverter)), + AttributeUsedInProtocol(ProtocolType.IntApp)] + public string ExtApp + { + get => GetPropertyValue("ExtApp", _extApp); + set => SetField(ref _extApp, value, "ExtApp"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.PuttySession)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPuttySession)), + TypeConverter(typeof(Config.Putty.PuttySessionsManager.SessionList)), + AttributeUsedInProtocol(ProtocolType.SSH1, ProtocolType.SSH2, ProtocolType.Telnet, + ProtocolType.RAW, ProtocolType.Rlogin)] + public virtual string PuttySession + { + get => GetPropertyValue("PuttySession", _puttySession); + set => SetField(ref _puttySession, value, "PuttySession"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.SshOptions)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSshOptions)), + AttributeUsedInProtocol(ProtocolType.SSH1, ProtocolType.SSH2)] + public virtual string SSHOptions + { + get => GetPropertyValue("SSHOptions", _sshOptions); + set => SetField(ref _sshOptions, value, "SSHOptions"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseConsoleSession)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseConsoleSession)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool UseConsoleSession + { + get => GetPropertyValue("UseConsoleSession", _useConsoleSession); + set => SetField(ref _useConsoleSession, value, "UseConsoleSession"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.AuthenticationLevel)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionAuthenticationLevel)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public AuthenticationLevel RDPAuthenticationLevel + { + get => GetPropertyValue("RDPAuthenticationLevel", _rdpAuthenticationLevel); + set => SetField(ref _rdpAuthenticationLevel, value, "RDPAuthenticationLevel"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.MinutesToIdleTimeout)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDPMinutesToIdleTimeout)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public virtual int RDPMinutesToIdleTimeout + { + get => GetPropertyValue("RDPMinutesToIdleTimeout", _rdpMinutesToIdleTimeout); + set + { + if (value < 0) + value = 0; + else if (value > 240) + value = 240; + SetField(ref _rdpMinutesToIdleTimeout, value, "RDPMinutesToIdleTimeout"); + } + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.MinutesToIdleTimeout)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDPAlertIdleTimeout)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool RDPAlertIdleTimeout + { + get => GetPropertyValue("RDPAlertIdleTimeout", _rdpAlertIdleTimeout); + set => SetField(ref _rdpAlertIdleTimeout, value, "RDPAlertIdleTimeout"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.LoadBalanceInfo)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionLoadBalanceInfo)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public string LoadBalanceInfo + { + get => GetPropertyValue("LoadBalanceInfo", _loadBalanceInfo).Trim(); + set => SetField(ref _loadBalanceInfo, value?.Trim(), "LoadBalanceInfo"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RenderingEngine)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRenderingEngine)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.HTTP, ProtocolType.HTTPS)] + public HTTPBase.RenderingEngine RenderingEngine + { + get => GetPropertyValue("RenderingEngine", _renderingEngine); + set => SetField(ref _renderingEngine, value, "RenderingEngine"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseCredSsp)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseCredSsp)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool UseCredSsp + { + get => GetPropertyValue("UseCredSsp", _useCredSsp); + set => SetField(ref _useCredSsp, value, "UseCredSsp"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseVmId)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseVmId)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool UseVmId + { + get => GetPropertyValue("UseVmId", _useVmId); + set => SetField(ref _useVmId, value, "UseVmId"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseEnhancedMode)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseEnhancedMode)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool UseEnhancedMode + { + get => GetPropertyValue("UseEnhancedMode", _useEnhancedMode); + set => SetField(ref _useEnhancedMode, value, "UseEnhancedMode"); + } + #endregion + + #region RD Gateway + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayUsageMethod)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRdpGatewayUsageMethod)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public RDGatewayUsageMethod RDGatewayUsageMethod + { + get => GetPropertyValue("RDGatewayUsageMethod", _rdGatewayUsageMethod); + set => SetField(ref _rdGatewayUsageMethod, value, "RDGatewayUsageMethod"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayHostname)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayHostname)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public string RDGatewayHostname + { + get => GetPropertyValue("RDGatewayHostname", _rdGatewayHostname).Trim(); + set => SetField(ref _rdGatewayHostname, value?.Trim(), "RDGatewayHostname"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayUseConnectionCredentials)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayUseConnectionCredentials)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public RDGatewayUseConnectionCredentials RDGatewayUseConnectionCredentials + { + get => GetPropertyValue("RDGatewayUseConnectionCredentials", _rdGatewayUseConnectionCredentials); + set => SetField(ref _rdGatewayUseConnectionCredentials, value, "RDGatewayUseConnectionCredentials"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayUsername)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayUsername)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public string RDGatewayUsername + { + get => GetPropertyValue("RDGatewayUsername", _rdGatewayUsername).Trim(); + set => SetField(ref _rdGatewayUsername, value?.Trim(), "RDGatewayUsername"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayPassword)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRdpGatewayPassword)), + PasswordPropertyText(true), + AttributeUsedInProtocol(ProtocolType.RDP)] + public string RDGatewayPassword + { + get => GetPropertyValue("RDGatewayPassword", _rdGatewayPassword); + set => SetField(ref _rdGatewayPassword, value, "RDGatewayPassword"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayDomain)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayDomain)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public string RDGatewayDomain + { + get => GetPropertyValue("RDGatewayDomain", _rdGatewayDomain).Trim(); + set => SetField(ref _rdGatewayDomain, value?.Trim(), "RDGatewayDomain"); + } + + #endregion + + #region Appearance + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Resolution)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionResolution)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public RDPResolutions Resolution + { + get => GetPropertyValue("Resolution", _resolution); + set => SetField(ref _resolution, value, "Resolution"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.AutomaticResize)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionAutomaticResize)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool AutomaticResize + { + get => GetPropertyValue("AutomaticResize", _automaticResize); + set => SetField(ref _automaticResize, value, "AutomaticResize"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Colors)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionColors)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public RDPColors Colors + { + get => GetPropertyValue("Colors", _colors); + set => SetField(ref _colors, value, "Colors"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.CacheBitmaps)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionCacheBitmaps)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool CacheBitmaps + { + get => GetPropertyValue("CacheBitmaps", _cacheBitmaps); + set => SetField(ref _cacheBitmaps, value, "CacheBitmaps"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisplayWallpaper)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisplayWallpaper)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool DisplayWallpaper + { + get => GetPropertyValue("DisplayWallpaper", _displayWallpaper); + set => SetField(ref _displayWallpaper, value, "DisplayWallpaper"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisplayThemes)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisplayThemes)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool DisplayThemes + { + get => GetPropertyValue("DisplayThemes", _displayThemes); + set => SetField(ref _displayThemes, value, "DisplayThemes"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.FontSmoothing)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEnableFontSmoothing)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool EnableFontSmoothing + { + get => GetPropertyValue("EnableFontSmoothing", _enableFontSmoothing); + set => SetField(ref _enableFontSmoothing, value, "EnableFontSmoothing"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.EnableDesktopComposition)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEnableDesktopComposition)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool EnableDesktopComposition + { + get => GetPropertyValue("EnableDesktopComposition", _enableDesktopComposition); + set => SetField(ref _enableDesktopComposition, value, "EnableDesktopComposition"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableFullWindowDrag)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableFullWindowDrag)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool DisableFullWindowDrag + { + get => GetPropertyValue("DisableFullWindowDrag", _disableFullWindowDrag); + set => SetField(ref _disableFullWindowDrag, value, "DisableFullWindowDrag"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableMenuAnimations)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableMenuAnimations)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool DisableMenuAnimations + { + get => GetPropertyValue("DisableMenuAnimations", _disableMenuAnimations); + set => SetField(ref _disableMenuAnimations, value, "DisableMenuAnimations"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableCursorShadow)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableCursorShadow)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool DisableCursorShadow + { + get => GetPropertyValue("DisableCursorShadow", _disableCursorShadow); + set => SetField(ref _disableCursorShadow, value, "DisableCursorShadow"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableCursorShadow)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableCursorShadow)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool DisableCursorBlinking + { + get => GetPropertyValue("DisableCursorBlinking", _disableCursorBlinking); + set => SetField(ref _disableCursorBlinking, value, "DisableCursorBlinking"); + } + #endregion + + #region Redirect + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RedirectKeys)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectKeys)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool RedirectKeys + { + get => GetPropertyValue("RedirectKeys", _redirectKeys); + set => SetField(ref _redirectKeys, value, "RedirectKeys"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.DiskDrives)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectDrives)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool RedirectDiskDrives + { + get => GetPropertyValue("RedirectDiskDrives", _redirectDiskDrives); + set => SetField(ref _redirectDiskDrives, value, "RedirectDiskDrives"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Printers)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectPrinters)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool RedirectPrinters + { + get => GetPropertyValue("RedirectPrinters", _redirectPrinters); + set => SetField(ref _redirectPrinters, value, "RedirectPrinters"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Clipboard)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectClipboard)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool RedirectClipboard + { + get => GetPropertyValue("RedirectClipboard", _redirectClipboard); + set => SetField(ref _redirectClipboard, value, "RedirectClipboard"); + } + + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Ports)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectPorts)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool RedirectPorts + { + get => GetPropertyValue("RedirectPorts", _redirectPorts); + set => SetField(ref _redirectPorts, value, "RedirectPorts"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.SmartCard)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectSmartCards)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool RedirectSmartCards + { + get => GetPropertyValue("RedirectSmartCards", _redirectSmartCards); + set => SetField(ref _redirectSmartCards, value, "RedirectSmartCards"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Sounds)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectSounds)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public RDPSounds RedirectSound + { + get => GetPropertyValue("RedirectSound", _redirectSound); + set => SetField(ref _redirectSound, value, "RedirectSound"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.SoundQuality)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSoundQuality)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public RDPSoundQuality SoundQuality + { + get => GetPropertyValue("SoundQuality", _soundQuality); + set => SetField(ref _soundQuality, value, "SoundQuality"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.AudioCapture)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectAudioCapture)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public bool RedirectAudioCapture + { + get => GetPropertyValue("RedirectAudioCapture", _redirectAudioCapture); + set => SetField(ref _redirectAudioCapture, value, nameof(RedirectAudioCapture)); + } + + #endregion + + #region Misc + + [Browsable(false)] public string ConstantID { get; } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.ExternalToolBefore)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionExternalToolBefore)), + TypeConverter(typeof(ExternalToolsTypeConverter))] + public virtual string PreExtApp + { + get => GetPropertyValue("PreExtApp", _preExtApp); + set => SetField(ref _preExtApp, value, "PreExtApp"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.ExternalToolAfter)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionExternalToolAfter)), + TypeConverter(typeof(ExternalToolsTypeConverter))] + public virtual string PostExtApp + { + get => GetPropertyValue("PostExtApp", _postExtApp); + set => SetField(ref _postExtApp, value, "PostExtApp"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.MacAddress)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionMACAddress))] + public virtual string MacAddress + { + get => GetPropertyValue("MacAddress", _macAddress); + set => SetField(ref _macAddress, value, "MacAddress"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.UserField)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUser1))] + public virtual string UserField + { + get => GetPropertyValue("UserField", _userField); + set => SetField(ref _userField, value, "UserField"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Favorite)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionFavorite)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter))] + public virtual bool Favorite + { + get => GetPropertyValue("Favorite", _favorite); + set => SetField(ref _favorite, value, "Favorite"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.StartProgram)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionStartProgram)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public virtual string StartProgram + { + get => GetPropertyValue("StartProgram", _startProgram); + set => SetField(ref _startProgram, value, "StartProgram"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.RDPStartProgramWorkDir)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDPStartProgramWorkDir)), + AttributeUsedInProtocol(ProtocolType.RDP)] + public virtual string StartProgramWorkDir + { + get => GetPropertyValue("StartProgramWorkDir", _startProgramWorkDir); + set => SetField(ref _startProgramWorkDir, value, "StartProgramWorkDir"); + } + + #endregion + + #region VNC + // TODO: it seems all these VNC properties were added and serialized but + // never hooked up to the VNC protocol or shown to the user + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Compression)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionCompression)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.VNC), + Browsable(false)] + public ProtocolVNC.Compression VNCCompression + { + get => GetPropertyValue("VNCCompression", _vncCompression); + set => SetField(ref _vncCompression, value, "VNCCompression"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Encoding)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEncoding)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.VNC), + Browsable(false)] + public ProtocolVNC.Encoding VNCEncoding + { + get => GetPropertyValue("VNCEncoding", _vncEncoding); + set => SetField(ref _vncEncoding, value, "VNCEncoding"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.AuthenticationMode)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionAuthenticationMode)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.VNC), + Browsable(false)] + public ProtocolVNC.AuthMode VNCAuthMode + { + get => GetPropertyValue("VNCAuthMode", _vncAuthMode); + set => SetField(ref _vncAuthMode, value, "VNCAuthMode"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyType)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyType)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.VNC), + Browsable(false)] + public ProtocolVNC.ProxyType VNCProxyType + { + get => GetPropertyValue("VNCProxyType", _vncProxyType); + set => SetField(ref _vncProxyType, value, "VNCProxyType"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyAddress)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyAddress)), + AttributeUsedInProtocol(ProtocolType.VNC), + Browsable(false)] + public string VNCProxyIP + { + get => GetPropertyValue("VNCProxyIP", _vncProxyIp); + set => SetField(ref _vncProxyIp, value, "VNCProxyIP"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyPort)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyPort)), + AttributeUsedInProtocol(ProtocolType.VNC), + Browsable(false)] + public int VNCProxyPort + { + get => GetPropertyValue("VNCProxyPort", _vncProxyPort); + set => SetField(ref _vncProxyPort, value, "VNCProxyPort"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyUsername)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyUsername)), + AttributeUsedInProtocol(ProtocolType.VNC), + Browsable(false)] + public string VNCProxyUsername + { + get => GetPropertyValue("VNCProxyUsername", _vncProxyUsername); + set => SetField(ref _vncProxyUsername, value, "VNCProxyUsername"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyPassword)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyPassword)), + PasswordPropertyText(true), + AttributeUsedInProtocol(ProtocolType.VNC), + Browsable(false)] + public string VNCProxyPassword + { + get => GetPropertyValue("VNCProxyPassword", _vncProxyPassword); + set => SetField(ref _vncProxyPassword, value, "VNCProxyPassword"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.Colors)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionColors)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.VNC), + Browsable(false)] + public ProtocolVNC.Colors VNCColors + { + get => GetPropertyValue("VNCColors", _vncColors); + set => SetField(ref _vncColors, value, "VNCColors"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.SmartSizeMode)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSmartSizeMode)), + TypeConverter(typeof(MiscTools.EnumTypeConverter)), + AttributeUsedInProtocol(ProtocolType.VNC)] + public ProtocolVNC.SmartSizeMode VNCSmartSizeMode + { + get => GetPropertyValue("VNCSmartSizeMode", _vncSmartSizeMode); + set => SetField(ref _vncSmartSizeMode, value, "VNCSmartSizeMode"); + } + + [LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5), + LocalizedAttributes.LocalizedDisplayName(nameof(Language.ViewOnly)), + LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionViewOnly)), + TypeConverter(typeof(MiscTools.YesNoTypeConverter)), + AttributeUsedInProtocol(ProtocolType.VNC)] + public bool VNCViewOnly + { + get => GetPropertyValue("VNCViewOnly", _vncViewOnly); + set => SetField(ref _vncViewOnly, value, "VNCViewOnly"); + } + + #endregion + + #endregion + + protected AbstractConnectionRecord(string uniqueId) + { + ConstantID = uniqueId.ThrowIfNullOrEmpty(nameof(uniqueId)); + } + + protected virtual TPropertyType GetPropertyValue(string propertyName, TPropertyType value) + { + return (TPropertyType)GetType().GetProperty(propertyName)?.GetValue(this, null); + } + + public event PropertyChangedEventHandler PropertyChanged; + + protected virtual void RaisePropertyChangedEvent(object sender, PropertyChangedEventArgs args) + { + PropertyChanged?.Invoke(sender, new PropertyChangedEventArgs(args.PropertyName)); + } + + protected void SetField(ref T field, T value, string propertyName = null) + { + if (EqualityComparer.Default.Equals(field, value)) return; + field = value; + RaisePropertyChangedEvent(this, new PropertyChangedEventArgs(propertyName)); + } + } } \ No newline at end of file diff --git a/mRemoteNG/Connection/ConnectionInfo.cs b/mRemoteNG/Connection/ConnectionInfo.cs index b663aa2ac..fe1de1b71 100644 --- a/mRemoteNG/Connection/ConnectionInfo.cs +++ b/mRemoteNG/Connection/ConnectionInfo.cs @@ -65,7 +65,8 @@ namespace mRemoteNG.Connection { SetTreeDisplayDefaults(); SetConnectionDefaults(); - SetProtocolDefaults(); + SetProtocolDefaults(); + SetRemoteDesktopServicesDefaults(); SetRdGatewayDefaults(); SetAppearanceDefaults(); SetRedirectDefaults(); @@ -308,6 +309,12 @@ namespace mRemoteNG.Connection UseCredSsp = Settings.Default.ConDefaultUseCredSsp; UseVmId = Settings.Default.ConDefaultUseVmId; UseEnhancedMode = Settings.Default.ConDefaultUseEnhancedMode; + } + + private void SetRemoteDesktopServicesDefaults() + { + StartProgram = string.Empty; + StartProgramWorkDir = string.Empty; } private void SetRdGatewayDefaults() diff --git a/mRemoteNG/Connection/Protocol/RDP/RdpProtocol6.cs b/mRemoteNG/Connection/Protocol/RDP/RdpProtocol6.cs index 729352f88..804ca6db3 100644 --- a/mRemoteNG/Connection/Protocol/RDP/RdpProtocol6.cs +++ b/mRemoteNG/Connection/Protocol/RDP/RdpProtocol6.cs @@ -285,9 +285,14 @@ namespace mRemoteNG.Connection.Protocol.RDP _rdpClient.FullScreenTitle = connectionInfo.Name; _alertOnIdleDisconnect = connectionInfo.RDPAlertIdleTimeout; - _rdpClient.AdvancedSettings2.MinutesToIdleTimeout = connectionInfo.RDPMinutesToIdleTimeout; - - //not user changeable + _rdpClient.AdvancedSettings2.MinutesToIdleTimeout = connectionInfo.RDPMinutesToIdleTimeout; + + #region Remote Desktop Services + _rdpClient.SecuredSettings2.StartProgram = connectionInfo.StartProgram; + _rdpClient.SecuredSettings2.WorkDir = connectionInfo.StartProgramWorkDir; + #endregion + + //not user changeable _rdpClient.AdvancedSettings2.GrabFocusOnConnect = true; _rdpClient.AdvancedSettings3.EnableAutoReconnect = true; _rdpClient.AdvancedSettings3.MaxReconnectAttempts = Settings.Default.RdpReconnectionCount; @@ -297,8 +302,6 @@ namespace mRemoteNG.Connection.Protocol.RDP _rdpClient.AdvancedSettings2.overallConnectionTimeout = Settings.Default.ConRDPOverallConnectionTimeout; - _rdpClient.SecuredSettings2.StartProgram = connectionInfo.StartProgram; - _rdpClient.AdvancedSettings2.BitmapPeristence = Convert.ToInt32(connectionInfo.CacheBitmaps); if (_rdpVersion >= Versions.RDC61) { diff --git a/mRemoteNG/Language/Language.Designer.cs b/mRemoteNG/Language/Language.Designer.cs index c38a23709..f9c2418af 100644 --- a/mRemoteNG/Language/Language.Designer.cs +++ b/mRemoteNG/Language/Language.Designer.cs @@ -1,6247 +1,6319 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace mRemoteNG.Resources.Language { - using System; - - - /// - /// A strongly-typed resource class, for looking up localized strings, etc. - /// - // This class was auto-generated by the StronglyTypedResourceBuilder - // class via a tool like ResGen or Visual Studio. - // To add or remove a member, edit your .ResX file then rerun ResGen - // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Language { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Language() { - } - - /// - /// Returns the cached ResourceManager instance used by this class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager { - get { - if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("mRemoteNG.Language.Language", typeof(Language).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Overrides the current thread's CurrentUICulture property for all - /// resource lookups using this strongly typed resource class. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture { - get { - return resourceCulture; - } - set { - resourceCulture = value; - } - } - - /// - /// Looks up a localized string similar to &Browse.... - /// - internal static string _Browse { - get { - return ResourceManager.GetString("_Browse", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Cancel. - /// - internal static string _Cancel { - get { - return ResourceManager.GetString("_Cancel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Close. - /// - internal static string _Close { - get { - return ResourceManager.GetString("_Close", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Warn me when closing connections. - /// - internal static string _CloseWarnAll { - get { - return ResourceManager.GetString("_CloseWarnAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Delete. - /// - internal static string _Delete { - get { - return ResourceManager.GetString("_Delete", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Export to File.... - /// - internal static string _ExportToFile { - get { - return ResourceManager.GetString("_ExportToFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &File. - /// - internal static string _File { - get { - return ResourceManager.GetString("_File", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Help. - /// - internal static string _Help { - get { - return ResourceManager.GetString("_Help", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Import. - /// - internal static string _Import { - get { - return ResourceManager.GetString("_Import", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Launch. - /// - internal static string _Launch { - get { - return ResourceManager.GetString("_Launch", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &New. - /// - internal static string _New { - get { - return ResourceManager.GetString("_New", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &OK. - /// - internal static string _Ok { - get { - return ResourceManager.GetString("_Ok", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Scan. - /// - internal static string _Scan { - get { - return ResourceManager.GetString("_Scan", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Stop. - /// - internal static string _Stop { - get { - return ResourceManager.GetString("_Stop", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Tools. - /// - internal static string _Tools { - get { - return ResourceManager.GetString("_Tools", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Try again. - /// - internal static string _TryAgain { - get { - return ResourceManager.GetString("_TryAgain", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &View. - /// - internal static string _View { - get { - return ResourceManager.GetString("_View", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to About. - /// - internal static string About { - get { - return ResourceManager.GetString("About", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Active Directory. - /// - internal static string ActiveDirectory { - get { - return ResourceManager.GetString("ActiveDirectory", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Add. - /// - internal static string Add { - get { - return ResourceManager.GetString("Add", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Add Connection Panel. - /// - internal static string AddConnectionPanel { - get { - return ResourceManager.GetString("AddConnectionPanel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to AddNodeFromXML failed!. - /// - internal static string AddNodeFromXmlFailed { - get { - return ResourceManager.GetString("AddNodeFromXmlFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Address:. - /// - internal static string Address { - get { - return ResourceManager.GetString("Address", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Advanced. - /// - internal static string Advanced { - get { - return ResourceManager.GetString("Advanced", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Advanced security options. - /// - internal static string AdvancedSecurityOptions { - get { - return ResourceManager.GetString("AdvancedSecurityOptions", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to All. - /// - internal static string All { - get { - return ResourceManager.GetString("All", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Allow only a single instance of the application (mRemoteNG restart required). - /// - internal static string AllowOnlySingleInstance { - get { - return ResourceManager.GetString("AllowOnlySingleInstance", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Always. - /// - internal static string Always { - get { - return ResourceManager.GetString("Always", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Always connect, even if authentication fails. - /// - internal static string AlwaysConnectEvenIfAuthFails { - get { - return ResourceManager.GetString("AlwaysConnectEvenIfAuthFails", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Always show connection tabs. - /// - internal static string AlwaysShowConnectionTabs { - get { - return ResourceManager.GetString("AlwaysShowConnectionTabs", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Always show panel selection dialog when opening connections. - /// - internal static string AlwaysShowPanelSelection { - get { - return ResourceManager.GetString("AlwaysShowPanelSelection", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Always show panel tabs. - /// - internal static string AlwaysShowPanelTabs { - get { - return ResourceManager.GetString("AlwaysShowPanelTabs", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Always show notification area icon. - /// - internal static string AlwaysShowSysTrayIcon { - get { - return ResourceManager.GetString("AlwaysShowSysTrayIcon", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Appearance. - /// - internal static string Appearance { - get { - return ResourceManager.GetString("Appearance", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Apply. - /// - internal static string Apply { - get { - return ResourceManager.GetString("Apply", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Arguments. - /// - internal static string Arguments { - get { - return ResourceManager.GetString("Arguments", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Ask me again later. - /// - internal static string AskUpdatesCommandAskLater { - get { - return ResourceManager.GetString("AskUpdatesCommandAskLater", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Customize the settings now. - /// - internal static string AskUpdatesCommandCustom { - get { - return ResourceManager.GetString("AskUpdatesCommandCustom", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use the recommended settings. - /// - internal static string AskUpdatesCommandRecommended { - get { - return ResourceManager.GetString("AskUpdatesCommandRecommended", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to {0} can automatically check for updates that may provide new features and bug fixes. It is recommended that you allow {0} to check for updates weekly.. - /// - internal static string AskUpdatesContent { - get { - return ResourceManager.GetString("AskUpdatesContent", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Automatic update settings. - /// - internal static string AskUpdatesMainInstruction { - get { - return ResourceManager.GetString("AskUpdatesMainInstruction", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Aspect. - /// - internal static string Aspect { - get { - return ResourceManager.GetString("Aspect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Assigned Credential. - /// - internal static string AssignedCredential { - get { - return ResourceManager.GetString("AssignedCredential", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Audio Capture. - /// - internal static string AudioCapture { - get { - return ResourceManager.GetString("AudioCapture", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Server Authentication. - /// - internal static string AuthenticationLevel { - get { - return ResourceManager.GetString("AuthenticationLevel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Authentication mode. - /// - internal static string AuthenticationMode { - get { - return ResourceManager.GetString("AuthenticationMode", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An error occurred while trying to reconnect to RDP host '{0}'. - /// - internal static string AutomaticReconnectError { - get { - return ResourceManager.GetString("AutomaticReconnectError", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Automatic resize. - /// - internal static string AutomaticResize { - get { - return ResourceManager.GetString("AutomaticResize", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Auto save time in minutes (0 means disabled):. - /// - internal static string AutoSaveEvery { - get { - return ResourceManager.GetString("AutoSaveEvery", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Latest version. - /// - internal static string AvailableVersion { - get { - return ResourceManager.GetString("AvailableVersion", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Default Inheritance. - /// - internal static string ButtonDefaultInheritance { - get { - return ResourceManager.GetString("ButtonDefaultInheritance", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Default Properties. - /// - internal static string ButtonDefaultProperties { - get { - return ResourceManager.GetString("ButtonDefaultProperties", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Launch PuTTY. - /// - internal static string ButtonLaunchPutty { - get { - return ResourceManager.GetString("ButtonLaunchPutty", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Cache Bitmaps. - /// - internal static string CacheBitmaps { - get { - return ResourceManager.GetString("CacheBitmaps", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Cannot start Port Scan, incorrect IP format!. - /// - internal static string CannotStartPortScan { - get { - return ResourceManager.GetString("CannotStartPortScan", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Change. - /// - internal static string Change { - get { - return ResourceManager.GetString("Change", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An error occurred while trying to change the connection resolution to host '{0}'. - /// - internal static string ChangeConnectionResolutionError { - get { - return ResourceManager.GetString("ChangeConnectionResolutionError", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Changelog. - /// - internal static string Changelog { - get { - return ResourceManager.GetString("Changelog", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Check Again. - /// - internal static string CheckAgain { - get { - return ResourceManager.GetString("CheckAgain", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Automatically try to reconnect when disconnected from server (RDP && ICA only). - /// - internal static string CheckboxAutomaticReconnect { - get { - return ResourceManager.GetString("CheckboxAutomaticReconnect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do not show this message again.. - /// - internal static string CheckboxDoNotShowThisMessageAgain { - get { - return ResourceManager.GetString("CheckboxDoNotShowThisMessageAgain", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This proxy server requires authentication. - /// - internal static string CheckboxProxyAuthentication { - get { - return ResourceManager.GetString("CheckboxProxyAuthentication", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use custom PuTTY path:. - /// - internal static string CheckboxPuttyPath { - get { - return ResourceManager.GetString("CheckboxPuttyPath", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Reconnect when ready. - /// - internal static string CheckboxReconnectWhenReady { - get { - return ResourceManager.GetString("CheckboxReconnectWhenReady", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use a proxy server to connect. - /// - internal static string CheckboxUpdateUseProxy { - get { - return ResourceManager.GetString("CheckboxUpdateUseProxy", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Check failed!. - /// - internal static string CheckFailed { - get { - return ResourceManager.GetString("CheckFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Check for Updates. - /// - internal static string CheckForUpdates { - get { - return ResourceManager.GetString("CheckForUpdates", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Check for updates at startup. - /// - internal static string CheckForUpdatesOnStartup { - get { - return ResourceManager.GetString("CheckForUpdatesOnStartup", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Check now. - /// - internal static string CheckNow { - get { - return ResourceManager.GetString("CheckNow", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Check proper installation of components at startup. - /// - internal static string CheckProperInstallationOfComponentsAtStartup { - get { - return ResourceManager.GetString("CheckProperInstallationOfComponentsAtStartup", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Choose a path for the mRemoteNG log file. - /// - internal static string ChooseLogPath { - get { - return ResourceManager.GetString("ChooseLogPath", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Choose panel before connecting. - /// - internal static string ChoosePanelBeforeConnecting { - get { - return ResourceManager.GetString("ChoosePanelBeforeConnecting", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Choose path. - /// - internal static string ChoosePath { - get { - return ResourceManager.GetString("ChoosePath", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Clear search string. - /// - internal static string ClearSearchString { - get { - return ResourceManager.GetString("ClearSearchString", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Clipboard. - /// - internal static string Clipboard { - get { - return ResourceManager.GetString("Clipboard", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Closed Ports. - /// - internal static string ClosedPorts { - get { - return ResourceManager.GetString("ClosedPorts", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Close to notification area. - /// - internal static string CloseToSysTray { - get { - return ResourceManager.GetString("CloseToSysTray", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to When closing connections:. - /// - internal static string ClosingConnections { - get { - return ResourceManager.GetString("ClosingConnections", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Collapse all folders. - /// - internal static string CollapseAllFolders { - get { - return ResourceManager.GetString("CollapseAllFolders", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Colours. - /// - internal static string Colors { - get { - return ResourceManager.GetString("Colors", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to E&xit {0}. - /// - internal static string CommandExitProgram { - get { - return ResourceManager.GetString("CommandExitProgram", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't parse command line args!. - /// - internal static string CommandLineArgsCouldNotBeParsed { - get { - return ResourceManager.GetString("CommandLineArgsCouldNotBeParsed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Open a connection file. - /// - internal static string CommandOpenConnectionFile { - get { - return ResourceManager.GetString("CommandOpenConnectionFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to {0} has detected the Lenovo Auto Scroll Utility running on this system. This utility is known to cause problems with {0}. It is recommended that you disable or uninstall it.. - /// - internal static string CompatibilityLenovoAutoScrollUtilityDetected { - get { - return ResourceManager.GetString("CompatibilityLenovoAutoScrollUtilityDetected", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Compatibility problem detected. - /// - internal static string CompatibilityProblemDetected { - get { - return ResourceManager.GetString("CompatibilityProblemDetected", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Compression. - /// - internal static string Compression { - get { - return ResourceManager.GetString("Compression", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Config. - /// - internal static string Config { - get { - return ResourceManager.GetString("Config", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to btnIcon_Click failed!. - /// - internal static string ConfigPropertyGridButtonIconClickFailed { - get { - return ResourceManager.GetString("ConfigPropertyGridButtonIconClickFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to ShowHideGridItems failed!. - /// - internal static string ConfigPropertyGridHideItemsFailed { - get { - return ResourceManager.GetString("ConfigPropertyGridHideItemsFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to IconMenu_Click failed!. - /// - internal static string ConfigPropertyGridMenuClickFailed { - get { - return ResourceManager.GetString("ConfigPropertyGridMenuClickFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Property Grid object failed!. - /// - internal static string ConfigPropertyGridObjectFailed { - get { - return ResourceManager.GetString("ConfigPropertyGridObjectFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SetHostStatus failed!. - /// - internal static string ConfigPropertyGridSetHostStatusFailed { - get { - return ResourceManager.GetString("ConfigPropertyGridSetHostStatusFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to pGrid_PopertyValueChanged failed!. - /// - internal static string ConfigPropertyGridValueFailed { - get { - return ResourceManager.GetString("ConfigPropertyGridValueFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Config UI load failed!. - /// - internal static string ConfigUiLoadFailed { - get { - return ResourceManager.GetString("ConfigUiLoadFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Create a New Connection File. - /// - internal static string ConfigurationCreateNew { - get { - return ResourceManager.GetString("ConfigurationCreateNew", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use a Custom File Path. - /// - internal static string ConfigurationCustomPath { - get { - return ResourceManager.GetString("ConfigurationCustomPath", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Import an Existing File. - /// - internal static string ConfigurationImportFile { - get { - return ResourceManager.GetString("ConfigurationImportFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Are you sure you want to close all connections except for "{0}"?. - /// - internal static string ConfirmCloseConnectionOthersInstruction { - get { - return ResourceManager.GetString("ConfirmCloseConnectionOthersInstruction", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Are you sure you want to close the panel, "{0}"? Any connections that it contains will also be closed.. - /// - internal static string ConfirmCloseConnectionPanelMainInstruction { - get { - return ResourceManager.GetString("ConfirmCloseConnectionPanelMainInstruction", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Are you sure you want to delete the credential record, {0}?. - /// - internal static string ConfirmDeleteCredentialRecord { - get { - return ResourceManager.GetString("ConfirmDeleteCredentialRecord", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Are you sure you want to delete the external tool, "{0}"?. - /// - internal static string ConfirmDeleteExternalTool { - get { - return ResourceManager.GetString("ConfirmDeleteExternalTool", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Are you sure you want to delete the {0} selected external tools?. - /// - internal static string ConfirmDeleteExternalToolMultiple { - get { - return ResourceManager.GetString("ConfirmDeleteExternalToolMultiple", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Are you sure you want to delete the connection, "{0}"?. - /// - internal static string ConfirmDeleteNodeConnection { - get { - return ResourceManager.GetString("ConfirmDeleteNodeConnection", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Are you sure you want to delete the empty folder, "{0}"?. - /// - internal static string ConfirmDeleteNodeFolder { - get { - return ResourceManager.GetString("ConfirmDeleteNodeFolder", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Are you sure you want to delete the folder, "{0}"? Any folders or connections that it contains will also be deleted.. - /// - internal static string ConfirmDeleteNodeFolderNotEmpty { - get { - return ResourceManager.GetString("ConfirmDeleteNodeFolderNotEmpty", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do you want to close all open connections?. - /// - internal static string ConfirmExitMainInstruction { - get { - return ResourceManager.GetString("ConfirmExitMainInstruction", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Are you sure you want to reset the panels to their default layout?. - /// - internal static string ConfirmResetLayout { - get { - return ResourceManager.GetString("ConfirmResetLayout", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connect. - /// - internal static string Connect { - get { - return ResourceManager.GetString("Connect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connect in fullscreen mode. - /// - internal static string ConnectInFullscreen { - get { - return ResourceManager.GetString("ConnectInFullscreen", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connecting.... - /// - internal static string Connecting { - get { - return ResourceManager.GetString("Connecting", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connect in View Only mode. - /// - internal static string ConnectInViewOnlyMode { - get { - return ResourceManager.GetString("ConnectInViewOnlyMode", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connection. - /// - internal static string Connection { - get { - return ResourceManager.GetString("Connection", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Protocol Event Connected. - /// - internal static string ConnectionEventConnected { - get { - return ResourceManager.GetString("ConnectionEventConnected", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connection to "{0}" via "{1}" established by user "{2}" (Description: "{3}"; User Field: "{4}"). - /// - internal static string ConnectionEventConnectedDetail { - get { - return ResourceManager.GetString("ConnectionEventConnectedDetail", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to A connection protocol error occurred. Host: "{1}"; Error code: "{2}"; Error Description: "{0}". - /// - internal static string ConnectionEventErrorOccured { - get { - return ResourceManager.GetString("ConnectionEventErrorOccured", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connection failed!. - /// - internal static string ConnectionFailed { - get { - return ResourceManager.GetString("ConnectionFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The connection file could not be found.. - /// - internal static string ConnectionFileNotFound { - get { - return ResourceManager.GetString("ConnectionFileNotFound", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Opening connection failed!. - /// - internal static string ConnectionOpenFailed { - get { - return ResourceManager.GetString("ConnectionOpenFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Cannot open connection: No hostname specified!. - /// - internal static string ConnectionOpenFailedNoHostname { - get { - return ResourceManager.GetString("ConnectionOpenFailedNoHostname", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connection Panels. - /// - internal static string ConnectionPanels { - get { - return ResourceManager.GetString("ConnectionPanels", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connections. - /// - internal static string Connections { - get { - return ResourceManager.GetString("Connections", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Daily. - /// - internal static string ConnectionsBackupFrequencyDaily { - get { - return ResourceManager.GetString("ConnectionsBackupFrequencyDaily", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Never backup connections. - /// - internal static string ConnectionsBackupFrequencyNever { - get { - return ResourceManager.GetString("ConnectionsBackupFrequencyNever", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to On Edit. - /// - internal static string ConnectionsBackupFrequencyOnEdit { - get { - return ResourceManager.GetString("ConnectionsBackupFrequencyOnEdit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to On Exit. - /// - internal static string ConnectionsBackupFrequencyOnExit { - get { - return ResourceManager.GetString("ConnectionsBackupFrequencyOnExit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Weekly. - /// - internal static string ConnectionsBackupFrequencyWeekly { - get { - return ResourceManager.GetString("ConnectionsBackupFrequencyWeekly", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't set default port!. - /// - internal static string ConnectionSetDefaultPortFailed { - get { - return ResourceManager.GetString("ConnectionSetDefaultPortFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't create backup of connections file!. - /// - internal static string ConnectionsFileBackupFailed { - get { - return ResourceManager.GetString("ConnectionsFileBackupFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connections file "{0}" could not be loaded!. - /// - internal static string ConnectionsFileCouldNotBeLoaded { - get { - return ResourceManager.GetString("ConnectionsFileCouldNotBeLoaded", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connections file "{0}" could not be loaded! - ///Starting with new connections file.. - /// - internal static string ConnectionsFileCouldNotBeLoadedNew { - get { - return ResourceManager.GetString("ConnectionsFileCouldNotBeLoadedNew", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't save connections file as "{0}"!. - /// - internal static string ConnectionsFileCouldNotSaveAs { - get { - return ResourceManager.GetString("ConnectionsFileCouldNotSaveAs", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connection successful. - /// - internal static string ConnectionSuccessful { - get { - return ResourceManager.GetString("ConnectionSuccessful", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connect without credentials. - /// - internal static string ConnectNoCredentials { - get { - return ResourceManager.GetString("ConnectNoCredentials", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connect to console session. - /// - internal static string ConnectToConsoleSession { - get { - return ResourceManager.GetString("ConnectToConsoleSession", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connect (with options). - /// - internal static string ConnectWithOptions { - get { - return ResourceManager.GetString("ConnectWithOptions", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connection to {0} via {1} closed by user {2}.. - /// - internal static string ConnenctionClosedByUser { - get { - return ResourceManager.GetString("ConnenctionClosedByUser", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connection Event Closed. - /// - internal static string ConnenctionCloseEvent { - get { - return ResourceManager.GetString("ConnenctionCloseEvent", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connection Event Closed failed!. - /// - internal static string ConnenctionCloseEventFailed { - get { - return ResourceManager.GetString("ConnenctionCloseEventFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Copy. - /// - internal static string Copy { - get { - return ResourceManager.GetString("Copy", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Copy All. - /// - internal static string CopyAll { - get { - return ResourceManager.GetString("CopyAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Copy Hostname. - /// - internal static string CopyHostname { - get { - return ResourceManager.GetString("CopyHostname", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't create new connections file!. - /// - internal static string CouldNotCreateNewConnectionsFile { - get { - return ResourceManager.GetString("CouldNotCreateNewConnectionsFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Could not find external tool with name "{0}". - /// - internal static string CouldNotFindExternalTool { - get { - return ResourceManager.GetString("CouldNotFindExternalTool", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Could not find ToolStrip control in FilteredPropertyGrid.. - /// - internal static string CouldNotFindToolStripInFilteredPropertyGrid { - get { - return ResourceManager.GetString("CouldNotFindToolStripInFilteredPropertyGrid", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Create an empty panel when mRemoteNG starts. - /// - internal static string CreateEmptyPanelOnStartUp { - get { - return ResourceManager.GetString("CreateEmptyPanelOnStartUp", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Credentials. - /// - internal static string Credentials { - get { - return ResourceManager.GetString("Credentials", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Credential not available. - /// - internal static string CredentialUnavailable { - get { - return ResourceManager.GetString("CredentialUnavailable", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Credits. - /// - internal static string Credits { - get { - return ResourceManager.GetString("Credits", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Ctrl-Alt-Del. - /// - internal static string CtrlAltDel { - get { - return ResourceManager.GetString("CtrlAltDel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Ctrl-Esc. - /// - internal static string CtrlEsc { - get { - return ResourceManager.GetString("CtrlEsc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Daily. - /// - internal static string Daily { - get { - return ResourceManager.GetString("Daily", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Database:. - /// - internal static string Database { - get { - return ResourceManager.GetString("Database", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Database '{0}' not available.. - /// - internal static string DatabaseNotAvailable { - get { - return ResourceManager.GetString("DatabaseNotAvailable", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Debug. - /// - internal static string Debug { - get { - return ResourceManager.GetString("Debug", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Delete. - /// - internal static string Delete { - get { - return ResourceManager.GetString("Delete", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Delete All. - /// - internal static string DeleteAll { - get { - return ResourceManager.GetString("DeleteAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Delete External Tool.... - /// - internal static string DeleteExternalTool { - get { - return ResourceManager.GetString("DeleteExternalTool", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Description. - /// - internal static string Description { - get { - return ResourceManager.GetString("Description", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Detect. - /// - internal static string Detect { - get { - return ResourceManager.GetString("Detect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Disable Cursor blinking. - /// - internal static string DisableCursorBlinking { - get { - return ResourceManager.GetString("DisableCursorBlinking", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Disable Cursor Shadow. - /// - internal static string DisableCursorShadow { - get { - return ResourceManager.GetString("DisableCursorShadow", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Disable Full Window drag. - /// - internal static string DisableFullWindowDrag { - get { - return ResourceManager.GetString("DisableFullWindowDrag", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Disable Menu Animations. - /// - internal static string DisableMenuAnimations { - get { - return ResourceManager.GetString("DisableMenuAnimations", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Disconnect. - /// - internal static string Disconnect { - get { - return ResourceManager.GetString("Disconnect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Disconnect All But This. - /// - internal static string DisconnectOthers { - get { - return ResourceManager.GetString("DisconnectOthers", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Disconnect Tabs To The Right. - /// - internal static string DisconnectOthersRight { - get { - return ResourceManager.GetString("DisconnectOthersRight", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Disk Drives. - /// - internal static string DiskDrives { - get { - return ResourceManager.GetString("DiskDrives", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Display. - /// - internal static string Display { - get { - return ResourceManager.GetString("Display", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Display Name. - /// - internal static string DisplayName { - get { - return ResourceManager.GetString("DisplayName", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Display Themes. - /// - internal static string DisplayThemes { - get { - return ResourceManager.GetString("DisplayThemes", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Display Wallpaper. - /// - internal static string DisplayWallpaper { - get { - return ResourceManager.GetString("DisplayWallpaper", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Domain. - /// - internal static string Domain { - get { - return ResourceManager.GetString("Domain", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Donate. - /// - internal static string Donate { - get { - return ResourceManager.GetString("Donate", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do not play. - /// - internal static string DoNotPlay { - get { - return ResourceManager.GetString("DoNotPlay", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do not trim spaces from usernames. - /// - internal static string DoNotTrimUsername { - get { - return ResourceManager.GetString("DoNotTrimUsername", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Don't connect to console session. - /// - internal static string DontConnectToConsoleSession { - get { - return ResourceManager.GetString("DontConnectToConsoleSession", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Don't connect if authentication fails. - /// - internal static string DontConnectWhenAuthFails { - get { - return ResourceManager.GetString("DontConnectWhenAuthFails", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Double click on tab closes it. - /// - internal static string DoubleClickTabClosesIt { - get { - return ResourceManager.GetString("DoubleClickTabClosesIt", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Download. - /// - internal static string Download { - get { - return ResourceManager.GetString("Download", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Download and Install. - /// - internal static string DownloadAndInstall { - get { - return ResourceManager.GetString("DownloadAndInstall", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Duplicate. - /// - internal static string Duplicate { - get { - return ResourceManager.GetString("Duplicate", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Duplicate Tab. - /// - internal static string DuplicateTab { - get { - return ResourceManager.GetString("DuplicateTab", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Dynamic. - /// - internal static string Dynamic { - get { - return ResourceManager.GetString("Dynamic", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do you want to continue with no password?. - /// - internal static string EmptyPasswordContinue { - get { - return ResourceManager.GetString("EmptyPasswordContinue", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to For empty Username, Password or Domain fields use:. - /// - internal static string EmptyUsernamePasswordDomainFields { - get { - return ResourceManager.GetString("EmptyUsernamePasswordDomainFields", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Desktop Composition. - /// - internal static string EnableDesktopComposition { - get { - return ResourceManager.GetString("EnableDesktopComposition", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Encoding. - /// - internal static string Encoding { - get { - return ResourceManager.GetString("Encoding", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Completely encrypt connection file. - /// - internal static string EncryptCompleteConnectionFile { - get { - return ResourceManager.GetString("EncryptCompleteConnectionFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Block Cipher Mode. - /// - internal static string EncryptionBlockCipherMode { - get { - return ResourceManager.GetString("EncryptionBlockCipherMode", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Encryption Engine. - /// - internal static string EncryptionEngine { - get { - return ResourceManager.GetString("EncryptionEngine", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Key Derivation Function Iterations. - /// - internal static string EncryptionKeyDerivationIterations { - get { - return ResourceManager.GetString("EncryptionKeyDerivationIterations", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Encryption Test. - /// - internal static string EncryptionTest { - get { - return ResourceManager.GetString("EncryptionTest", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Encrypting {0} entries using {1}/{2} and {3} iterations took {4} seconds.. - /// - internal static string EncryptionTestResultMessage { - get { - return ResourceManager.GetString("EncryptionTestResultMessage", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Environment. - /// - internal static string Environment { - get { - return ResourceManager.GetString("Environment", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to AddExternalToolsToToolBar (frmMain) failed. {0}. - /// - internal static string ErrorAddExternalToolsToToolBarFailed { - get { - return ResourceManager.GetString("ErrorAddExternalToolsToToolBarFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to AddFolder (UI.Window.ConnectionTreeWindow) failed. {0}. - /// - internal static string ErrorAddFolderFailed { - get { - return ResourceManager.GetString("ErrorAddFolderFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The database version {0} is not compatible with this version of {1}.. - /// - internal static string ErrorBadDatabaseVersion { - get { - return ResourceManager.GetString("ErrorBadDatabaseVersion", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The connection list could not be saved.. - /// - internal static string ErrorConnectionListSaveFailed { - get { - return ResourceManager.GetString("ErrorConnectionListSaveFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to PuTTY could not be launched.. - /// - internal static string ErrorCouldNotLaunchPutty { - get { - return ResourceManager.GetString("ErrorCouldNotLaunchPutty", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Decryption failed. {0}. - /// - internal static string ErrorDecryptionFailed { - get { - return ResourceManager.GetString("ErrorDecryptionFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Encryption failed. {0}. - /// - internal static string ErrorEncryptionFailed { - get { - return ResourceManager.GetString("ErrorEncryptionFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The Windows security setting, "System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing", is enabled. - /// - ///See the Microsoft Support article at http://support.microsoft.com/kb/811833 for more information. - /// - ///{0} is not fully FIPS compliant. Click OK to proceed at your own discretion, or Cancel to Exit.. - /// - internal static string ErrorFipsPolicyIncompatible { - get { - return ResourceManager.GetString("ErrorFipsPolicyIncompatible", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Errors. - /// - internal static string Errors { - get { - return ResourceManager.GetString("Errors", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The startup connection file could not be loaded.{0}{0}{2}{0}{3}{0}{0}In order to prevent data loss, {1} will now exit.. - /// - internal static string ErrorStartupConnectionFileLoad { - get { - return ResourceManager.GetString("ErrorStartupConnectionFileLoad", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VerifyDatabaseVersion (Config.Connections.Save) failed. {0}. - /// - internal static string ErrorVerifyDatabaseVersionFailed { - get { - return ResourceManager.GetString("ErrorVerifyDatabaseVersionFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This exception will force mRemoteNG to close. - /// - internal static string ExceptionForcesmRemoteNGToClose { - get { - return ResourceManager.GetString("ExceptionForcesmRemoteNGToClose", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Exception Message. - /// - internal static string ExceptionMessage { - get { - return ResourceManager.GetString("ExceptionMessage", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Exit. - /// - internal static string Exit { - get { - return ResourceManager.GetString("Exit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Expand all folders. - /// - internal static string ExpandAllFolders { - get { - return ResourceManager.GetString("ExpandAllFolders", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Experimental. - /// - internal static string Experimental { - get { - return ResourceManager.GetString("Experimental", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Export. - /// - internal static string Export { - get { - return ResourceManager.GetString("Export", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Export everything. - /// - internal static string ExportEverything { - get { - return ResourceManager.GetString("ExportEverything", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Export File. - /// - internal static string ExportFile { - get { - return ResourceManager.GetString("ExportFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Export Items. - /// - internal static string ExportItems { - get { - return ResourceManager.GetString("ExportItems", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Export Properties. - /// - internal static string ExportProperties { - get { - return ResourceManager.GetString("ExportProperties", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Export the currently selected connection. - /// - internal static string ExportSelectedConnection { - get { - return ResourceManager.GetString("ExportSelectedConnection", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Export the currently selected folder. - /// - internal static string ExportSelectedFolder { - get { - return ResourceManager.GetString("ExportSelectedFolder", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to External Tool. - /// - internal static string ExternalTool { - get { - return ResourceManager.GetString("ExternalTool", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to External Tool After. - /// - internal static string ExternalToolAfter { - get { - return ResourceManager.GetString("ExternalToolAfter", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to External Tool Before. - /// - internal static string ExternalToolBefore { - get { - return ResourceManager.GetString("ExternalToolBefore", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to New External Tool. - /// - internal static string ExternalToolDefaultName { - get { - return ResourceManager.GetString("ExternalToolDefaultName", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to External Tool Properties. - /// - internal static string ExternalToolProperties { - get { - return ResourceManager.GetString("ExternalToolProperties", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to External Tools Toolbar. - /// - internal static string ExternalToolsToolbar { - get { - return ResourceManager.GetString("ExternalToolsToolbar", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Favorite. - /// - internal static string Favorite { - get { - return ResourceManager.GetString("Favorite", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Favorites. - /// - internal static string Favorites { - get { - return ResourceManager.GetString("Favorites", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to File &Format:. - /// - internal static string FileFormat { - get { - return ResourceManager.GetString("FileFormat", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Filename. - /// - internal static string Filename { - get { - return ResourceManager.GetString("Filename", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Files. - /// - internal static string Files { - get { - return ResourceManager.GetString("Files", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to All Files (*.*). - /// - internal static string FilterAll { - get { - return ResourceManager.GetString("FilterAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to All importable files. - /// - internal static string FilterAllImportable { - get { - return ResourceManager.GetString("FilterAllImportable", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Application Files (*.exe). - /// - internal static string FilterApplication { - get { - return ResourceManager.GetString("FilterApplication", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemote CSV Files (*.csv). - /// - internal static string FiltermRemoteCSV { - get { - return ResourceManager.GetString("FiltermRemoteCSV", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemote XML Files (*.xml). - /// - internal static string FiltermRemoteXML { - get { - return ResourceManager.GetString("FiltermRemoteXML", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to PuTTY Connection Manager files. - /// - internal static string FilterPuttyConnectionManager { - get { - return ResourceManager.GetString("FilterPuttyConnectionManager", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Remote Desktop Connection Manager files (*.rdg). - /// - internal static string FilterRdgFiles { - get { - return ResourceManager.GetString("FilterRdgFiles", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Files (*.rdp). - /// - internal static string FilterRDP { - get { - return ResourceManager.GetString("FilterRDP", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Filter search matches in connection tree. - /// - internal static string FilterSearchMatchesInConnectionTree { - get { - return ResourceManager.GetString("FilterSearchMatchesInConnectionTree", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to First IP. - /// - internal static string FirstIp { - get { - return ResourceManager.GetString("FirstIp", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to First Port. - /// - internal static string FirstPort { - get { - return ResourceManager.GetString("FirstPort", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Fit To Panel. - /// - internal static string FitToPanel { - get { - return ResourceManager.GetString("FitToPanel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Font Smoothing. - /// - internal static string FontSmoothing { - get { - return ResourceManager.GetString("FontSmoothing", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Inherit {0}. - /// - internal static string FormatInherit { - get { - return ResourceManager.GetString("FormatInherit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Description of inherited property: {0}. - /// - internal static string FormatInheritDescription { - get { - return ResourceManager.GetString("FormatInheritDescription", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Free. - /// - internal static string Free { - get { - return ResourceManager.GetString("Free", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Fullscreen. - /// - internal static string Fullscreen { - get { - return ResourceManager.GetString("Fullscreen", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Gateway. - /// - internal static string Gateway { - get { - return ResourceManager.GetString("Gateway", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to General. - /// - internal static string General { - get { - return ResourceManager.GetString("General", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An error occured while loading the connection entry for "{0}" from "{1}". {2}. - /// - internal static string GetConnectionInfoFromXmlFailed { - get { - return ResourceManager.GetString("GetConnectionInfoFromXmlFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Automatic Reconnect. - /// - internal static string GroupboxAutomaticReconnect { - get { - return ResourceManager.GetString("GroupboxAutomaticReconnect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemoteNG Help. - /// - internal static string HelpContents { - get { - return ResourceManager.GetString("HelpContents", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to High. - /// - internal static string High { - get { - return ResourceManager.GetString("High", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Host. - /// - internal static string Host { - get { - return ResourceManager.GetString("Host", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Hostname:. - /// - internal static string Hostname { - get { - return ResourceManager.GetString("Hostname", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Hostname/IP. - /// - internal static string HostnameIp { - get { - return ResourceManager.GetString("HostnameIp", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to HTTP. - /// - internal static string Http { - get { - return ResourceManager.GetString("Http", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Edge Chromium. - /// - internal static string HttpCEF { - get { - return ResourceManager.GetString("HttpCEF", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to HTTP Connect Failed!. - /// - internal static string HttpConnectFailed { - get { - return ResourceManager.GetString("HttpConnectFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't create new HTTP Connection!. - /// - internal static string HttpConnectionFailed { - get { - return ResourceManager.GetString("HttpConnectionFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Changing HTTP Document Tile Failed!. - /// - internal static string HttpDocumentTileChangeFailed { - get { - return ResourceManager.GetString("HttpDocumentTileChangeFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Failed to contruct the URL to load. - /// - internal static string HttpFailedUrlBuild { - get { - return ResourceManager.GetString("HttpFailedUrlBuild", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Internet Explorer. - /// - internal static string HttpInternetExplorer { - get { - return ResourceManager.GetString("HttpInternetExplorer", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to HTTPS. - /// - internal static string Https { - get { - return ResourceManager.GetString("Https", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Set HTTP Props failed!. - /// - internal static string HttpSetPropsFailed { - get { - return ResourceManager.GetString("HttpSetPropsFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Icon. - /// - internal static string Icon { - get { - return ResourceManager.GetString("Icon", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Identify quick connect tabs by adding the prefix "Quick:". - /// - internal static string IdentifyQuickConnectTabs { - get { - return ResourceManager.GetString("IdentifyQuickConnectTabs", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Import from Active Directory. - /// - internal static string ImportAD { - get { - return ResourceManager.GetString("ImportAD", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An error occurred while importing the file "{0}".. - /// - internal static string ImportFileFailedContent { - get { - return ResourceManager.GetString("ImportFileFailedContent", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Import from &File.... - /// - internal static string ImportFromFile { - get { - return ResourceManager.GetString("ImportFromFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Import from Port Scan. - /// - internal static string ImportPortScan { - get { - return ResourceManager.GetString("ImportPortScan", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Import sub OUs. - /// - internal static string ImportSubOUs { - get { - return ResourceManager.GetString("ImportSubOUs", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Informations. - /// - internal static string Informations { - get { - return ResourceManager.GetString("Informations", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Inheritance. - /// - internal static string Inheritance { - get { - return ResourceManager.GetString("Inheritance", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Dispose of Int App process failed!. - /// - internal static string IntAppDisposeFailed { - get { - return ResourceManager.GetString("IntAppDisposeFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Int App Focus Failed!. - /// - internal static string IntAppFocusFailed { - get { - return ResourceManager.GetString("IntAppFocusFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Int App Handle: {0}. - /// - internal static string IntAppHandle { - get { - return ResourceManager.GetString("IntAppHandle", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Killing Int App Process failed!. - /// - internal static string IntAppKillFailed { - get { - return ResourceManager.GetString("IntAppKillFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Int App Resize failed!. - /// - internal static string IntAppResizeFailed { - get { - return ResourceManager.GetString("IntAppResizeFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to --- IntApp Stuff ---. - /// - internal static string IntAppStuff { - get { - return ResourceManager.GetString("IntAppStuff", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Int App Title: {0}. - /// - internal static string IntAppTitle { - get { - return ResourceManager.GetString("IntAppTitle", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to (Automatically Detect). - /// - internal static string LanguageDefault { - get { - return ResourceManager.GetString("LanguageDefault", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to {0} must be restarted before changes to the language will take effect.. - /// - internal static string LanguageRestartRequired { - get { - return ResourceManager.GetString("LanguageRestartRequired", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Language. - /// - internal static string LanguageString { - get { - return ResourceManager.GetString("LanguageString", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Last IP. - /// - internal static string LastIp { - get { - return ResourceManager.GetString("LastIp", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Last Port. - /// - internal static string LastPort { - get { - return ResourceManager.GetString("LastPort", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Launch External Tool. - /// - internal static string LaunchExternalTool { - get { - return ResourceManager.GetString("LaunchExternalTool", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to License. - /// - internal static string License { - get { - return ResourceManager.GetString("License", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Load Balance Info. - /// - internal static string LoadBalanceInfo { - get { - return ResourceManager.GetString("LoadBalanceInfo", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use UTF8 encoding for RDP "Load Balance Info" property. - /// - internal static string LoadBalanceInfoUseUtf8 { - get { - return ResourceManager.GetString("LoadBalanceInfoUseUtf8", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Load from SQL failed. - /// - internal static string LoadFromSqlFailed { - get { - return ResourceManager.GetString("LoadFromSqlFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The connection information could not be loaded from the SQL server.. - /// - internal static string LoadFromSqlFailedContent { - get { - return ResourceManager.GetString("LoadFromSqlFailedContent", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Load From XML failed!. - /// - internal static string LoadFromXmlFailed { - get { - return ResourceManager.GetString("LoadFromXmlFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Local file. - /// - internal static string LocalFile { - get { - return ResourceManager.GetString("LocalFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Local file does not exist!. - /// - internal static string LocalFileDoesNotExist { - get { - return ResourceManager.GetString("LocalFileDoesNotExist", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Lock toolbar positions. - /// - internal static string LockToolbars { - get { - return ResourceManager.GetString("LockToolbars", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Log file path. - /// - internal static string LogFilePath { - get { - return ResourceManager.GetString("LogFilePath", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Logging. - /// - internal static string Logging { - get { - return ResourceManager.GetString("Logging", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Login failed for user '{0}'.. - /// - internal static string LoginFailedForUser { - get { - return ResourceManager.GetString("LoginFailedForUser", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Log these message types. - /// - internal static string LogTheseMessageTypes { - get { - return ResourceManager.GetString("LogTheseMessageTypes", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Log to application directory. - /// - internal static string LogToAppDir { - get { - return ResourceManager.GetString("LogToAppDir", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to MAC Address. - /// - internal static string MacAddress { - get { - return ResourceManager.GetString("MacAddress", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Medium. - /// - internal static string Medium { - get { - return ResourceManager.GetString("Medium", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Message. - /// - internal static string Message { - get { - return ResourceManager.GetString("Message", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Minimize to notification area. - /// - internal static string MinimizeToSysTray { - get { - return ResourceManager.GetString("MinimizeToSysTray", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Minutes to Idle. - /// - internal static string MinutesToIdleTimeout { - get { - return ResourceManager.GetString("MinutesToIdleTimeout", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Miscellaneous. - /// - internal static string Miscellaneous { - get { - return ResourceManager.GetString("Miscellaneous", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Monthly. - /// - internal static string Monthly { - get { - return ResourceManager.GetString("Monthly", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Move down. - /// - internal static string MoveDown { - get { - return ResourceManager.GetString("MoveDown", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Move up. - /// - internal static string MoveUp { - get { - return ResourceManager.GetString("MoveUp", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemoteNG CSV. - /// - internal static string MremoteNgCsv { - get { - return ResourceManager.GetString("MremoteNgCsv", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemoteNG Unhandled Exception. - /// - internal static string mRemoteNGUnhandledException { - get { - return ResourceManager.GetString("mRemoteNGUnhandledException", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemoteNG XML. - /// - internal static string MremoteNgXml { - get { - return ResourceManager.GetString("MremoteNgXml", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Multi SSH:. - /// - internal static string MultiSsh { - get { - return ResourceManager.GetString("MultiSsh", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Multi SSH toolbar. - /// - internal static string MultiSshToolbar { - get { - return ResourceManager.GetString("MultiSshToolbar", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Press ENTER to send. Ctrl+C is sent immediately.. - /// - internal static string MultiSshToolTip { - get { - return ResourceManager.GetString("MultiSshToolTip", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Must Be Between 0 and 255. - /// - internal static string MustBeBetween0And255 { - get { - return ResourceManager.GetString("MustBeBetween0And255", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to My current credentials (Windows logon information). - /// - internal static string MyCurrentWindowsCreds { - get { - return ResourceManager.GetString("MyCurrentWindowsCreds", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Name. - /// - internal static string Name { - get { - return ResourceManager.GetString("Name", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Never. - /// - internal static string Never { - get { - return ResourceManager.GetString("Never", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to New Connection. - /// - internal static string NewConnection { - get { - return ResourceManager.GetString("NewConnection", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to New Connection File. - /// - internal static string NewConnectionFile { - get { - return ResourceManager.GetString("NewConnectionFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to New External Tool. - /// - internal static string NewExternalTool { - get { - return ResourceManager.GetString("NewExternalTool", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to New Folder. - /// - internal static string NewFolder { - get { - return ResourceManager.GetString("NewFolder", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to New Panel. - /// - internal static string NewPanel { - get { - return ResourceManager.GetString("NewPanel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to New Title. - /// - internal static string NewTitle { - get { - return ResourceManager.GetString("NewTitle", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to No. - /// - internal static string No { - get { - return ResourceManager.GetString("No", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to No сompression. - /// - internal static string NoCompression { - get { - return ResourceManager.GetString("NoCompression", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This node is already in this folder.. - /// - internal static string NodeAlreadyInFolder { - get { - return ResourceManager.GetString("NodeAlreadyInFolder", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Cannot drag node onto itself.. - /// - internal static string NodeCannotDragOnSelf { - get { - return ResourceManager.GetString("NodeCannotDragOnSelf", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Cannot drag parent node onto child.. - /// - internal static string NodeCannotDragParentOnChild { - get { - return ResourceManager.GetString("NodeCannotDragParentOnChild", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This node is not draggable.. - /// - internal static string NodeNotDraggable { - get { - return ResourceManager.GetString("NodeNotDraggable", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to No ext. app specified.. - /// - internal static string NoExtAppDefined { - get { - return ResourceManager.GetString("NoExtAppDefined", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to None. - /// - internal static string None { - get { - return ResourceManager.GetString("None", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Normal. - /// - internal static string Normal { - get { - return ResourceManager.GetString("Normal", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to No SmartSize. - /// - internal static string NoSmartSize { - get { - return ResourceManager.GetString("NoSmartSize", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Notifications. - /// - internal static string Notifications { - get { - return ResourceManager.GetString("Notifications", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to No update available. - /// - internal static string NoUpdateAvailable { - get { - return ResourceManager.GetString("NoUpdateAvailable", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to You are trying to load a connection file that was created using an very early version of mRemote, this could result in an runtime error. - ///If you run into such an error, please create a new connection file!. - /// - internal static string OldConffile { - get { - return ResourceManager.GetString("OldConffile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Open a different file. - /// - internal static string OpenADifferentFile { - get { - return ResourceManager.GetString("OpenADifferentFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Open Connection File.... - /// - internal static string OpenConnectionFile { - get { - return ResourceManager.GetString("OpenConnectionFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Open file. - /// - internal static string OpenFile { - get { - return ResourceManager.GetString("OpenFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Opening Command. - /// - internal static string OpeningCommand { - get { - return ResourceManager.GetString("OpeningCommand", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Open new tab to the right of the currently selected tab. - /// - internal static string OpenNewTabRight { - get { - return ResourceManager.GetString("OpenNewTabRight", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Open Ports. - /// - internal static string OpenPorts { - get { - return ResourceManager.GetString("OpenPorts", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Options. - /// - internal static string Options { - get { - return ResourceManager.GetString("Options", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemoteNG Options. - /// - internal static string OptionsPageTitle { - get { - return ResourceManager.GetString("OptionsPageTitle", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Testing.... - /// - internal static string OptionsProxyTesting { - get { - return ResourceManager.GetString("OptionsProxyTesting", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Warning: Restart is required to commit any theme configuration change.. - /// - internal static string OptionsThemeChangeWarning { - get { - return ResourceManager.GetString("OptionsThemeChangeWarning", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do you really want to delete the theme?. - /// - internal static string OptionsThemeDeleteConfirmation { - get { - return ResourceManager.GetString("OptionsThemeDeleteConfirmation", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to New theme name. - /// - internal static string OptionsThemeNewThemeCaption { - get { - return ResourceManager.GetString("OptionsThemeNewThemeCaption", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Cannot create theme, name already present or special characters in the name. - /// - internal static string OptionsThemeNewThemeError { - get { - return ResourceManager.GetString("OptionsThemeNewThemeError", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Type the new theme name. - /// - internal static string OptionsThemeNewThemeText { - get { - return ResourceManager.GetString("OptionsThemeNewThemeText", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Out Of Range. - /// - internal static string OutOfRange { - get { - return ResourceManager.GetString("OutOfRange", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Panel. - /// - internal static string Panel { - get { - return ResourceManager.GetString("Panel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Panel Handle: {0}. - /// - internal static string PanelHandle { - get { - return ResourceManager.GetString("PanelHandle", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Panel Name. - /// - internal static string PanelName { - get { - return ResourceManager.GetString("PanelName", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Password. - /// - internal static string Password { - get { - return ResourceManager.GetString("Password", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Password must contain at least {0} of the following characters: {1}. - /// - internal static string PasswordConstainsSpecialCharactersConstraintHint { - get { - return ResourceManager.GetString("PasswordConstainsSpecialCharactersConstraintHint", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Password must contain at least {0} lower case character(s). - /// - internal static string PasswordContainsLowerCaseConstraintHint { - get { - return ResourceManager.GetString("PasswordContainsLowerCaseConstraintHint", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Password must contain at least {0} number(s). - /// - internal static string PasswordContainsNumbersConstraint { - get { - return ResourceManager.GetString("PasswordContainsNumbersConstraint", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Password must contain at least {0} upper case character(s). - /// - internal static string PasswordContainsUpperCaseConstraintHint { - get { - return ResourceManager.GetString("PasswordContainsUpperCaseConstraintHint", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Password length must be between {0} and {1}. - /// - internal static string PasswordLengthConstraintHint { - get { - return ResourceManager.GetString("PasswordLengthConstraintHint", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Password protect. - /// - internal static string PasswordProtect { - get { - return ResourceManager.GetString("PasswordProtect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Both passwords must match.. - /// - internal static string PasswordStatusMustMatch { - get { - return ResourceManager.GetString("PasswordStatusMustMatch", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The password must be at least 3 characters long.. - /// - internal static string PasswordStatusTooShort { - get { - return ResourceManager.GetString("PasswordStatusTooShort", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Place search bar above connection tree. - /// - internal static string PlaceSearchBarAboveConnectionTree { - get { - return ResourceManager.GetString("PlaceSearchBarAboveConnectionTree", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Please fill all fields. - /// - internal static string PleaseFillAllFields { - get { - return ResourceManager.GetString("PleaseFillAllFields", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Popups. - /// - internal static string Popups { - get { - return ResourceManager.GetString("Popups", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Port. - /// - internal static string Port { - get { - return ResourceManager.GetString("Port", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Portable Edition. - /// - internal static string PortableEdition { - get { - return ResourceManager.GetString("PortableEdition", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Ports. - /// - internal static string Ports { - get { - return ResourceManager.GetString("Ports", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Port Scan. - /// - internal static string PortScan { - get { - return ResourceManager.GetString("PortScan", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Port scan complete.. - /// - internal static string PortScanComplete { - get { - return ResourceManager.GetString("PortScanComplete", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't load PortScan panel!. - /// - internal static string PortScanCouldNotLoadPanel { - get { - return ResourceManager.GetString("PortScanCouldNotLoadPanel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to PowerShell. - /// - internal static string PowerShell { - get { - return ResourceManager.GetString("PowerShell", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Printers. - /// - internal static string Printers { - get { - return ResourceManager.GetString("Printers", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Properties. - /// - internal static string Properties { - get { - return ResourceManager.GetString("Properties", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Toggle all inheritance options.. - /// - internal static string PropertyDescriptionAll { - get { - return ResourceManager.GetString("PropertyDescriptionAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select which authentication level this connection should use.. - /// - internal static string PropertyDescriptionAuthenticationLevel { - get { - return ResourceManager.GetString("PropertyDescriptionAuthenticationLevel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select how you want to authenticate against the VNC server.. - /// - internal static string PropertyDescriptionAuthenticationMode { - get { - return ResourceManager.GetString("PropertyDescriptionAuthenticationMode", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether to automatically resize the connection when the window is resized or when fullscreen mode is toggled. Requires RDC 8.0 or higher.. - /// - internal static string PropertyDescriptionAutomaticResize { - get { - return ResourceManager.GetString("PropertyDescriptionAutomaticResize", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether to use bitmap caching or not.. - /// - internal static string PropertyDescriptionCacheBitmaps { - get { - return ResourceManager.GetString("PropertyDescriptionCacheBitmaps", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select the colour quality to be used.. - /// - internal static string PropertyDescriptionColors { - get { - return ResourceManager.GetString("PropertyDescriptionColors", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select the compression value to be used.. - /// - internal static string PropertyDescriptionCompression { - get { - return ResourceManager.GetString("PropertyDescriptionCompression", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Put your notes or a description for the host here.. - /// - internal static string PropertyDescriptionDescription { - get { - return ResourceManager.GetString("PropertyDescriptionDescription", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Determines whether cursor flashes should be disabled.. - /// - internal static string PropertyDescriptionDisableCursorBlinking { - get { - return ResourceManager.GetString("PropertyDescriptionDisableCursorBlinking", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Determines whether a mouse shadow should be visible.. - /// - internal static string PropertyDescriptionDisableCursorShadow { - get { - return ResourceManager.GetString("PropertyDescriptionDisableCursorShadow", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Determines whether window content is displayed when you drag the window to a new location.. - /// - internal static string PropertyDescriptionDisableFullWindowDrag { - get { - return ResourceManager.GetString("PropertyDescriptionDisableFullWindowDrag", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Determines whether menus and windows can be displayed with animation effects in the remote session.. - /// - internal static string PropertyDescriptionDisableMenuAnimations { - get { - return ResourceManager.GetString("PropertyDescriptionDisableMenuAnimations", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select yes if the theme of the remote host should be displayed.. - /// - internal static string PropertyDescriptionDisplayThemes { - get { - return ResourceManager.GetString("PropertyDescriptionDisplayThemes", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select yes if the wallpaper of the remote host should be displayed.. - /// - internal static string PropertyDescriptionDisplayWallpaper { - get { - return ResourceManager.GetString("PropertyDescriptionDisplayWallpaper", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter your domain.. - /// - internal static string PropertyDescriptionDomain { - get { - return ResourceManager.GetString("PropertyDescriptionDomain", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether to use desktop composition or not.. - /// - internal static string PropertyDescriptionEnableDesktopComposition { - get { - return ResourceManager.GetString("PropertyDescriptionEnableDesktopComposition", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether to use font smoothing or not.. - /// - internal static string PropertyDescriptionEnableFontSmoothing { - get { - return ResourceManager.GetString("PropertyDescriptionEnableFontSmoothing", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select the encoding mode to be used.. - /// - internal static string PropertyDescriptionEncoding { - get { - return ResourceManager.GetString("PropertyDescriptionEncoding", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select the external tool to be started.. - /// - internal static string PropertyDescriptionExternalTool { - get { - return ResourceManager.GetString("PropertyDescriptionExternalTool", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select a external tool to be started after the disconnection to the remote host.. - /// - internal static string PropertyDescriptionExternalToolAfter { - get { - return ResourceManager.GetString("PropertyDescriptionExternalToolAfter", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select a external tool to be started before the connection to the remote host is established.. - /// - internal static string PropertyDescriptionExternalToolBefore { - get { - return ResourceManager.GetString("PropertyDescriptionExternalToolBefore", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show this connection in the favorites menu.. - /// - internal static string PropertyDescriptionFavorite { - get { - return ResourceManager.GetString("PropertyDescriptionFavorite", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter the hostname or ip you want to connect to.. - /// - internal static string PropertyDescriptionHostnameIp { - get { - return ResourceManager.GetString("PropertyDescriptionHostnameIp", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Choose a icon that will be displayed when connected to the host.. - /// - internal static string PropertyDescriptionIcon { - get { - return ResourceManager.GetString("PropertyDescriptionIcon", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Specifies the load balancing information for use by load balancing routers to choose the best server.. - /// - internal static string PropertyDescriptionLoadBalanceInfo { - get { - return ResourceManager.GetString("PropertyDescriptionLoadBalanceInfo", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter the MAC address of the remote host if you wish to use it in an external tool.. - /// - internal static string PropertyDescriptionMACAddress { - get { - return ResourceManager.GetString("PropertyDescriptionMACAddress", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to This is the name that will be displayed in the connections tree.. - /// - internal static string PropertyDescriptionName { - get { - return ResourceManager.GetString("PropertyDescriptionName", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to A command to run on the remote server after successfully connecting.. - /// - internal static string PropertyDescriptionOpeningCommand { - get { - return ResourceManager.GetString("PropertyDescriptionOpeningCommand", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Sets the panel in which the connection will open.. - /// - internal static string PropertyDescriptionPanel { - get { - return ResourceManager.GetString("PropertyDescriptionPanel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter your password.. - /// - internal static string PropertyDescriptionPassword { - get { - return ResourceManager.GetString("PropertyDescriptionPassword", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Set a password needed to encrypt the connection file with. You will be prompted to enter your passcode before starting mRemoteNG.. - /// - internal static string PropertyDescriptionPasswordProtect { - get { - return ResourceManager.GetString("PropertyDescriptionPasswordProtect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter the port the selected protocol is listening on.. - /// - internal static string PropertyDescriptionPort { - get { - return ResourceManager.GetString("PropertyDescriptionPort", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Choose the protocol mRemoteNG should use to connect to the host.. - /// - internal static string PropertyDescriptionProtocol { - get { - return ResourceManager.GetString("PropertyDescriptionProtocol", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select a PuTTY session to be used when connecting.. - /// - internal static string PropertyDescriptionPuttySession { - get { - return ResourceManager.GetString("PropertyDescriptionPuttySession", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Specifies the domain name that a user provides to connect to the RD Gateway server.. - /// - internal static string PropertyDescriptionRDGatewayDomain { - get { - return ResourceManager.GetString("PropertyDescriptionRDGatewayDomain", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Specifies the host name of the Remote Desktop Gateway server.. - /// - internal static string PropertyDescriptionRDGatewayHostname { - get { - return ResourceManager.GetString("PropertyDescriptionRDGatewayHostname", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Specifies whether or not to log on to the gateway using the same username and password as the connection.. - /// - internal static string PropertyDescriptionRDGatewayUseConnectionCredentials { - get { - return ResourceManager.GetString("PropertyDescriptionRDGatewayUseConnectionCredentials", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Specifies the user name that a user provides to connect to the RD Gateway server.. - /// - internal static string PropertyDescriptionRDGatewayUsername { - get { - return ResourceManager.GetString("PropertyDescriptionRDGatewayUsername", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether to receive an alert after the RDP session disconnects due to inactivity. - /// - internal static string PropertyDescriptionRDPAlertIdleTimeout { - get { - return ResourceManager.GetString("PropertyDescriptionRDPAlertIdleTimeout", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Specifies the password of the Remote Desktop Gateway server.. - /// - internal static string PropertyDescriptionRdpGatewayPassword { - get { - return ResourceManager.GetString("PropertyDescriptionRdpGatewayPassword", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Specifies when to use a Remote Desktop Gateway (RD Gateway) server.. - /// - internal static string PropertyDescriptionRdpGatewayUsageMethod { - get { - return ResourceManager.GetString("PropertyDescriptionRdpGatewayUsageMethod", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The number of minutes for the RDP session to sit idle before automatically disconnecting (for no limit use 0). - /// - internal static string PropertyDescriptionRDPMinutesToIdleTimeout { - get { - return ResourceManager.GetString("PropertyDescriptionRDPMinutesToIdleTimeout", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Sets the version of RDP to use when opening connections.. - /// - internal static string PropertyDescriptionRdpVersion { - get { - return ResourceManager.GetString("PropertyDescriptionRdpVersion", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether the default audio input device on the remote machine should be redirected to this computer.. - /// - internal static string PropertyDescriptionRedirectAudioCapture { - get { - return ResourceManager.GetString("PropertyDescriptionRedirectAudioCapture", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether the clipboard should be shared.. - /// - internal static string PropertyDescriptionRedirectClipboard { - get { - return ResourceManager.GetString("PropertyDescriptionRedirectClipboard", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether local disk drives should be shown on the remote host.. - /// - internal static string PropertyDescriptionRedirectDrives { - get { - return ResourceManager.GetString("PropertyDescriptionRedirectDrives", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether key combinations (e.g. Alt-Tab) should be redirected to the remote host.. - /// - internal static string PropertyDescriptionRedirectKeys { - get { - return ResourceManager.GetString("PropertyDescriptionRedirectKeys", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether local ports (ie. com, parallel) should be shown on the remote host.. - /// - internal static string PropertyDescriptionRedirectPorts { - get { - return ResourceManager.GetString("PropertyDescriptionRedirectPorts", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether local printers should be shown on the remote host.. - /// - internal static string PropertyDescriptionRedirectPrinters { - get { - return ResourceManager.GetString("PropertyDescriptionRedirectPrinters", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select whether local smart cards should be available on the remote host.. - /// - internal static string PropertyDescriptionRedirectSmartCards { - get { - return ResourceManager.GetString("PropertyDescriptionRedirectSmartCards", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select how remote sound should be redirected.. - /// - internal static string PropertyDescriptionRedirectSounds { - get { - return ResourceManager.GetString("PropertyDescriptionRedirectSounds", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select one of the available rendering engines that will be used to display HTML.. - /// - internal static string PropertyDescriptionRenderingEngine { - get { - return ResourceManager.GetString("PropertyDescriptionRenderingEngine", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Choose the resolution or mode this connection will open in.. - /// - internal static string PropertyDescriptionResolution { - get { - return ResourceManager.GetString("PropertyDescriptionResolution", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select the SmartSize mode to be used.. - /// - internal static string PropertyDescriptionSmartSizeMode { - get { - return ResourceManager.GetString("PropertyDescriptionSmartSizeMode", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Choose the Sound Quality provided by the protocol: Dynamic, Medium, High. - /// - internal static string PropertyDescriptionSoundQuality { - get { - return ResourceManager.GetString("PropertyDescriptionSoundQuality", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Specify here additional options to be used for SSH connection. See putty documentation for further details.. - /// - internal static string PropertyDescriptionSshOptions { - get { - return ResourceManager.GetString("PropertyDescriptionSshOptions", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to For connection through a SSH tunnel (jump host) specify SSH connection to be used to establish SSH tunnel.. - /// - internal static string PropertyDescriptionSshTunnel { - get { - return ResourceManager.GetString("PropertyDescriptionSshTunnel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Start Program/alternate shell. - /// - internal static string PropertyDescriptionStartProgram { - get { - return ResourceManager.GetString("PropertyDescriptionStartProgram", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connect to the console session of the remote host.. - /// - internal static string PropertyDescriptionUseConsoleSession { - get { - return ResourceManager.GetString("PropertyDescriptionUseConsoleSession", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use the Credential Security Support Provider (CredSSP) for authentication if it is available.. - /// - internal static string PropertyDescriptionUseCredSsp { - get { - return ResourceManager.GetString("PropertyDescriptionUseCredSsp", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connect to a Hyper-V host with enhanced mode enabled.. - /// - internal static string PropertyDescriptionUseEnhancedMode { - get { - return ResourceManager.GetString("PropertyDescriptionUseEnhancedMode", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Feel free to enter any information you need here.. - /// - internal static string PropertyDescriptionUser1 { - get { - return ResourceManager.GetString("PropertyDescriptionUser1", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter your username.. - /// - internal static string PropertyDescriptionUsername { - get { - return ResourceManager.GetString("PropertyDescriptionUsername", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use VM ID to connect to VM running on Hyper-V.. - /// - internal static string PropertyDescriptionUseVmId { - get { - return ResourceManager.GetString("PropertyDescriptionUseVmId", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to If you want to establish a view only connection to the host select yes.. - /// - internal static string PropertyDescriptionViewOnly { - get { - return ResourceManager.GetString("PropertyDescriptionViewOnly", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The ID of the Hyper-V virtual machine to connect to.. - /// - internal static string PropertyDescriptionVmId { - get { - return ResourceManager.GetString("PropertyDescriptionVmId", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter the proxy address to be used.. - /// - internal static string PropertyDescriptionVNCProxyAddress { - get { - return ResourceManager.GetString("PropertyDescriptionVNCProxyAddress", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter your password for authenticating against the proxy.. - /// - internal static string PropertyDescriptionVNCProxyPassword { - get { - return ResourceManager.GetString("PropertyDescriptionVNCProxyPassword", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter the port the proxy server listens on.. - /// - internal static string PropertyDescriptionVNCProxyPort { - get { - return ResourceManager.GetString("PropertyDescriptionVNCProxyPort", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to If you use a proxy to tunnel VNC connections, select which type it is.. - /// - internal static string PropertyDescriptionVNCProxyType { - get { - return ResourceManager.GetString("PropertyDescriptionVNCProxyType", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Enter your username for authenticating against the proxy.. - /// - internal static string PropertyDescriptionVNCProxyUsername { - get { - return ResourceManager.GetString("PropertyDescriptionVNCProxyUsername", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Protocol. - /// - internal static string Protocol { - get { - return ResourceManager.GetString("Protocol", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Protocol Event Disconnected. Host: "{1}"; Protocol: "{2}" Message: "{0}". - /// - internal static string ProtocolEventDisconnected { - get { - return ResourceManager.GetString("ProtocolEventDisconnected", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Protocol Event Disconnected failed. - ///{0}. - /// - internal static string ProtocolEventDisconnectFailed { - get { - return ResourceManager.GetString("ProtocolEventDisconnectFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Protocol to import. - /// - internal static string ProtocolToImport { - get { - return ResourceManager.GetString("ProtocolToImport", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Proxy. - /// - internal static string Proxy { - get { - return ResourceManager.GetString("Proxy", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Proxy Address. - /// - internal static string ProxyAddress { - get { - return ResourceManager.GetString("ProxyAddress", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Proxy Password. - /// - internal static string ProxyPassword { - get { - return ResourceManager.GetString("ProxyPassword", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Proxy Port. - /// - internal static string ProxyPort { - get { - return ResourceManager.GetString("ProxyPort", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Proxy test failed!. - /// - internal static string ProxyTestFailed { - get { - return ResourceManager.GetString("ProxyTestFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Proxy test succeeded!. - /// - internal static string ProxyTestSucceeded { - get { - return ResourceManager.GetString("ProxyTestSucceeded", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Proxy Type. - /// - internal static string ProxyType { - get { - return ResourceManager.GetString("ProxyType", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Proxy Username. - /// - internal static string ProxyUsername { - get { - return ResourceManager.GetString("ProxyUsername", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Dispose of Putty process failed!. - /// - internal static string PuttyDisposeFailed { - get { - return ResourceManager.GetString("PuttyDisposeFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't set focus!. - /// - internal static string PuttyFocusFailed { - get { - return ResourceManager.GetString("PuttyFocusFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Putty Handle: {0}. - /// - internal static string PuttyHandle { - get { - return ResourceManager.GetString("PuttyHandle", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Killing Putty Process failed!. - /// - internal static string PuttyKillFailed { - get { - return ResourceManager.GetString("PuttyKillFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Putty Resize Failed!. - /// - internal static string PuttyResizeFailed { - get { - return ResourceManager.GetString("PuttyResizeFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to PuTTY Saved Sessions. - /// - internal static string PuttySavedSessionsRootName { - get { - return ResourceManager.GetString("PuttySavedSessionsRootName", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to PuTTY Session. - /// - internal static string PuttySession { - get { - return ResourceManager.GetString("PuttySession", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to To configure PuTTY sessions click this button:. - /// - internal static string PuttySessionsConfig { - get { - return ResourceManager.GetString("PuttySessionsConfig", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to PuTTY Settings. - /// - internal static string PuttySettings { - get { - return ResourceManager.GetString("PuttySettings", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show PuTTY Settings Dialog failed!. - /// - internal static string PuttyShowSettingsDialogFailed { - get { - return ResourceManager.GetString("PuttyShowSettingsDialogFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to --- PuTTY Stuff ---. - /// - internal static string PuttyStuff { - get { - return ResourceManager.GetString("PuttyStuff", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Maximum PuTTY and integrated external tools wait time:. - /// - internal static string PuttyTimeout { - get { - return ResourceManager.GetString("PuttyTimeout", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to PuTTY Title: {0}. - /// - internal static string PuttyTitle { - get { - return ResourceManager.GetString("PuttyTitle", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Quick: {0}. - /// - internal static string Quick { - get { - return ResourceManager.GetString("Quick", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Quick Connect. - /// - internal static string QuickConnect { - get { - return ResourceManager.GetString("QuickConnect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Quick Connect Add Failed!. - /// - internal static string QuickConnectAddFailed { - get { - return ResourceManager.GetString("QuickConnectAddFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Creating quick connect failed. - /// - internal static string QuickConnectFailed { - get { - return ResourceManager.GetString("QuickConnectFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Quick Connect Toolbar. - /// - internal static string QuickConnectToolbar { - get { - return ResourceManager.GetString("QuickConnectToolbar", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Warn me only when e&xiting mRemoteNG. - /// - internal static string RadioCloseWarnExit { - get { - return ResourceManager.GetString("RadioCloseWarnExit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Warn me only when closing &multiple connections. - /// - internal static string RadioCloseWarnMultiple { - get { - return ResourceManager.GetString("RadioCloseWarnMultiple", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do &not warn me when closing connections. - /// - internal static string RadioCloseWarnNever { - get { - return ResourceManager.GetString("RadioCloseWarnNever", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RAW. - /// - internal static string Raw { - get { - return ResourceManager.GetString("Raw", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP. - /// - internal static string Rdp { - get { - return ResourceManager.GetString("Rdp", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to 16777216 Colours (24-bit). - /// - internal static string Rdp16777216Colors { - get { - return ResourceManager.GetString("Rdp16777216Colors", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to 256 Colours (8-bit). - /// - internal static string Rdp256Colors { - get { - return ResourceManager.GetString("Rdp256Colors", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to 32768 Colours (15-bit). - /// - internal static string Rdp32768Colors { - get { - return ResourceManager.GetString("Rdp32768Colors", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to 16777216 Colours (32-bit). - /// - internal static string Rdp4294967296Colors { - get { - return ResourceManager.GetString("Rdp4294967296Colors", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to 65536 Colours (16-bit). - /// - internal static string Rdp65536Colors { - get { - return ResourceManager.GetString("Rdp65536Colors", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't create RDP control, please check mRemoteNG requirements.. - /// - internal static string RdpControlCreationFailed { - get { - return ResourceManager.GetString("RdpControlCreationFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Disconnect failed, trying to close!. - /// - internal static string RdpDisconnectFailed { - get { - return ResourceManager.GetString("RdpDisconnectFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Internal error code 1.. - /// - internal static string RdpErrorCode1 { - get { - return ResourceManager.GetString("RdpErrorCode1", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Internal error code 2.. - /// - internal static string RdpErrorCode2 { - get { - return ResourceManager.GetString("RdpErrorCode2", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Internal error code 3. This is not a valid state.. - /// - internal static string RdpErrorCode3 { - get { - return ResourceManager.GetString("RdpErrorCode3", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Internal error code 4.. - /// - internal static string RdpErrorCode4 { - get { - return ResourceManager.GetString("RdpErrorCode4", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An unrecoverable error has occurred during client connection.. - /// - internal static string RdpErrorConnection { - get { - return ResourceManager.GetString("RdpErrorConnection", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to GetError failed (FatalErrors). - /// - internal static string RdpErrorGetFailure { - get { - return ResourceManager.GetString("RdpErrorGetFailure", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An out-of-memory error has occurred.. - /// - internal static string RdpErrorOutOfMemory { - get { - return ResourceManager.GetString("RdpErrorOutOfMemory", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An unknown error has occurred.. - /// - internal static string RdpErrorUnknown { - get { - return ResourceManager.GetString("RdpErrorUnknown", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to A window-creation error has occurred.. - /// - internal static string RdpErrorWindowCreation { - get { - return ResourceManager.GetString("RdpErrorWindowCreation", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Winsock initialization error.. - /// - internal static string RdpErrorWinsock { - get { - return ResourceManager.GetString("RdpErrorWinsock", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Focus failed!. - /// - internal static string RdpFocusFailed { - get { - return ResourceManager.GetString("RdpFocusFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Gateway Domain. - /// - internal static string RdpGatewayDomain { - get { - return ResourceManager.GetString("RdpGatewayDomain", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Gateway Hostname. - /// - internal static string RdpGatewayHostname { - get { - return ResourceManager.GetString("RdpGatewayHostname", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Gateway is supported.. - /// - internal static string RdpGatewayIsSupported { - get { - return ResourceManager.GetString("RdpGatewayIsSupported", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Gateway is not supported!. - /// - internal static string RdpGatewayNotSupported { - get { - return ResourceManager.GetString("RdpGatewayNotSupported", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Remote Desktop Gateway Password. - /// - internal static string RdpGatewayPassword { - get { - return ResourceManager.GetString("RdpGatewayPassword", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use Gateway. - /// - internal static string RdpGatewayUsageMethod { - get { - return ResourceManager.GetString("RdpGatewayUsageMethod", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Gateway Credentials. - /// - internal static string RdpGatewayUseConnectionCredentials { - get { - return ResourceManager.GetString("RdpGatewayUseConnectionCredentials", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Gateway Username. - /// - internal static string RdpGatewayUsername { - get { - return ResourceManager.GetString("RdpGatewayUsername", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Connection Timeout. - /// - internal static string RdpOverallConnectionTimeout { - get { - return ResourceManager.GetString("RdpOverallConnectionTimeout", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Could not create RDP client. RDP protocol version {0} is not supported on this machine. Please choose an older protocol version.. - /// - internal static string RdpProtocolVersionNotSupported { - get { - return ResourceManager.GetString("RdpProtocolVersionNotSupported", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP reconnection count:. - /// - internal static string RdpReconnectCount { - get { - return ResourceManager.GetString("RdpReconnectCount", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP SetAuthenticationLevel failed!. - /// - internal static string RdpSetAuthenticationLevelFailed { - get { - return ResourceManager.GetString("RdpSetAuthenticationLevelFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP SetUseConsoleSession failed!. - /// - internal static string RdpSetConsoleSessionFailed { - get { - return ResourceManager.GetString("RdpSetConsoleSessionFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Setting Console switch for RDC {0}.. - /// - internal static string RdpSetConsoleSwitch { - get { - return ResourceManager.GetString("RdpSetConsoleSwitch", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP SetCredentials failed!. - /// - internal static string RdpSetCredentialsFailed { - get { - return ResourceManager.GetString("RdpSetCredentialsFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP SetEventHandlers failed!. - /// - internal static string RdpSetEventHandlersFailed { - get { - return ResourceManager.GetString("RdpSetEventHandlersFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP SetRDGateway failed!. - /// - internal static string RdpSetGatewayFailed { - get { - return ResourceManager.GetString("RdpSetGatewayFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP SetPerformanceFlags failed!. - /// - internal static string RdpSetPerformanceFlagsFailed { - get { - return ResourceManager.GetString("RdpSetPerformanceFlagsFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP SetPort failed!. - /// - internal static string RdpSetPortFailed { - get { - return ResourceManager.GetString("RdpSetPortFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP SetProps failed!. - /// - internal static string RdpSetPropsFailed { - get { - return ResourceManager.GetString("RdpSetPropsFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Set Redirection Failed!. - /// - internal static string RdpSetRedirectionFailed { - get { - return ResourceManager.GetString("RdpSetRedirectionFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Set Redirect Keys Failed!. - /// - internal static string RdpSetRedirectKeysFailed { - get { - return ResourceManager.GetString("RdpSetRedirectKeysFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP SetResolution failed!. - /// - internal static string RdpSetResolutionFailed { - get { - return ResourceManager.GetString("RdpSetResolutionFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Bring to this computer. - /// - internal static string RdpSoundBringToThisComputer { - get { - return ResourceManager.GetString("RdpSoundBringToThisComputer", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Leave at remote computer. - /// - internal static string RdpSoundLeaveAtRemoteComputer { - get { - return ResourceManager.GetString("RdpSoundLeaveAtRemoteComputer", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP ToggleFullscreen failed!. - /// - internal static string RdpToggleFullscreenFailed { - get { - return ResourceManager.GetString("RdpToggleFullscreenFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP ToggleSmartSize failed!. - /// - internal static string RdpToggleSmartSizeFailed { - get { - return ResourceManager.GetString("RdpToggleSmartSizeFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to RDP Version. - /// - internal static string RdpVersion { - get { - return ResourceManager.GetString("RdpVersion", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Read only:. - /// - internal static string ReadOnly { - get { - return ResourceManager.GetString("ReadOnly", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Reconnect. - /// - internal static string Reconnect { - get { - return ResourceManager.GetString("Reconnect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Reconnect All Connections. - /// - internal static string ReconnectAllConnections { - get { - return ResourceManager.GetString("ReconnectAllConnections", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Reconnect to previously opened sessions on startup. - /// - internal static string ReconnectAtStartup { - get { - return ResourceManager.GetString("ReconnectAtStartup", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Redirect. - /// - internal static string Redirect { - get { - return ResourceManager.GetString("Redirect", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Key Combinations. - /// - internal static string RedirectKeys { - get { - return ResourceManager.GetString("RedirectKeys", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Refresh Screen (VNC). - /// - internal static string RefreshScreen { - get { - return ResourceManager.GetString("RefreshScreen", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Release Channel. - /// - internal static string ReleaseChannel { - get { - return ResourceManager.GetString("ReleaseChannel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Stable channel includes final releases only. - ///Preview channel includes Betas & Release Candidates. - ///Nightly Channel includes Alphas, Betas & Release Candidates.. - /// - internal static string ReleaseChannelExplanation { - get { - return ResourceManager.GetString("ReleaseChannelExplanation", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Released under the GNU General Public License (GPL). - /// - internal static string ReleasedUnderGPL { - get { - return ResourceManager.GetString("ReleasedUnderGPL", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Remote file. - /// - internal static string RemoteFile { - get { - return ResourceManager.GetString("RemoteFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Remove All. - /// - internal static string RemoveAll { - get { - return ResourceManager.GetString("RemoveAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Rename. - /// - internal static string Rename { - get { - return ResourceManager.GetString("Rename", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Rename Tab. - /// - internal static string RenameTab { - get { - return ResourceManager.GetString("RenameTab", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Rendering Engine. - /// - internal static string RenderingEngine { - get { - return ResourceManager.GetString("RenderingEngine", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Report a Bug. - /// - internal static string ReportBug { - get { - return ResourceManager.GetString("ReportBug", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Reset layout. - /// - internal static string ResetLayout { - get { - return ResourceManager.GetString("ResetLayout", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Resolution. - /// - internal static string Resolution { - get { - return ResourceManager.GetString("Resolution", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Rlogin. - /// - internal static string Rlogin { - get { - return ResourceManager.GetString("Rlogin", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Run elevated. - /// - internal static string RunElevated { - get { - return ResourceManager.GetString("RunElevated", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Save. - /// - internal static string Save { - get { - return ResourceManager.GetString("Save", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Save All. - /// - internal static string SaveAll { - get { - return ResourceManager.GetString("SaveAll", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Save Connection File. - /// - internal static string SaveConnectionFile { - get { - return ResourceManager.GetString("SaveConnectionFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Save Connection File As.... - /// - internal static string SaveConnectionFileAs { - get { - return ResourceManager.GetString("SaveConnectionFileAs", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Save connections after every edit. - /// - internal static string SaveConnectionsAfterEveryEdit { - get { - return ResourceManager.GetString("SaveConnectionsAfterEveryEdit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Do you want to save the current connections file before loading another?. - /// - internal static string SaveConnectionsFileBeforeOpeningAnother { - get { - return ResourceManager.GetString("SaveConnectionsFileBeforeOpeningAnother", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Graphics Interchange Format File (.gif)|*.gif|Joint Photographic Experts Group File (.jpeg)|*.jpeg|Joint Photographic Experts Group File (.jpg)|*.jpg|Portable Network Graphics File (.png)|*.png. - /// - internal static string SaveImageFilter { - get { - return ResourceManager.GetString("SaveImageFilter", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Screen. - /// - internal static string Screen { - get { - return ResourceManager.GetString("Screen", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Screenshot. - /// - internal static string Screenshot { - get { - return ResourceManager.GetString("Screenshot", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Screenshots. - /// - internal static string Screenshots { - get { - return ResourceManager.GetString("Screenshots", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Search. - /// - internal static string SearchPrompt { - get { - return ResourceManager.GetString("SearchPrompt", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Seconds. - /// - internal static string Seconds { - get { - return ResourceManager.GetString("Seconds", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select a panel from the list below or click New to add a new one. Click OK to continue.. - /// - internal static string SelectPanel { - get { - return ResourceManager.GetString("SelectPanel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Send Special Keys (VNC). - /// - internal static string SendSpecialKeys { - get { - return ResourceManager.GetString("SendSpecialKeys", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Send To.... - /// - internal static string SendTo { - get { - return ResourceManager.GetString("SendTo", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Server '{0}' was not accessible.. - /// - internal static string ServerNotAccessible { - get { - return ResourceManager.GetString("ServerNotAccessible", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Server status:. - /// - internal static string ServerStatus { - get { - return ResourceManager.GetString("ServerStatus", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Set hostname like display name when creating or renaming connections. - /// - internal static string SetHostnameLikeDisplayName { - get { - return ResourceManager.GetString("SetHostnameLikeDisplayName", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Couldn't save settings or dispose SysTray Icon!. - /// - internal static string SettingsCouldNotBeSavedOrTrayDispose { - get { - return ResourceManager.GetString("SettingsCouldNotBeSavedOrTrayDispose", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show description tooltips in connection tree. - /// - internal static string ShowDescriptionTooltips { - get { - return ResourceManager.GetString("ShowDescriptionTooltips", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show full connections file path in window title. - /// - internal static string ShowFullConsFilePath { - get { - return ResourceManager.GetString("ShowFullConsFilePath", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to &Show Help Text. - /// - internal static string ShowHelpText { - get { - return ResourceManager.GetString("ShowHelpText", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show/Hide Menu Strip. - /// - internal static string ShowHideMenu { - get { - return ResourceManager.GetString("ShowHideMenu", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show logon information on tab names. - /// - internal static string ShowLogonInfoOnTabs { - get { - return ResourceManager.GetString("ShowLogonInfoOnTabs", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show On Toolbar. - /// - internal static string ShowOnToolbar { - get { - return ResourceManager.GetString("ShowOnToolbar", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show on toolbar column. - /// - internal static string ShowOnToolbarColumnHeader { - get { - return ResourceManager.GetString("ShowOnToolbarColumnHeader", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show protocols on tab names. - /// - internal static string ShowProtocolOnTabs { - get { - return ResourceManager.GetString("ShowProtocolOnTabs", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show Text. - /// - internal static string ShowText { - get { - return ResourceManager.GetString("ShowText", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Show these message types. - /// - internal static string ShowTheseMessageTypes { - get { - return ResourceManager.GetString("ShowTheseMessageTypes", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Single click on connection opens it. - /// - internal static string SingleClickOnConnectionOpensIt { - get { - return ResourceManager.GetString("SingleClickOnConnectionOpensIt", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Single click on opened connection in Connection Tree switches to opened Connection Tab. - /// - internal static string SingleClickOnOpenConnectionSwitchesToIt { - get { - return ResourceManager.GetString("SingleClickOnOpenConnectionSwitchesToIt", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SmartCard. - /// - internal static string SmartCard { - get { - return ResourceManager.GetString("SmartCard", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SmartSize (RDP/VNC). - /// - internal static string SmartSize { - get { - return ResourceManager.GetString("SmartSize", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SmartSize Mode. - /// - internal static string SmartSizeMode { - get { - return ResourceManager.GetString("SmartSizeMode", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Socks 5. - /// - internal static string Socks5 { - get { - return ResourceManager.GetString("Socks5", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Sort. - /// - internal static string Sort { - get { - return ResourceManager.GetString("Sort", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Ascending (A-Z). - /// - internal static string SortAsc { - get { - return ResourceManager.GetString("SortAsc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Descending (Z-A). - /// - internal static string SortDesc { - get { - return ResourceManager.GetString("SortDesc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Sound quality. - /// - internal static string SoundQuality { - get { - return ResourceManager.GetString("SoundQuality", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Sounds. - /// - internal static string Sounds { - get { - return ResourceManager.GetString("Sounds", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Please see Help - Getting started - SQL Configuration for more Info!. - /// - internal static string SQLInfo { - get { - return ResourceManager.GetString("SQLInfo", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SQL Server. - /// - internal static string SQLServer { - get { - return ResourceManager.GetString("SQLServer", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH background transfer failed!. - /// - internal static string SshBackgroundTransferFailed { - get { - return ResourceManager.GetString("SshBackgroundTransferFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH File Transfer. - /// - internal static string SshFileTransfer { - get { - return ResourceManager.GetString("SshFileTransfer", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH Options. - /// - internal static string SshOptions { - get { - return ResourceManager.GetString("SshOptions", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH transfer failed.. - /// - internal static string SshTransferFailed { - get { - return ResourceManager.GetString("SshTransferFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH Tunnel. - /// - internal static string SshTunnel { - get { - return ResourceManager.GetString("SshTunnel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH Tunnel connection configuration problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. A connection with the name configured as SSH Tunnel and protocol SSH version 1 or SSH2 version 2 cannot be found in the connection tree. Clear SSH Tunnel configuration or specify existing SSH connection.. - /// - internal static string SshTunnelConfigProblem { - get { - return ResourceManager.GetString("SshTunnelConfigProblem", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH tunnel connection failed. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Putty process terminated. Check for any problems with the connection configured as SSH Tunnel.. - /// - internal static string SshTunnelFailed { - get { - return ResourceManager.GetString("SshTunnelFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH tunnel configuration problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Connection configured as SSH Tunnel found in tree, but protocol is not derived from putty. Make sure connection configured as SSH Tunnel is using SSH protocol.. - /// - internal static string SshTunnelIsNotPutty { - get { - return ResourceManager.GetString("SshTunnelIsNotPutty", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH tunnel connection problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. SSH connection failed. Check for any problems with the connection configured as SSH Tunnel.. - /// - internal static string SshTunnelNotConnected { - get { - return ResourceManager.GetString("SshTunnelNotConnected", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH tunnel initialization problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. SSH connection could not be initialized. Check for any problems with the connection configured as SSH Tunnel.. - /// - internal static string SshTunnelNotInitialized { - get { - return ResourceManager.GetString("SshTunnelNotInitialized", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH tunnel connection timed out. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Local tunnel port did not become available in time. Check for any problems with the connection configured as SSH Tunnel.. - /// - internal static string SshTunnelPortNotReadyInTime { - get { - return ResourceManager.GetString("SshTunnelPortNotReadyInTime", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH version 1. - /// - internal static string SshV1 { - get { - return ResourceManager.GetString("SshV1", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to SSH version 2. - /// - internal static string SshV2 { - get { - return ResourceManager.GetString("SshV2", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Stack trace. - /// - internal static string StackTrace { - get { - return ResourceManager.GetString("StackTrace", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Start Chat (VNC). - /// - internal static string StartChat { - get { - return ResourceManager.GetString("StartChat", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Start minimized. - /// - internal static string StartMinimized { - get { - return ResourceManager.GetString("StartMinimized", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Start Program. - /// - internal static string StartProgram { - get { - return ResourceManager.GetString("StartProgram", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Startup/Exit. - /// - internal static string StartupExit { - get { - return ResourceManager.GetString("StartupExit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Status. - /// - internal static string Status { - get { - return ResourceManager.GetString("Status", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Backup. - /// - internal static string strBackup { - get { - return ResourceManager.GetString("strBackup", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Browse.... - /// - internal static string strBrowse { - get { - return ResourceManager.GetString("strBrowse", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Connection Backup Frequency. - /// - internal static string strConnectionBackupFrequency { - get { - return ResourceManager.GetString("strConnectionBackupFrequency", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Maximum number of backups. - /// - internal static string strConnectionsBackupMaxCount { - get { - return ResourceManager.GetString("strConnectionsBackupMaxCount", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Location of connection file backup. - /// - internal static string strConnectionsBackupPath { - get { - return ResourceManager.GetString("strConnectionsBackupPath", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Support Forum. - /// - internal static string SupportForum { - get { - return ResourceManager.GetString("SupportForum", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Switch to Notifications panel on:. - /// - internal static string SwitchToErrorsAndInfos { - get { - return ResourceManager.GetString("SwitchToErrorsAndInfos", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Tabs && Panels. - /// - internal static string TabsAndPanels { - get { - return ResourceManager.GetString("TabsAndPanels", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Security. - /// - internal static string TabSecurity { - get { - return ResourceManager.GetString("TabSecurity", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Telnet. - /// - internal static string Telnet { - get { - return ResourceManager.GetString("Telnet", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Test connection. - /// - internal static string TestConnection { - get { - return ResourceManager.GetString("TestConnection", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Testing connection. - /// - internal static string TestingConnection { - get { - return ResourceManager.GetString("TestingConnection", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Test Proxy. - /// - internal static string TestProxy { - get { - return ResourceManager.GetString("TestProxy", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Test Settings. - /// - internal static string TestSettings { - get { - return ResourceManager.GetString("TestSettings", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The following:. - /// - internal static string TheFollowing { - get { - return ResourceManager.GetString("TheFollowing", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Theme. - /// - internal static string Theme { - get { - return ResourceManager.GetString("Theme", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Timeout [seconds]. - /// - internal static string TimeoutInSeconds { - get { - return ResourceManager.GetString("TimeoutInSeconds", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Title. - /// - internal static string Title { - get { - return ResourceManager.GetString("Title", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Error ({0}). - /// - internal static string TitleError { - get { - return ResourceManager.GetString("TitleError", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Information ({0}). - /// - internal static string TitleInformation { - get { - return ResourceManager.GetString("TitleInformation", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemoteNG password. - /// - internal static string TitlePassword { - get { - return ResourceManager.GetString("TitlePassword", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemoteNG password for {0}. - /// - internal static string TitlePasswordWithName { - get { - return ResourceManager.GetString("TitlePasswordWithName", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Select Panel. - /// - internal static string TitleSelectPanel { - get { - return ResourceManager.GetString("TitleSelectPanel", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Warning ({0}). - /// - internal static string TitleWarning { - get { - return ResourceManager.GetString("TitleWarning", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Track active connection in the connection tree. - /// - internal static string TrackActiveConnectionInConnectionTree { - get { - return ResourceManager.GetString("TrackActiveConnectionInConnectionTree", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Transfer. - /// - internal static string Transfer { - get { - return ResourceManager.GetString("Transfer", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Transfer File (SSH). - /// - internal static string TransferFile { - get { - return ResourceManager.GetString("TransferFile", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Try to integrate. - /// - internal static string TryToIntegrate { - get { - return ResourceManager.GetString("TryToIntegrate", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Ultra VNC Repeater. - /// - internal static string UltraVncRepeater { - get { - return ResourceManager.GetString("UltraVncRepeater", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to UltraVNC SingleClick port:. - /// - internal static string UltraVNCSCListeningPort { - get { - return ResourceManager.GetString("UltraVNCSCListeningPort", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to UltraVNC SingleClick. - /// - internal static string UltraVNCSingleClick { - get { - return ResourceManager.GetString("UltraVNCSingleClick", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Uncheck the properties you want not to be saved!. - /// - internal static string UncheckProperties { - get { - return ResourceManager.GetString("UncheckProperties", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to An unhandled exception has occurred. - /// - internal static string UnhandledExceptionOccured { - get { - return ResourceManager.GetString("UnhandledExceptionOccured", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemoteNG requires an update. - /// - internal static string UpdateAvailable { - get { - return ResourceManager.GetString("UpdateAvailable", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to mRemoteNG can periodically connect to the mRemoteNG website to check for updates.. - /// - internal static string UpdateCheck { - get { - return ResourceManager.GetString("UpdateCheck", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The update information could not be downloaded.. - /// - internal static string UpdateCheckCompleteFailed { - get { - return ResourceManager.GetString("UpdateCheckCompleteFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Download complete! - ///mRemoteNG will now quit and begin with the installation.. - /// - internal static string UpdateDownloadComplete { - get { - return ResourceManager.GetString("UpdateDownloadComplete", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The update could not be downloaded.. - /// - internal static string UpdateDownloadCompleteFailed { - get { - return ResourceManager.GetString("UpdateDownloadCompleteFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The update download could not be initiated.. - /// - internal static string UpdateDownloadFailed { - get { - return ResourceManager.GetString("UpdateDownloadFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Every {0} days. - /// - internal static string UpdateFrequencyCustom { - get { - return ResourceManager.GetString("UpdateFrequencyCustom", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to The change log could not be downloaded.. - /// - internal static string UpdateGetChangeLogFailed { - get { - return ResourceManager.GetString("UpdateGetChangeLogFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Download Completed!. - /// - internal static string UpdatePortableDownloadComplete { - get { - return ResourceManager.GetString("UpdatePortableDownloadComplete", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Updates. - /// - internal static string Updates { - get { - return ResourceManager.GetString("Updates", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use Console Session. - /// - internal static string UseConsoleSession { - get { - return ResourceManager.GetString("UseConsoleSession", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use CredSSP. - /// - internal static string UseCredSsp { - get { - return ResourceManager.GetString("UseCredSsp", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use default. - /// - internal static string UseDefault { - get { - return ResourceManager.GetString("UseDefault", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use a different username and password. - /// - internal static string UseDifferentUsernameAndPassword { - get { - return ResourceManager.GetString("UseDifferentUsernameAndPassword", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use enhanced mode. - /// - internal static string UseEnhancedMode { - get { - return ResourceManager.GetString("UseEnhancedMode", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to User. - /// - internal static string User { - get { - return ResourceManager.GetString("User", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to User Field. - /// - internal static string UserField { - get { - return ResourceManager.GetString("UserField", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Username. - /// - internal static string Username { - get { - return ResourceManager.GetString("Username", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use the same username and password. - /// - internal static string UseSameUsernameAndPassword { - get { - return ResourceManager.GetString("UseSameUsernameAndPassword", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use a smart card. - /// - internal static string UseSmartCard { - get { - return ResourceManager.GetString("UseSmartCard", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use SQL Server to load && save connections. - /// - internal static string UseSQLServer { - get { - return ResourceManager.GetString("UseSQLServer", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Use VM ID. - /// - internal static string UseVmId { - get { - return ResourceManager.GetString("UseVmId", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Verify:. - /// - internal static string Verify { - get { - return ResourceManager.GetString("Verify", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Version. - /// - internal static string Version { - get { - return ResourceManager.GetString("Version", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to View Only. - /// - internal static string ViewOnly { - get { - return ResourceManager.GetString("ViewOnly", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VM ID. - /// - internal static string VmId { - get { - return ResourceManager.GetString("VmId", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VNC. - /// - internal static string Vnc { - get { - return ResourceManager.GetString("Vnc", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VNC disconnect failed!. - /// - internal static string VncConnectionDisconnectFailed { - get { - return ResourceManager.GetString("VncConnectionDisconnectFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VNC Refresh Screen Failed!. - /// - internal static string VncRefreshFailed { - get { - return ResourceManager.GetString("VncRefreshFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VNC SendSpecialKeys failed!. - /// - internal static string VncSendSpecialKeysFailed { - get { - return ResourceManager.GetString("VncSendSpecialKeysFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VNC Set Event Handlers failed!. - /// - internal static string VncSetEventHandlersFailed { - get { - return ResourceManager.GetString("VncSetEventHandlersFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VNC Set Props Failed!. - /// - internal static string VncSetPropsFailed { - get { - return ResourceManager.GetString("VncSetPropsFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VNC Toggle SmartSize Failed!. - /// - internal static string VncToggleSmartSizeFailed { - get { - return ResourceManager.GetString("VncToggleSmartSizeFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to VNC Toggle ViewOnly Failed!. - /// - internal static string VncToggleViewOnlyFailed { - get { - return ResourceManager.GetString("VncToggleViewOnlyFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Wait for exit. - /// - internal static string WaitForExit { - get { - return ResourceManager.GetString("WaitForExit", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Warn me if authentication fails. - /// - internal static string WarnIfAuthFails { - get { - return ResourceManager.GetString("WarnIfAuthFails", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Warnings. - /// - internal static string Warnings { - get { - return ResourceManager.GetString("Warnings", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Website. - /// - internal static string Website { - get { - return ResourceManager.GetString("Website", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to WebView2 creation failed with exception. - /// - internal static string WebView2InitializationFailed { - get { - return ResourceManager.GetString("WebView2InitializationFailed", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Weekly. - /// - internal static string Weekly { - get { - return ResourceManager.GetString("Weekly", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Windows. - /// - internal static string Windows { - get { - return ResourceManager.GetString("Windows", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Working directory. - /// - internal static string WorkingDirColumnHeader { - get { - return ResourceManager.GetString("WorkingDirColumnHeader", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Working directory:. - /// - internal static string WorkingDirectory { - get { - return ResourceManager.GetString("WorkingDirectory", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Yes. - /// - internal static string Yes { - get { - return ResourceManager.GetString("Yes", resourceCulture); - } - } - } -} +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace mRemoteNG.Resources.Language { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Language { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Language() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("mRemoteNG.Language.Language", typeof(Language).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized string similar to &Browse.... + /// + internal static string _Browse { + get { + return ResourceManager.GetString("_Browse", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Cancel. + /// + internal static string _Cancel { + get { + return ResourceManager.GetString("_Cancel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Close. + /// + internal static string _Close { + get { + return ResourceManager.GetString("_Close", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Warn me when closing connections. + /// + internal static string _CloseWarnAll { + get { + return ResourceManager.GetString("_CloseWarnAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Delete. + /// + internal static string _Delete { + get { + return ResourceManager.GetString("_Delete", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Export to File.... + /// + internal static string _ExportToFile { + get { + return ResourceManager.GetString("_ExportToFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &File. + /// + internal static string _File { + get { + return ResourceManager.GetString("_File", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Help. + /// + internal static string _Help { + get { + return ResourceManager.GetString("_Help", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Import. + /// + internal static string _Import { + get { + return ResourceManager.GetString("_Import", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Launch. + /// + internal static string _Launch { + get { + return ResourceManager.GetString("_Launch", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &New. + /// + internal static string _New { + get { + return ResourceManager.GetString("_New", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &OK. + /// + internal static string _Ok { + get { + return ResourceManager.GetString("_Ok", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Scan. + /// + internal static string _Scan { + get { + return ResourceManager.GetString("_Scan", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Stop. + /// + internal static string _Stop { + get { + return ResourceManager.GetString("_Stop", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Tools. + /// + internal static string _Tools { + get { + return ResourceManager.GetString("_Tools", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Try again. + /// + internal static string _TryAgain { + get { + return ResourceManager.GetString("_TryAgain", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &View. + /// + internal static string _View { + get { + return ResourceManager.GetString("_View", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to About. + /// + internal static string About { + get { + return ResourceManager.GetString("About", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Active Directory. + /// + internal static string ActiveDirectory { + get { + return ResourceManager.GetString("ActiveDirectory", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Add. + /// + internal static string Add { + get { + return ResourceManager.GetString("Add", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Add Connection Panel. + /// + internal static string AddConnectionPanel { + get { + return ResourceManager.GetString("AddConnectionPanel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to AddNodeFromXML failed!. + /// + internal static string AddNodeFromXmlFailed { + get { + return ResourceManager.GetString("AddNodeFromXmlFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Address:. + /// + internal static string Address { + get { + return ResourceManager.GetString("Address", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Advanced. + /// + internal static string Advanced { + get { + return ResourceManager.GetString("Advanced", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Advanced security options. + /// + internal static string AdvancedSecurityOptions { + get { + return ResourceManager.GetString("AdvancedSecurityOptions", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to All. + /// + internal static string All { + get { + return ResourceManager.GetString("All", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Allow only a single instance of the application (mRemoteNG restart required). + /// + internal static string AllowOnlySingleInstance { + get { + return ResourceManager.GetString("AllowOnlySingleInstance", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Always. + /// + internal static string Always { + get { + return ResourceManager.GetString("Always", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Always connect, even if authentication fails. + /// + internal static string AlwaysConnectEvenIfAuthFails { + get { + return ResourceManager.GetString("AlwaysConnectEvenIfAuthFails", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Always show connection tabs. + /// + internal static string AlwaysShowConnectionTabs { + get { + return ResourceManager.GetString("AlwaysShowConnectionTabs", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Always show panel selection dialog when opening connections. + /// + internal static string AlwaysShowPanelSelection { + get { + return ResourceManager.GetString("AlwaysShowPanelSelection", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Always show panel tabs. + /// + internal static string AlwaysShowPanelTabs { + get { + return ResourceManager.GetString("AlwaysShowPanelTabs", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Always show notification area icon. + /// + internal static string AlwaysShowSysTrayIcon { + get { + return ResourceManager.GetString("AlwaysShowSysTrayIcon", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Appearance. + /// + internal static string Appearance { + get { + return ResourceManager.GetString("Appearance", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Apply. + /// + internal static string Apply { + get { + return ResourceManager.GetString("Apply", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Arguments. + /// + internal static string Arguments { + get { + return ResourceManager.GetString("Arguments", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Ask me again later. + /// + internal static string AskUpdatesCommandAskLater { + get { + return ResourceManager.GetString("AskUpdatesCommandAskLater", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Customize the settings now. + /// + internal static string AskUpdatesCommandCustom { + get { + return ResourceManager.GetString("AskUpdatesCommandCustom", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use the recommended settings. + /// + internal static string AskUpdatesCommandRecommended { + get { + return ResourceManager.GetString("AskUpdatesCommandRecommended", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to {0} can automatically check for updates that may provide new features and bug fixes. It is recommended that you allow {0} to check for updates weekly.. + /// + internal static string AskUpdatesContent { + get { + return ResourceManager.GetString("AskUpdatesContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Automatic update settings. + /// + internal static string AskUpdatesMainInstruction { + get { + return ResourceManager.GetString("AskUpdatesMainInstruction", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Aspect. + /// + internal static string Aspect { + get { + return ResourceManager.GetString("Aspect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Assigned Credential. + /// + internal static string AssignedCredential { + get { + return ResourceManager.GetString("AssignedCredential", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Audio Capture. + /// + internal static string AudioCapture { + get { + return ResourceManager.GetString("AudioCapture", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Server Authentication. + /// + internal static string AuthenticationLevel { + get { + return ResourceManager.GetString("AuthenticationLevel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Authentication mode. + /// + internal static string AuthenticationMode { + get { + return ResourceManager.GetString("AuthenticationMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An error occurred while trying to reconnect to RDP host '{0}'. + /// + internal static string AutomaticReconnectError { + get { + return ResourceManager.GetString("AutomaticReconnectError", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Automatic resize. + /// + internal static string AutomaticResize { + get { + return ResourceManager.GetString("AutomaticResize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Auto save time in minutes (0 means disabled):. + /// + internal static string AutoSaveEvery { + get { + return ResourceManager.GetString("AutoSaveEvery", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Latest version. + /// + internal static string AvailableVersion { + get { + return ResourceManager.GetString("AvailableVersion", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Default Inheritance. + /// + internal static string ButtonDefaultInheritance { + get { + return ResourceManager.GetString("ButtonDefaultInheritance", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Default Properties. + /// + internal static string ButtonDefaultProperties { + get { + return ResourceManager.GetString("ButtonDefaultProperties", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Launch PuTTY. + /// + internal static string ButtonLaunchPutty { + get { + return ResourceManager.GetString("ButtonLaunchPutty", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cache Bitmaps. + /// + internal static string CacheBitmaps { + get { + return ResourceManager.GetString("CacheBitmaps", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cannot start Port Scan, incorrect IP format!. + /// + internal static string CannotStartPortScan { + get { + return ResourceManager.GetString("CannotStartPortScan", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Change. + /// + internal static string Change { + get { + return ResourceManager.GetString("Change", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An error occurred while trying to change the connection resolution to host '{0}'. + /// + internal static string ChangeConnectionResolutionError { + get { + return ResourceManager.GetString("ChangeConnectionResolutionError", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Changelog. + /// + internal static string Changelog { + get { + return ResourceManager.GetString("Changelog", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Check Again. + /// + internal static string CheckAgain { + get { + return ResourceManager.GetString("CheckAgain", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Automatically try to reconnect when disconnected from server (RDP && ICA only). + /// + internal static string CheckboxAutomaticReconnect { + get { + return ResourceManager.GetString("CheckboxAutomaticReconnect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do not show this message again.. + /// + internal static string CheckboxDoNotShowThisMessageAgain { + get { + return ResourceManager.GetString("CheckboxDoNotShowThisMessageAgain", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This proxy server requires authentication. + /// + internal static string CheckboxProxyAuthentication { + get { + return ResourceManager.GetString("CheckboxProxyAuthentication", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use custom PuTTY path:. + /// + internal static string CheckboxPuttyPath { + get { + return ResourceManager.GetString("CheckboxPuttyPath", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reconnect when ready. + /// + internal static string CheckboxReconnectWhenReady { + get { + return ResourceManager.GetString("CheckboxReconnectWhenReady", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use a proxy server to connect. + /// + internal static string CheckboxUpdateUseProxy { + get { + return ResourceManager.GetString("CheckboxUpdateUseProxy", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Check failed!. + /// + internal static string CheckFailed { + get { + return ResourceManager.GetString("CheckFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Check for Updates. + /// + internal static string CheckForUpdates { + get { + return ResourceManager.GetString("CheckForUpdates", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Check for updates at startup. + /// + internal static string CheckForUpdatesOnStartup { + get { + return ResourceManager.GetString("CheckForUpdatesOnStartup", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Check now. + /// + internal static string CheckNow { + get { + return ResourceManager.GetString("CheckNow", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Check proper installation of components at startup. + /// + internal static string CheckProperInstallationOfComponentsAtStartup { + get { + return ResourceManager.GetString("CheckProperInstallationOfComponentsAtStartup", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Choose a path for the mRemoteNG log file. + /// + internal static string ChooseLogPath { + get { + return ResourceManager.GetString("ChooseLogPath", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Choose panel before connecting. + /// + internal static string ChoosePanelBeforeConnecting { + get { + return ResourceManager.GetString("ChoosePanelBeforeConnecting", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Choose path. + /// + internal static string ChoosePath { + get { + return ResourceManager.GetString("ChoosePath", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Clear search string. + /// + internal static string ClearSearchString { + get { + return ResourceManager.GetString("ClearSearchString", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Clipboard. + /// + internal static string Clipboard { + get { + return ResourceManager.GetString("Clipboard", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Closed Ports. + /// + internal static string ClosedPorts { + get { + return ResourceManager.GetString("ClosedPorts", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Close to notification area. + /// + internal static string CloseToSysTray { + get { + return ResourceManager.GetString("CloseToSysTray", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to When closing connections:. + /// + internal static string ClosingConnections { + get { + return ResourceManager.GetString("ClosingConnections", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Collapse all folders. + /// + internal static string CollapseAllFolders { + get { + return ResourceManager.GetString("CollapseAllFolders", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Colours. + /// + internal static string Colors { + get { + return ResourceManager.GetString("Colors", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to E&xit {0}. + /// + internal static string CommandExitProgram { + get { + return ResourceManager.GetString("CommandExitProgram", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't parse command line args!. + /// + internal static string CommandLineArgsCouldNotBeParsed { + get { + return ResourceManager.GetString("CommandLineArgsCouldNotBeParsed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Open a connection file. + /// + internal static string CommandOpenConnectionFile { + get { + return ResourceManager.GetString("CommandOpenConnectionFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to {0} has detected the Lenovo Auto Scroll Utility running on this system. This utility is known to cause problems with {0}. It is recommended that you disable or uninstall it.. + /// + internal static string CompatibilityLenovoAutoScrollUtilityDetected { + get { + return ResourceManager.GetString("CompatibilityLenovoAutoScrollUtilityDetected", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Compatibility problem detected. + /// + internal static string CompatibilityProblemDetected { + get { + return ResourceManager.GetString("CompatibilityProblemDetected", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Compression. + /// + internal static string Compression { + get { + return ResourceManager.GetString("Compression", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Config. + /// + internal static string Config { + get { + return ResourceManager.GetString("Config", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to btnIcon_Click failed!. + /// + internal static string ConfigPropertyGridButtonIconClickFailed { + get { + return ResourceManager.GetString("ConfigPropertyGridButtonIconClickFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to ShowHideGridItems failed!. + /// + internal static string ConfigPropertyGridHideItemsFailed { + get { + return ResourceManager.GetString("ConfigPropertyGridHideItemsFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to IconMenu_Click failed!. + /// + internal static string ConfigPropertyGridMenuClickFailed { + get { + return ResourceManager.GetString("ConfigPropertyGridMenuClickFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Property Grid object failed!. + /// + internal static string ConfigPropertyGridObjectFailed { + get { + return ResourceManager.GetString("ConfigPropertyGridObjectFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SetHostStatus failed!. + /// + internal static string ConfigPropertyGridSetHostStatusFailed { + get { + return ResourceManager.GetString("ConfigPropertyGridSetHostStatusFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to pGrid_PopertyValueChanged failed!. + /// + internal static string ConfigPropertyGridValueFailed { + get { + return ResourceManager.GetString("ConfigPropertyGridValueFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Config UI load failed!. + /// + internal static string ConfigUiLoadFailed { + get { + return ResourceManager.GetString("ConfigUiLoadFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Create a New Connection File. + /// + internal static string ConfigurationCreateNew { + get { + return ResourceManager.GetString("ConfigurationCreateNew", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use a Custom File Path. + /// + internal static string ConfigurationCustomPath { + get { + return ResourceManager.GetString("ConfigurationCustomPath", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Import an Existing File. + /// + internal static string ConfigurationImportFile { + get { + return ResourceManager.GetString("ConfigurationImportFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Are you sure you want to close all connections except for "{0}"?. + /// + internal static string ConfirmCloseConnectionOthersInstruction { + get { + return ResourceManager.GetString("ConfirmCloseConnectionOthersInstruction", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Are you sure you want to close the panel, "{0}"? Any connections that it contains will also be closed.. + /// + internal static string ConfirmCloseConnectionPanelMainInstruction { + get { + return ResourceManager.GetString("ConfirmCloseConnectionPanelMainInstruction", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Are you sure you want to delete the credential record, {0}?. + /// + internal static string ConfirmDeleteCredentialRecord { + get { + return ResourceManager.GetString("ConfirmDeleteCredentialRecord", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Are you sure you want to delete the external tool, "{0}"?. + /// + internal static string ConfirmDeleteExternalTool { + get { + return ResourceManager.GetString("ConfirmDeleteExternalTool", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Are you sure you want to delete the {0} selected external tools?. + /// + internal static string ConfirmDeleteExternalToolMultiple { + get { + return ResourceManager.GetString("ConfirmDeleteExternalToolMultiple", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Are you sure you want to delete the connection, "{0}"?. + /// + internal static string ConfirmDeleteNodeConnection { + get { + return ResourceManager.GetString("ConfirmDeleteNodeConnection", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Are you sure you want to delete the empty folder, "{0}"?. + /// + internal static string ConfirmDeleteNodeFolder { + get { + return ResourceManager.GetString("ConfirmDeleteNodeFolder", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Are you sure you want to delete the folder, "{0}"? Any folders or connections that it contains will also be deleted.. + /// + internal static string ConfirmDeleteNodeFolderNotEmpty { + get { + return ResourceManager.GetString("ConfirmDeleteNodeFolderNotEmpty", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do you want to close all open connections?. + /// + internal static string ConfirmExitMainInstruction { + get { + return ResourceManager.GetString("ConfirmExitMainInstruction", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Are you sure you want to reset the panels to their default layout?. + /// + internal static string ConfirmResetLayout { + get { + return ResourceManager.GetString("ConfirmResetLayout", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connect. + /// + internal static string Connect { + get { + return ResourceManager.GetString("Connect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connect in fullscreen mode. + /// + internal static string ConnectInFullscreen { + get { + return ResourceManager.GetString("ConnectInFullscreen", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connecting.... + /// + internal static string Connecting { + get { + return ResourceManager.GetString("Connecting", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connect in View Only mode. + /// + internal static string ConnectInViewOnlyMode { + get { + return ResourceManager.GetString("ConnectInViewOnlyMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connection. + /// + internal static string Connection { + get { + return ResourceManager.GetString("Connection", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Protocol Event Connected. + /// + internal static string ConnectionEventConnected { + get { + return ResourceManager.GetString("ConnectionEventConnected", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connection to "{0}" via "{1}" established by user "{2}" (Description: "{3}"; User Field: "{4}"). + /// + internal static string ConnectionEventConnectedDetail { + get { + return ResourceManager.GetString("ConnectionEventConnectedDetail", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to A connection protocol error occurred. Host: "{1}"; Error code: "{2}"; Error Description: "{0}". + /// + internal static string ConnectionEventErrorOccured { + get { + return ResourceManager.GetString("ConnectionEventErrorOccured", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connection failed!. + /// + internal static string ConnectionFailed { + get { + return ResourceManager.GetString("ConnectionFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The connection file could not be found.. + /// + internal static string ConnectionFileNotFound { + get { + return ResourceManager.GetString("ConnectionFileNotFound", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Opening connection failed!. + /// + internal static string ConnectionOpenFailed { + get { + return ResourceManager.GetString("ConnectionOpenFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cannot open connection: No hostname specified!. + /// + internal static string ConnectionOpenFailedNoHostname { + get { + return ResourceManager.GetString("ConnectionOpenFailedNoHostname", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connection Panels. + /// + internal static string ConnectionPanels { + get { + return ResourceManager.GetString("ConnectionPanels", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connections. + /// + internal static string Connections { + get { + return ResourceManager.GetString("Connections", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Daily. + /// + internal static string ConnectionsBackupFrequencyDaily { + get { + return ResourceManager.GetString("ConnectionsBackupFrequencyDaily", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Never backup connections. + /// + internal static string ConnectionsBackupFrequencyNever { + get { + return ResourceManager.GetString("ConnectionsBackupFrequencyNever", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to On Edit. + /// + internal static string ConnectionsBackupFrequencyOnEdit { + get { + return ResourceManager.GetString("ConnectionsBackupFrequencyOnEdit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to On Exit. + /// + internal static string ConnectionsBackupFrequencyOnExit { + get { + return ResourceManager.GetString("ConnectionsBackupFrequencyOnExit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Weekly. + /// + internal static string ConnectionsBackupFrequencyWeekly { + get { + return ResourceManager.GetString("ConnectionsBackupFrequencyWeekly", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't set default port!. + /// + internal static string ConnectionSetDefaultPortFailed { + get { + return ResourceManager.GetString("ConnectionSetDefaultPortFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't create backup of connections file!. + /// + internal static string ConnectionsFileBackupFailed { + get { + return ResourceManager.GetString("ConnectionsFileBackupFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connections file "{0}" could not be loaded!. + /// + internal static string ConnectionsFileCouldNotBeLoaded { + get { + return ResourceManager.GetString("ConnectionsFileCouldNotBeLoaded", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connections file "{0}" could not be loaded! + ///Starting with new connections file.. + /// + internal static string ConnectionsFileCouldNotBeLoadedNew { + get { + return ResourceManager.GetString("ConnectionsFileCouldNotBeLoadedNew", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't save connections file as "{0}"!. + /// + internal static string ConnectionsFileCouldNotSaveAs { + get { + return ResourceManager.GetString("ConnectionsFileCouldNotSaveAs", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connection successful. + /// + internal static string ConnectionSuccessful { + get { + return ResourceManager.GetString("ConnectionSuccessful", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connect without credentials. + /// + internal static string ConnectNoCredentials { + get { + return ResourceManager.GetString("ConnectNoCredentials", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connect to console session. + /// + internal static string ConnectToConsoleSession { + get { + return ResourceManager.GetString("ConnectToConsoleSession", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connect (with options). + /// + internal static string ConnectWithOptions { + get { + return ResourceManager.GetString("ConnectWithOptions", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connection to {0} via {1} closed by user {2}.. + /// + internal static string ConnenctionClosedByUser { + get { + return ResourceManager.GetString("ConnenctionClosedByUser", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connection Event Closed. + /// + internal static string ConnenctionCloseEvent { + get { + return ResourceManager.GetString("ConnenctionCloseEvent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connection Event Closed failed!. + /// + internal static string ConnenctionCloseEventFailed { + get { + return ResourceManager.GetString("ConnenctionCloseEventFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Copy. + /// + internal static string Copy { + get { + return ResourceManager.GetString("Copy", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Copy All. + /// + internal static string CopyAll { + get { + return ResourceManager.GetString("CopyAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Copy Hostname. + /// + internal static string CopyHostname { + get { + return ResourceManager.GetString("CopyHostname", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't create new connections file!. + /// + internal static string CouldNotCreateNewConnectionsFile { + get { + return ResourceManager.GetString("CouldNotCreateNewConnectionsFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Could not find external tool with name "{0}". + /// + internal static string CouldNotFindExternalTool { + get { + return ResourceManager.GetString("CouldNotFindExternalTool", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Could not find ToolStrip control in FilteredPropertyGrid.. + /// + internal static string CouldNotFindToolStripInFilteredPropertyGrid { + get { + return ResourceManager.GetString("CouldNotFindToolStripInFilteredPropertyGrid", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Create an empty panel when mRemoteNG starts. + /// + internal static string CreateEmptyPanelOnStartUp { + get { + return ResourceManager.GetString("CreateEmptyPanelOnStartUp", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Credentials. + /// + internal static string Credentials { + get { + return ResourceManager.GetString("Credentials", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Credential not available. + /// + internal static string CredentialUnavailable { + get { + return ResourceManager.GetString("CredentialUnavailable", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Credits. + /// + internal static string Credits { + get { + return ResourceManager.GetString("Credits", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Ctrl-Alt-Del. + /// + internal static string CtrlAltDel { + get { + return ResourceManager.GetString("CtrlAltDel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Ctrl-Esc. + /// + internal static string CtrlEsc { + get { + return ResourceManager.GetString("CtrlEsc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Daily. + /// + internal static string Daily { + get { + return ResourceManager.GetString("Daily", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Database:. + /// + internal static string Database { + get { + return ResourceManager.GetString("Database", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Database '{0}' not available.. + /// + internal static string DatabaseNotAvailable { + get { + return ResourceManager.GetString("DatabaseNotAvailable", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Debug. + /// + internal static string Debug { + get { + return ResourceManager.GetString("Debug", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete. + /// + internal static string Delete { + get { + return ResourceManager.GetString("Delete", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete All. + /// + internal static string DeleteAll { + get { + return ResourceManager.GetString("DeleteAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Delete External Tool.... + /// + internal static string DeleteExternalTool { + get { + return ResourceManager.GetString("DeleteExternalTool", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Description. + /// + internal static string Description { + get { + return ResourceManager.GetString("Description", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Detect. + /// + internal static string Detect { + get { + return ResourceManager.GetString("Detect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disable Cursor blinking. + /// + internal static string DisableCursorBlinking { + get { + return ResourceManager.GetString("DisableCursorBlinking", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disable Cursor Shadow. + /// + internal static string DisableCursorShadow { + get { + return ResourceManager.GetString("DisableCursorShadow", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disable Full Window drag. + /// + internal static string DisableFullWindowDrag { + get { + return ResourceManager.GetString("DisableFullWindowDrag", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disable Menu Animations. + /// + internal static string DisableMenuAnimations { + get { + return ResourceManager.GetString("DisableMenuAnimations", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disconnect. + /// + internal static string Disconnect { + get { + return ResourceManager.GetString("Disconnect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disconnect All But This. + /// + internal static string DisconnectOthers { + get { + return ResourceManager.GetString("DisconnectOthers", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disconnect Tabs To The Right. + /// + internal static string DisconnectOthersRight { + get { + return ResourceManager.GetString("DisconnectOthersRight", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disk Drives. + /// + internal static string DiskDrives { + get { + return ResourceManager.GetString("DiskDrives", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Display. + /// + internal static string Display { + get { + return ResourceManager.GetString("Display", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Display Name. + /// + internal static string DisplayName { + get { + return ResourceManager.GetString("DisplayName", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Display Themes. + /// + internal static string DisplayThemes { + get { + return ResourceManager.GetString("DisplayThemes", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Display Wallpaper. + /// + internal static string DisplayWallpaper { + get { + return ResourceManager.GetString("DisplayWallpaper", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Domain. + /// + internal static string Domain { + get { + return ResourceManager.GetString("Domain", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Donate. + /// + internal static string Donate { + get { + return ResourceManager.GetString("Donate", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do not play. + /// + internal static string DoNotPlay { + get { + return ResourceManager.GetString("DoNotPlay", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do not trim spaces from usernames. + /// + internal static string DoNotTrimUsername { + get { + return ResourceManager.GetString("DoNotTrimUsername", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Don't connect to console session. + /// + internal static string DontConnectToConsoleSession { + get { + return ResourceManager.GetString("DontConnectToConsoleSession", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Don't connect if authentication fails. + /// + internal static string DontConnectWhenAuthFails { + get { + return ResourceManager.GetString("DontConnectWhenAuthFails", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Double click on tab closes it. + /// + internal static string DoubleClickTabClosesIt { + get { + return ResourceManager.GetString("DoubleClickTabClosesIt", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Download. + /// + internal static string Download { + get { + return ResourceManager.GetString("Download", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Download and Install. + /// + internal static string DownloadAndInstall { + get { + return ResourceManager.GetString("DownloadAndInstall", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Duplicate. + /// + internal static string Duplicate { + get { + return ResourceManager.GetString("Duplicate", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Duplicate Tab. + /// + internal static string DuplicateTab { + get { + return ResourceManager.GetString("DuplicateTab", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Dynamic. + /// + internal static string Dynamic { + get { + return ResourceManager.GetString("Dynamic", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do you want to continue with no password?. + /// + internal static string EmptyPasswordContinue { + get { + return ResourceManager.GetString("EmptyPasswordContinue", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to For empty Username, Password or Domain fields use:. + /// + internal static string EmptyUsernamePasswordDomainFields { + get { + return ResourceManager.GetString("EmptyUsernamePasswordDomainFields", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Desktop Composition. + /// + internal static string EnableDesktopComposition { + get { + return ResourceManager.GetString("EnableDesktopComposition", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Encoding. + /// + internal static string Encoding { + get { + return ResourceManager.GetString("Encoding", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Completely encrypt connection file. + /// + internal static string EncryptCompleteConnectionFile { + get { + return ResourceManager.GetString("EncryptCompleteConnectionFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Block Cipher Mode. + /// + internal static string EncryptionBlockCipherMode { + get { + return ResourceManager.GetString("EncryptionBlockCipherMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Encryption Engine. + /// + internal static string EncryptionEngine { + get { + return ResourceManager.GetString("EncryptionEngine", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Key Derivation Function Iterations. + /// + internal static string EncryptionKeyDerivationIterations { + get { + return ResourceManager.GetString("EncryptionKeyDerivationIterations", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Encryption Test. + /// + internal static string EncryptionTest { + get { + return ResourceManager.GetString("EncryptionTest", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Encrypting {0} entries using {1}/{2} and {3} iterations took {4} seconds.. + /// + internal static string EncryptionTestResultMessage { + get { + return ResourceManager.GetString("EncryptionTestResultMessage", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Environment. + /// + internal static string Environment { + get { + return ResourceManager.GetString("Environment", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to AddExternalToolsToToolBar (frmMain) failed. {0}. + /// + internal static string ErrorAddExternalToolsToToolBarFailed { + get { + return ResourceManager.GetString("ErrorAddExternalToolsToToolBarFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to AddFolder (UI.Window.ConnectionTreeWindow) failed. {0}. + /// + internal static string ErrorAddFolderFailed { + get { + return ResourceManager.GetString("ErrorAddFolderFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The database version {0} is not compatible with this version of {1}.. + /// + internal static string ErrorBadDatabaseVersion { + get { + return ResourceManager.GetString("ErrorBadDatabaseVersion", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The connection list could not be saved.. + /// + internal static string ErrorConnectionListSaveFailed { + get { + return ResourceManager.GetString("ErrorConnectionListSaveFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to PuTTY could not be launched.. + /// + internal static string ErrorCouldNotLaunchPutty { + get { + return ResourceManager.GetString("ErrorCouldNotLaunchPutty", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Decryption failed. {0}. + /// + internal static string ErrorDecryptionFailed { + get { + return ResourceManager.GetString("ErrorDecryptionFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Encryption failed. {0}. + /// + internal static string ErrorEncryptionFailed { + get { + return ResourceManager.GetString("ErrorEncryptionFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The Windows security setting, "System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing", is enabled. + /// + ///See the Microsoft Support article at http://support.microsoft.com/kb/811833 for more information. + /// + ///{0} is not fully FIPS compliant. Click OK to proceed at your own discretion, or Cancel to Exit.. + /// + internal static string ErrorFipsPolicyIncompatible { + get { + return ResourceManager.GetString("ErrorFipsPolicyIncompatible", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Errors. + /// + internal static string Errors { + get { + return ResourceManager.GetString("Errors", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The startup connection file could not be loaded.{0}{0}{2}{0}{3}{0}{0}In order to prevent data loss, {1} will now exit.. + /// + internal static string ErrorStartupConnectionFileLoad { + get { + return ResourceManager.GetString("ErrorStartupConnectionFileLoad", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VerifyDatabaseVersion (Config.Connections.Save) failed. {0}. + /// + internal static string ErrorVerifyDatabaseVersionFailed { + get { + return ResourceManager.GetString("ErrorVerifyDatabaseVersionFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This exception will force mRemoteNG to close. + /// + internal static string ExceptionForcesmRemoteNGToClose { + get { + return ResourceManager.GetString("ExceptionForcesmRemoteNGToClose", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Exception Message. + /// + internal static string ExceptionMessage { + get { + return ResourceManager.GetString("ExceptionMessage", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Exit. + /// + internal static string Exit { + get { + return ResourceManager.GetString("Exit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Expand all folders. + /// + internal static string ExpandAllFolders { + get { + return ResourceManager.GetString("ExpandAllFolders", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Experimental. + /// + internal static string Experimental { + get { + return ResourceManager.GetString("Experimental", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Export. + /// + internal static string Export { + get { + return ResourceManager.GetString("Export", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Export everything. + /// + internal static string ExportEverything { + get { + return ResourceManager.GetString("ExportEverything", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Export File. + /// + internal static string ExportFile { + get { + return ResourceManager.GetString("ExportFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Export Items. + /// + internal static string ExportItems { + get { + return ResourceManager.GetString("ExportItems", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Export Properties. + /// + internal static string ExportProperties { + get { + return ResourceManager.GetString("ExportProperties", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Export the currently selected connection. + /// + internal static string ExportSelectedConnection { + get { + return ResourceManager.GetString("ExportSelectedConnection", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Export the currently selected folder. + /// + internal static string ExportSelectedFolder { + get { + return ResourceManager.GetString("ExportSelectedFolder", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to External Tool. + /// + internal static string ExternalTool { + get { + return ResourceManager.GetString("ExternalTool", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to External Tool After. + /// + internal static string ExternalToolAfter { + get { + return ResourceManager.GetString("ExternalToolAfter", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to External Tool Before. + /// + internal static string ExternalToolBefore { + get { + return ResourceManager.GetString("ExternalToolBefore", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to New External Tool. + /// + internal static string ExternalToolDefaultName { + get { + return ResourceManager.GetString("ExternalToolDefaultName", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to External Tool Properties. + /// + internal static string ExternalToolProperties { + get { + return ResourceManager.GetString("ExternalToolProperties", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to External Tools Toolbar. + /// + internal static string ExternalToolsToolbar { + get { + return ResourceManager.GetString("ExternalToolsToolbar", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Favorite. + /// + internal static string Favorite { + get { + return ResourceManager.GetString("Favorite", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Favorites. + /// + internal static string Favorites { + get { + return ResourceManager.GetString("Favorites", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to File &Format:. + /// + internal static string FileFormat { + get { + return ResourceManager.GetString("FileFormat", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Filename. + /// + internal static string Filename { + get { + return ResourceManager.GetString("Filename", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Files. + /// + internal static string Files { + get { + return ResourceManager.GetString("Files", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to All Files (*.*). + /// + internal static string FilterAll { + get { + return ResourceManager.GetString("FilterAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to All importable files. + /// + internal static string FilterAllImportable { + get { + return ResourceManager.GetString("FilterAllImportable", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Application Files (*.exe). + /// + internal static string FilterApplication { + get { + return ResourceManager.GetString("FilterApplication", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemote CSV Files (*.csv). + /// + internal static string FiltermRemoteCSV { + get { + return ResourceManager.GetString("FiltermRemoteCSV", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemote XML Files (*.xml). + /// + internal static string FiltermRemoteXML { + get { + return ResourceManager.GetString("FiltermRemoteXML", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to PuTTY Connection Manager files. + /// + internal static string FilterPuttyConnectionManager { + get { + return ResourceManager.GetString("FilterPuttyConnectionManager", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Remote Desktop Connection Manager files (*.rdg). + /// + internal static string FilterRdgFiles { + get { + return ResourceManager.GetString("FilterRdgFiles", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Files (*.rdp). + /// + internal static string FilterRDP { + get { + return ResourceManager.GetString("FilterRDP", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Filter search matches in connection tree. + /// + internal static string FilterSearchMatchesInConnectionTree { + get { + return ResourceManager.GetString("FilterSearchMatchesInConnectionTree", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to First IP. + /// + internal static string FirstIp { + get { + return ResourceManager.GetString("FirstIp", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to First Port. + /// + internal static string FirstPort { + get { + return ResourceManager.GetString("FirstPort", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Fit To Panel. + /// + internal static string FitToPanel { + get { + return ResourceManager.GetString("FitToPanel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Font Smoothing. + /// + internal static string FontSmoothing { + get { + return ResourceManager.GetString("FontSmoothing", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Inherit {0}. + /// + internal static string FormatInherit { + get { + return ResourceManager.GetString("FormatInherit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Description of inherited property: {0}. + /// + internal static string FormatInheritDescription { + get { + return ResourceManager.GetString("FormatInheritDescription", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Free. + /// + internal static string Free { + get { + return ResourceManager.GetString("Free", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Fullscreen. + /// + internal static string Fullscreen { + get { + return ResourceManager.GetString("Fullscreen", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Gateway. + /// + internal static string Gateway { + get { + return ResourceManager.GetString("Gateway", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to General. + /// + internal static string General { + get { + return ResourceManager.GetString("General", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An error occured while loading the connection entry for "{0}" from "{1}". {2}. + /// + internal static string GetConnectionInfoFromXmlFailed { + get { + return ResourceManager.GetString("GetConnectionInfoFromXmlFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Automatic Reconnect. + /// + internal static string GroupboxAutomaticReconnect { + get { + return ResourceManager.GetString("GroupboxAutomaticReconnect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemoteNG Help. + /// + internal static string HelpContents { + get { + return ResourceManager.GetString("HelpContents", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to High. + /// + internal static string High { + get { + return ResourceManager.GetString("High", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Host. + /// + internal static string Host { + get { + return ResourceManager.GetString("Host", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Hostname:. + /// + internal static string Hostname { + get { + return ResourceManager.GetString("Hostname", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Hostname/IP. + /// + internal static string HostnameIp { + get { + return ResourceManager.GetString("HostnameIp", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to HTTP. + /// + internal static string Http { + get { + return ResourceManager.GetString("Http", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Edge Chromium. + /// + internal static string HttpCEF { + get { + return ResourceManager.GetString("HttpCEF", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to HTTP Connect Failed!. + /// + internal static string HttpConnectFailed { + get { + return ResourceManager.GetString("HttpConnectFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't create new HTTP Connection!. + /// + internal static string HttpConnectionFailed { + get { + return ResourceManager.GetString("HttpConnectionFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Changing HTTP Document Tile Failed!. + /// + internal static string HttpDocumentTileChangeFailed { + get { + return ResourceManager.GetString("HttpDocumentTileChangeFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Failed to contruct the URL to load. + /// + internal static string HttpFailedUrlBuild { + get { + return ResourceManager.GetString("HttpFailedUrlBuild", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Internet Explorer. + /// + internal static string HttpInternetExplorer { + get { + return ResourceManager.GetString("HttpInternetExplorer", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to HTTPS. + /// + internal static string Https { + get { + return ResourceManager.GetString("Https", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Set HTTP Props failed!. + /// + internal static string HttpSetPropsFailed { + get { + return ResourceManager.GetString("HttpSetPropsFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Icon. + /// + internal static string Icon { + get { + return ResourceManager.GetString("Icon", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Identify quick connect tabs by adding the prefix "Quick:". + /// + internal static string IdentifyQuickConnectTabs { + get { + return ResourceManager.GetString("IdentifyQuickConnectTabs", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Import from Active Directory. + /// + internal static string ImportAD { + get { + return ResourceManager.GetString("ImportAD", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An error occurred while importing the file "{0}".. + /// + internal static string ImportFileFailedContent { + get { + return ResourceManager.GetString("ImportFileFailedContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Import from &File.... + /// + internal static string ImportFromFile { + get { + return ResourceManager.GetString("ImportFromFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Import from Port Scan. + /// + internal static string ImportPortScan { + get { + return ResourceManager.GetString("ImportPortScan", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Import sub OUs. + /// + internal static string ImportSubOUs { + get { + return ResourceManager.GetString("ImportSubOUs", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Informations. + /// + internal static string Informations { + get { + return ResourceManager.GetString("Informations", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Inheritance. + /// + internal static string Inheritance { + get { + return ResourceManager.GetString("Inheritance", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Dispose of Int App process failed!. + /// + internal static string IntAppDisposeFailed { + get { + return ResourceManager.GetString("IntAppDisposeFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Int App Focus Failed!. + /// + internal static string IntAppFocusFailed { + get { + return ResourceManager.GetString("IntAppFocusFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Int App Handle: {0}. + /// + internal static string IntAppHandle { + get { + return ResourceManager.GetString("IntAppHandle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Killing Int App Process failed!. + /// + internal static string IntAppKillFailed { + get { + return ResourceManager.GetString("IntAppKillFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Int App Resize failed!. + /// + internal static string IntAppResizeFailed { + get { + return ResourceManager.GetString("IntAppResizeFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to --- IntApp Stuff ---. + /// + internal static string IntAppStuff { + get { + return ResourceManager.GetString("IntAppStuff", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Int App Title: {0}. + /// + internal static string IntAppTitle { + get { + return ResourceManager.GetString("IntAppTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to (Automatically Detect). + /// + internal static string LanguageDefault { + get { + return ResourceManager.GetString("LanguageDefault", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to {0} must be restarted before changes to the language will take effect.. + /// + internal static string LanguageRestartRequired { + get { + return ResourceManager.GetString("LanguageRestartRequired", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Language. + /// + internal static string LanguageString { + get { + return ResourceManager.GetString("LanguageString", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Last IP. + /// + internal static string LastIp { + get { + return ResourceManager.GetString("LastIp", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Last Port. + /// + internal static string LastPort { + get { + return ResourceManager.GetString("LastPort", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Launch External Tool. + /// + internal static string LaunchExternalTool { + get { + return ResourceManager.GetString("LaunchExternalTool", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to License. + /// + internal static string License { + get { + return ResourceManager.GetString("License", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Load Balance Info. + /// + internal static string LoadBalanceInfo { + get { + return ResourceManager.GetString("LoadBalanceInfo", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use UTF8 encoding for RDP "Load Balance Info" property. + /// + internal static string LoadBalanceInfoUseUtf8 { + get { + return ResourceManager.GetString("LoadBalanceInfoUseUtf8", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Load from SQL failed. + /// + internal static string LoadFromSqlFailed { + get { + return ResourceManager.GetString("LoadFromSqlFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The connection information could not be loaded from the SQL server.. + /// + internal static string LoadFromSqlFailedContent { + get { + return ResourceManager.GetString("LoadFromSqlFailedContent", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Load From XML failed!. + /// + internal static string LoadFromXmlFailed { + get { + return ResourceManager.GetString("LoadFromXmlFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Local file. + /// + internal static string LocalFile { + get { + return ResourceManager.GetString("LocalFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Local file does not exist!. + /// + internal static string LocalFileDoesNotExist { + get { + return ResourceManager.GetString("LocalFileDoesNotExist", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Lock toolbar positions. + /// + internal static string LockToolbars { + get { + return ResourceManager.GetString("LockToolbars", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Log file path. + /// + internal static string LogFilePath { + get { + return ResourceManager.GetString("LogFilePath", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Logging. + /// + internal static string Logging { + get { + return ResourceManager.GetString("Logging", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Login failed for user '{0}'.. + /// + internal static string LoginFailedForUser { + get { + return ResourceManager.GetString("LoginFailedForUser", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Log these message types. + /// + internal static string LogTheseMessageTypes { + get { + return ResourceManager.GetString("LogTheseMessageTypes", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Log to application directory. + /// + internal static string LogToAppDir { + get { + return ResourceManager.GetString("LogToAppDir", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to MAC Address. + /// + internal static string MacAddress { + get { + return ResourceManager.GetString("MacAddress", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Medium. + /// + internal static string Medium { + get { + return ResourceManager.GetString("Medium", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Message. + /// + internal static string Message { + get { + return ResourceManager.GetString("Message", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Minimize to notification area. + /// + internal static string MinimizeToSysTray { + get { + return ResourceManager.GetString("MinimizeToSysTray", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Minutes to Idle. + /// + internal static string MinutesToIdleTimeout { + get { + return ResourceManager.GetString("MinutesToIdleTimeout", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Miscellaneous. + /// + internal static string Miscellaneous { + get { + return ResourceManager.GetString("Miscellaneous", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Monthly. + /// + internal static string Monthly { + get { + return ResourceManager.GetString("Monthly", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Move down. + /// + internal static string MoveDown { + get { + return ResourceManager.GetString("MoveDown", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Move up. + /// + internal static string MoveUp { + get { + return ResourceManager.GetString("MoveUp", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemoteNG CSV. + /// + internal static string MremoteNgCsv { + get { + return ResourceManager.GetString("MremoteNgCsv", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemoteNG Unhandled Exception. + /// + internal static string mRemoteNGUnhandledException { + get { + return ResourceManager.GetString("mRemoteNGUnhandledException", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemoteNG XML. + /// + internal static string MremoteNgXml { + get { + return ResourceManager.GetString("MremoteNgXml", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Multi SSH:. + /// + internal static string MultiSsh { + get { + return ResourceManager.GetString("MultiSsh", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Multi SSH toolbar. + /// + internal static string MultiSshToolbar { + get { + return ResourceManager.GetString("MultiSshToolbar", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Press ENTER to send. Ctrl+C is sent immediately.. + /// + internal static string MultiSshToolTip { + get { + return ResourceManager.GetString("MultiSshToolTip", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Must Be Between 0 and 255. + /// + internal static string MustBeBetween0And255 { + get { + return ResourceManager.GetString("MustBeBetween0And255", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to My current credentials (Windows logon information). + /// + internal static string MyCurrentWindowsCreds { + get { + return ResourceManager.GetString("MyCurrentWindowsCreds", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Name. + /// + internal static string Name { + get { + return ResourceManager.GetString("Name", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Never. + /// + internal static string Never { + get { + return ResourceManager.GetString("Never", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to New Connection. + /// + internal static string NewConnection { + get { + return ResourceManager.GetString("NewConnection", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to New Connection File. + /// + internal static string NewConnectionFile { + get { + return ResourceManager.GetString("NewConnectionFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to New External Tool. + /// + internal static string NewExternalTool { + get { + return ResourceManager.GetString("NewExternalTool", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to New Folder. + /// + internal static string NewFolder { + get { + return ResourceManager.GetString("NewFolder", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to New Panel. + /// + internal static string NewPanel { + get { + return ResourceManager.GetString("NewPanel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to New Title. + /// + internal static string NewTitle { + get { + return ResourceManager.GetString("NewTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No. + /// + internal static string No { + get { + return ResourceManager.GetString("No", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No сompression. + /// + internal static string NoCompression { + get { + return ResourceManager.GetString("NoCompression", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This node is already in this folder.. + /// + internal static string NodeAlreadyInFolder { + get { + return ResourceManager.GetString("NodeAlreadyInFolder", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cannot drag node onto itself.. + /// + internal static string NodeCannotDragOnSelf { + get { + return ResourceManager.GetString("NodeCannotDragOnSelf", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cannot drag parent node onto child.. + /// + internal static string NodeCannotDragParentOnChild { + get { + return ResourceManager.GetString("NodeCannotDragParentOnChild", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This node is not draggable.. + /// + internal static string NodeNotDraggable { + get { + return ResourceManager.GetString("NodeNotDraggable", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No ext. app specified.. + /// + internal static string NoExtAppDefined { + get { + return ResourceManager.GetString("NoExtAppDefined", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to None. + /// + internal static string None { + get { + return ResourceManager.GetString("None", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Normal. + /// + internal static string Normal { + get { + return ResourceManager.GetString("Normal", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No SmartSize. + /// + internal static string NoSmartSize { + get { + return ResourceManager.GetString("NoSmartSize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Notifications. + /// + internal static string Notifications { + get { + return ResourceManager.GetString("Notifications", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to No update available. + /// + internal static string NoUpdateAvailable { + get { + return ResourceManager.GetString("NoUpdateAvailable", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to You are trying to load a connection file that was created using an very early version of mRemote, this could result in an runtime error. + ///If you run into such an error, please create a new connection file!. + /// + internal static string OldConffile { + get { + return ResourceManager.GetString("OldConffile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Open a different file. + /// + internal static string OpenADifferentFile { + get { + return ResourceManager.GetString("OpenADifferentFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Open Connection File.... + /// + internal static string OpenConnectionFile { + get { + return ResourceManager.GetString("OpenConnectionFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Open file. + /// + internal static string OpenFile { + get { + return ResourceManager.GetString("OpenFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Opening Command. + /// + internal static string OpeningCommand { + get { + return ResourceManager.GetString("OpeningCommand", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Open new tab to the right of the currently selected tab. + /// + internal static string OpenNewTabRight { + get { + return ResourceManager.GetString("OpenNewTabRight", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Open Ports. + /// + internal static string OpenPorts { + get { + return ResourceManager.GetString("OpenPorts", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Options. + /// + internal static string Options { + get { + return ResourceManager.GetString("Options", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemoteNG Options. + /// + internal static string OptionsPageTitle { + get { + return ResourceManager.GetString("OptionsPageTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Testing.... + /// + internal static string OptionsProxyTesting { + get { + return ResourceManager.GetString("OptionsProxyTesting", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Warning: Restart is required to commit any theme configuration change.. + /// + internal static string OptionsThemeChangeWarning { + get { + return ResourceManager.GetString("OptionsThemeChangeWarning", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do you really want to delete the theme?. + /// + internal static string OptionsThemeDeleteConfirmation { + get { + return ResourceManager.GetString("OptionsThemeDeleteConfirmation", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to New theme name. + /// + internal static string OptionsThemeNewThemeCaption { + get { + return ResourceManager.GetString("OptionsThemeNewThemeCaption", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Cannot create theme, name already present or special characters in the name. + /// + internal static string OptionsThemeNewThemeError { + get { + return ResourceManager.GetString("OptionsThemeNewThemeError", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Type the new theme name. + /// + internal static string OptionsThemeNewThemeText { + get { + return ResourceManager.GetString("OptionsThemeNewThemeText", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Out Of Range. + /// + internal static string OutOfRange { + get { + return ResourceManager.GetString("OutOfRange", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Panel. + /// + internal static string Panel { + get { + return ResourceManager.GetString("Panel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Panel Handle: {0}. + /// + internal static string PanelHandle { + get { + return ResourceManager.GetString("PanelHandle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Panel Name. + /// + internal static string PanelName { + get { + return ResourceManager.GetString("PanelName", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Password. + /// + internal static string Password { + get { + return ResourceManager.GetString("Password", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Password must contain at least {0} of the following characters: {1}. + /// + internal static string PasswordConstainsSpecialCharactersConstraintHint { + get { + return ResourceManager.GetString("PasswordConstainsSpecialCharactersConstraintHint", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Password must contain at least {0} lower case character(s). + /// + internal static string PasswordContainsLowerCaseConstraintHint { + get { + return ResourceManager.GetString("PasswordContainsLowerCaseConstraintHint", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Password must contain at least {0} number(s). + /// + internal static string PasswordContainsNumbersConstraint { + get { + return ResourceManager.GetString("PasswordContainsNumbersConstraint", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Password must contain at least {0} upper case character(s). + /// + internal static string PasswordContainsUpperCaseConstraintHint { + get { + return ResourceManager.GetString("PasswordContainsUpperCaseConstraintHint", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Password length must be between {0} and {1}. + /// + internal static string PasswordLengthConstraintHint { + get { + return ResourceManager.GetString("PasswordLengthConstraintHint", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Password protect. + /// + internal static string PasswordProtect { + get { + return ResourceManager.GetString("PasswordProtect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Both passwords must match.. + /// + internal static string PasswordStatusMustMatch { + get { + return ResourceManager.GetString("PasswordStatusMustMatch", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The password must be at least 3 characters long.. + /// + internal static string PasswordStatusTooShort { + get { + return ResourceManager.GetString("PasswordStatusTooShort", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Place search bar above connection tree. + /// + internal static string PlaceSearchBarAboveConnectionTree { + get { + return ResourceManager.GetString("PlaceSearchBarAboveConnectionTree", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Please fill all fields. + /// + internal static string PleaseFillAllFields { + get { + return ResourceManager.GetString("PleaseFillAllFields", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Popups. + /// + internal static string Popups { + get { + return ResourceManager.GetString("Popups", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Port. + /// + internal static string Port { + get { + return ResourceManager.GetString("Port", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Portable Edition. + /// + internal static string PortableEdition { + get { + return ResourceManager.GetString("PortableEdition", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Ports. + /// + internal static string Ports { + get { + return ResourceManager.GetString("Ports", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Port Scan. + /// + internal static string PortScan { + get { + return ResourceManager.GetString("PortScan", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Port scan complete.. + /// + internal static string PortScanComplete { + get { + return ResourceManager.GetString("PortScanComplete", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't load PortScan panel!. + /// + internal static string PortScanCouldNotLoadPanel { + get { + return ResourceManager.GetString("PortScanCouldNotLoadPanel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to PowerShell. + /// + internal static string PowerShell { + get { + return ResourceManager.GetString("PowerShell", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Printers. + /// + internal static string Printers { + get { + return ResourceManager.GetString("Printers", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Properties. + /// + internal static string Properties { + get { + return ResourceManager.GetString("Properties", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Toggle all inheritance options.. + /// + internal static string PropertyDescriptionAll { + get { + return ResourceManager.GetString("PropertyDescriptionAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select which authentication level this connection should use.. + /// + internal static string PropertyDescriptionAuthenticationLevel { + get { + return ResourceManager.GetString("PropertyDescriptionAuthenticationLevel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select how you want to authenticate against the VNC server.. + /// + internal static string PropertyDescriptionAuthenticationMode { + get { + return ResourceManager.GetString("PropertyDescriptionAuthenticationMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether to automatically resize the connection when the window is resized or when fullscreen mode is toggled. Requires RDC 8.0 or higher.. + /// + internal static string PropertyDescriptionAutomaticResize { + get { + return ResourceManager.GetString("PropertyDescriptionAutomaticResize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether to use bitmap caching or not.. + /// + internal static string PropertyDescriptionCacheBitmaps { + get { + return ResourceManager.GetString("PropertyDescriptionCacheBitmaps", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select the colour quality to be used.. + /// + internal static string PropertyDescriptionColors { + get { + return ResourceManager.GetString("PropertyDescriptionColors", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select the compression value to be used.. + /// + internal static string PropertyDescriptionCompression { + get { + return ResourceManager.GetString("PropertyDescriptionCompression", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Put your notes or a description for the host here.. + /// + internal static string PropertyDescriptionDescription { + get { + return ResourceManager.GetString("PropertyDescriptionDescription", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Determines whether cursor flashes should be disabled.. + /// + internal static string PropertyDescriptionDisableCursorBlinking { + get { + return ResourceManager.GetString("PropertyDescriptionDisableCursorBlinking", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Determines whether a mouse shadow should be visible.. + /// + internal static string PropertyDescriptionDisableCursorShadow { + get { + return ResourceManager.GetString("PropertyDescriptionDisableCursorShadow", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Determines whether window content is displayed when you drag the window to a new location.. + /// + internal static string PropertyDescriptionDisableFullWindowDrag { + get { + return ResourceManager.GetString("PropertyDescriptionDisableFullWindowDrag", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Determines whether menus and windows can be displayed with animation effects in the remote session.. + /// + internal static string PropertyDescriptionDisableMenuAnimations { + get { + return ResourceManager.GetString("PropertyDescriptionDisableMenuAnimations", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select yes if the theme of the remote host should be displayed.. + /// + internal static string PropertyDescriptionDisplayThemes { + get { + return ResourceManager.GetString("PropertyDescriptionDisplayThemes", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select yes if the wallpaper of the remote host should be displayed.. + /// + internal static string PropertyDescriptionDisplayWallpaper { + get { + return ResourceManager.GetString("PropertyDescriptionDisplayWallpaper", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter your domain.. + /// + internal static string PropertyDescriptionDomain { + get { + return ResourceManager.GetString("PropertyDescriptionDomain", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether to use desktop composition or not.. + /// + internal static string PropertyDescriptionEnableDesktopComposition { + get { + return ResourceManager.GetString("PropertyDescriptionEnableDesktopComposition", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether to use font smoothing or not.. + /// + internal static string PropertyDescriptionEnableFontSmoothing { + get { + return ResourceManager.GetString("PropertyDescriptionEnableFontSmoothing", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select the encoding mode to be used.. + /// + internal static string PropertyDescriptionEncoding { + get { + return ResourceManager.GetString("PropertyDescriptionEncoding", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select the external tool to be started.. + /// + internal static string PropertyDescriptionExternalTool { + get { + return ResourceManager.GetString("PropertyDescriptionExternalTool", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select a external tool to be started after the disconnection to the remote host.. + /// + internal static string PropertyDescriptionExternalToolAfter { + get { + return ResourceManager.GetString("PropertyDescriptionExternalToolAfter", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select a external tool to be started before the connection to the remote host is established.. + /// + internal static string PropertyDescriptionExternalToolBefore { + get { + return ResourceManager.GetString("PropertyDescriptionExternalToolBefore", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show this connection in the favorites menu.. + /// + internal static string PropertyDescriptionFavorite { + get { + return ResourceManager.GetString("PropertyDescriptionFavorite", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter the hostname or ip you want to connect to.. + /// + internal static string PropertyDescriptionHostnameIp { + get { + return ResourceManager.GetString("PropertyDescriptionHostnameIp", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Choose a icon that will be displayed when connected to the host.. + /// + internal static string PropertyDescriptionIcon { + get { + return ResourceManager.GetString("PropertyDescriptionIcon", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specifies the load balancing information for use by load balancing routers to choose the best server.. + /// + internal static string PropertyDescriptionLoadBalanceInfo { + get { + return ResourceManager.GetString("PropertyDescriptionLoadBalanceInfo", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter the MAC address of the remote host if you wish to use it in an external tool.. + /// + internal static string PropertyDescriptionMACAddress { + get { + return ResourceManager.GetString("PropertyDescriptionMACAddress", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to This is the name that will be displayed in the connections tree.. + /// + internal static string PropertyDescriptionName { + get { + return ResourceManager.GetString("PropertyDescriptionName", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to A command to run on the remote server after successfully connecting.. + /// + internal static string PropertyDescriptionOpeningCommand { + get { + return ResourceManager.GetString("PropertyDescriptionOpeningCommand", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sets the panel in which the connection will open.. + /// + internal static string PropertyDescriptionPanel { + get { + return ResourceManager.GetString("PropertyDescriptionPanel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter your password.. + /// + internal static string PropertyDescriptionPassword { + get { + return ResourceManager.GetString("PropertyDescriptionPassword", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Set a password needed to encrypt the connection file with. You will be prompted to enter your passcode before starting mRemoteNG.. + /// + internal static string PropertyDescriptionPasswordProtect { + get { + return ResourceManager.GetString("PropertyDescriptionPasswordProtect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter the port the selected protocol is listening on.. + /// + internal static string PropertyDescriptionPort { + get { + return ResourceManager.GetString("PropertyDescriptionPort", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Choose the protocol mRemoteNG should use to connect to the host.. + /// + internal static string PropertyDescriptionProtocol { + get { + return ResourceManager.GetString("PropertyDescriptionProtocol", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select a PuTTY session to be used when connecting.. + /// + internal static string PropertyDescriptionPuttySession { + get { + return ResourceManager.GetString("PropertyDescriptionPuttySession", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specifies the domain name that a user provides to connect to the RD Gateway server.. + /// + internal static string PropertyDescriptionRDGatewayDomain { + get { + return ResourceManager.GetString("PropertyDescriptionRDGatewayDomain", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specifies the host name of the Remote Desktop Gateway server.. + /// + internal static string PropertyDescriptionRDGatewayHostname { + get { + return ResourceManager.GetString("PropertyDescriptionRDGatewayHostname", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specifies whether or not to log on to the gateway using the same username and password as the connection.. + /// + internal static string PropertyDescriptionRDGatewayUseConnectionCredentials { + get { + return ResourceManager.GetString("PropertyDescriptionRDGatewayUseConnectionCredentials", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specifies the user name that a user provides to connect to the RD Gateway server.. + /// + internal static string PropertyDescriptionRDGatewayUsername { + get { + return ResourceManager.GetString("PropertyDescriptionRDGatewayUsername", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether to receive an alert after the RDP session disconnects due to inactivity. + /// + internal static string PropertyDescriptionRDPAlertIdleTimeout { + get { + return ResourceManager.GetString("PropertyDescriptionRDPAlertIdleTimeout", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specifies the password of the Remote Desktop Gateway server.. + /// + internal static string PropertyDescriptionRdpGatewayPassword { + get { + return ResourceManager.GetString("PropertyDescriptionRdpGatewayPassword", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specifies when to use a Remote Desktop Gateway (RD Gateway) server.. + /// + internal static string PropertyDescriptionRdpGatewayUsageMethod { + get { + return ResourceManager.GetString("PropertyDescriptionRdpGatewayUsageMethod", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The number of minutes for the RDP session to sit idle before automatically disconnecting (for no limit use 0). + /// + internal static string PropertyDescriptionRDPMinutesToIdleTimeout { + get { + return ResourceManager.GetString("PropertyDescriptionRDPMinutesToIdleTimeout", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The program to be started on the remote server upon connection.. + /// + internal static string PropertyDescriptionRDPStartProgram { + get { + return ResourceManager.GetString("PropertyDescriptionRDPStartProgram", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specifies the working directory of the alternate shell.. + /// + internal static string PropertyDescriptionRDPStartProgramWorkDir { + get { + return ResourceManager.GetString("PropertyDescriptionRDPStartProgramWorkDir", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sets the version of RDP to use when opening connections.. + /// + internal static string PropertyDescriptionRdpVersion { + get { + return ResourceManager.GetString("PropertyDescriptionRdpVersion", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether the default audio input device on the remote machine should be redirected to this computer.. + /// + internal static string PropertyDescriptionRedirectAudioCapture { + get { + return ResourceManager.GetString("PropertyDescriptionRedirectAudioCapture", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether the clipboard should be shared.. + /// + internal static string PropertyDescriptionRedirectClipboard { + get { + return ResourceManager.GetString("PropertyDescriptionRedirectClipboard", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether local disk drives should be shown on the remote host.. + /// + internal static string PropertyDescriptionRedirectDrives { + get { + return ResourceManager.GetString("PropertyDescriptionRedirectDrives", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether key combinations (e.g. Alt-Tab) should be redirected to the remote host.. + /// + internal static string PropertyDescriptionRedirectKeys { + get { + return ResourceManager.GetString("PropertyDescriptionRedirectKeys", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether local ports (ie. com, parallel) should be shown on the remote host.. + /// + internal static string PropertyDescriptionRedirectPorts { + get { + return ResourceManager.GetString("PropertyDescriptionRedirectPorts", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether local printers should be shown on the remote host.. + /// + internal static string PropertyDescriptionRedirectPrinters { + get { + return ResourceManager.GetString("PropertyDescriptionRedirectPrinters", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select whether local smart cards should be available on the remote host.. + /// + internal static string PropertyDescriptionRedirectSmartCards { + get { + return ResourceManager.GetString("PropertyDescriptionRedirectSmartCards", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select how remote sound should be redirected.. + /// + internal static string PropertyDescriptionRedirectSounds { + get { + return ResourceManager.GetString("PropertyDescriptionRedirectSounds", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select one of the available rendering engines that will be used to display HTML.. + /// + internal static string PropertyDescriptionRenderingEngine { + get { + return ResourceManager.GetString("PropertyDescriptionRenderingEngine", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Choose the resolution or mode this connection will open in.. + /// + internal static string PropertyDescriptionResolution { + get { + return ResourceManager.GetString("PropertyDescriptionResolution", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select the SmartSize mode to be used.. + /// + internal static string PropertyDescriptionSmartSizeMode { + get { + return ResourceManager.GetString("PropertyDescriptionSmartSizeMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Choose the Sound Quality provided by the protocol: Dynamic, Medium, High. + /// + internal static string PropertyDescriptionSoundQuality { + get { + return ResourceManager.GetString("PropertyDescriptionSoundQuality", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Specify here additional options to be used for SSH connection. See putty documentation for further details.. + /// + internal static string PropertyDescriptionSshOptions { + get { + return ResourceManager.GetString("PropertyDescriptionSshOptions", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to For connection through a SSH tunnel (jump host) specify SSH connection to be used to establish SSH tunnel.. + /// + internal static string PropertyDescriptionSshTunnel { + get { + return ResourceManager.GetString("PropertyDescriptionSshTunnel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Start Program/alternate shell. + /// + internal static string PropertyDescriptionStartProgram { + get { + return ResourceManager.GetString("PropertyDescriptionStartProgram", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connect to the console session of the remote host.. + /// + internal static string PropertyDescriptionUseConsoleSession { + get { + return ResourceManager.GetString("PropertyDescriptionUseConsoleSession", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use the Credential Security Support Provider (CredSSP) for authentication if it is available.. + /// + internal static string PropertyDescriptionUseCredSsp { + get { + return ResourceManager.GetString("PropertyDescriptionUseCredSsp", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connect to a Hyper-V host with enhanced mode enabled.. + /// + internal static string PropertyDescriptionUseEnhancedMode { + get { + return ResourceManager.GetString("PropertyDescriptionUseEnhancedMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Feel free to enter any information you need here.. + /// + internal static string PropertyDescriptionUser1 { + get { + return ResourceManager.GetString("PropertyDescriptionUser1", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter your username.. + /// + internal static string PropertyDescriptionUsername { + get { + return ResourceManager.GetString("PropertyDescriptionUsername", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use VM ID to connect to VM running on Hyper-V.. + /// + internal static string PropertyDescriptionUseVmId { + get { + return ResourceManager.GetString("PropertyDescriptionUseVmId", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to If you want to establish a view only connection to the host select yes.. + /// + internal static string PropertyDescriptionViewOnly { + get { + return ResourceManager.GetString("PropertyDescriptionViewOnly", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The ID of the Hyper-V virtual machine to connect to.. + /// + internal static string PropertyDescriptionVmId { + get { + return ResourceManager.GetString("PropertyDescriptionVmId", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter the proxy address to be used.. + /// + internal static string PropertyDescriptionVNCProxyAddress { + get { + return ResourceManager.GetString("PropertyDescriptionVNCProxyAddress", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter your password for authenticating against the proxy.. + /// + internal static string PropertyDescriptionVNCProxyPassword { + get { + return ResourceManager.GetString("PropertyDescriptionVNCProxyPassword", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter the port the proxy server listens on.. + /// + internal static string PropertyDescriptionVNCProxyPort { + get { + return ResourceManager.GetString("PropertyDescriptionVNCProxyPort", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to If you use a proxy to tunnel VNC connections, select which type it is.. + /// + internal static string PropertyDescriptionVNCProxyType { + get { + return ResourceManager.GetString("PropertyDescriptionVNCProxyType", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Enter your username for authenticating against the proxy.. + /// + internal static string PropertyDescriptionVNCProxyUsername { + get { + return ResourceManager.GetString("PropertyDescriptionVNCProxyUsername", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Protocol. + /// + internal static string Protocol { + get { + return ResourceManager.GetString("Protocol", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Protocol Event Disconnected. Host: "{1}"; Protocol: "{2}" Message: "{0}". + /// + internal static string ProtocolEventDisconnected { + get { + return ResourceManager.GetString("ProtocolEventDisconnected", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Protocol Event Disconnected failed. + ///{0}. + /// + internal static string ProtocolEventDisconnectFailed { + get { + return ResourceManager.GetString("ProtocolEventDisconnectFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Protocol to import. + /// + internal static string ProtocolToImport { + get { + return ResourceManager.GetString("ProtocolToImport", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Proxy. + /// + internal static string Proxy { + get { + return ResourceManager.GetString("Proxy", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Proxy Address. + /// + internal static string ProxyAddress { + get { + return ResourceManager.GetString("ProxyAddress", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Proxy Password. + /// + internal static string ProxyPassword { + get { + return ResourceManager.GetString("ProxyPassword", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Proxy Port. + /// + internal static string ProxyPort { + get { + return ResourceManager.GetString("ProxyPort", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Proxy test failed!. + /// + internal static string ProxyTestFailed { + get { + return ResourceManager.GetString("ProxyTestFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Proxy test succeeded!. + /// + internal static string ProxyTestSucceeded { + get { + return ResourceManager.GetString("ProxyTestSucceeded", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Proxy Type. + /// + internal static string ProxyType { + get { + return ResourceManager.GetString("ProxyType", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Proxy Username. + /// + internal static string ProxyUsername { + get { + return ResourceManager.GetString("ProxyUsername", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Dispose of Putty process failed!. + /// + internal static string PuttyDisposeFailed { + get { + return ResourceManager.GetString("PuttyDisposeFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't set focus!. + /// + internal static string PuttyFocusFailed { + get { + return ResourceManager.GetString("PuttyFocusFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Putty Handle: {0}. + /// + internal static string PuttyHandle { + get { + return ResourceManager.GetString("PuttyHandle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Killing Putty Process failed!. + /// + internal static string PuttyKillFailed { + get { + return ResourceManager.GetString("PuttyKillFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Putty Resize Failed!. + /// + internal static string PuttyResizeFailed { + get { + return ResourceManager.GetString("PuttyResizeFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to PuTTY Saved Sessions. + /// + internal static string PuttySavedSessionsRootName { + get { + return ResourceManager.GetString("PuttySavedSessionsRootName", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to PuTTY Session. + /// + internal static string PuttySession { + get { + return ResourceManager.GetString("PuttySession", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to To configure PuTTY sessions click this button:. + /// + internal static string PuttySessionsConfig { + get { + return ResourceManager.GetString("PuttySessionsConfig", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to PuTTY Settings. + /// + internal static string PuttySettings { + get { + return ResourceManager.GetString("PuttySettings", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show PuTTY Settings Dialog failed!. + /// + internal static string PuttyShowSettingsDialogFailed { + get { + return ResourceManager.GetString("PuttyShowSettingsDialogFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to --- PuTTY Stuff ---. + /// + internal static string PuttyStuff { + get { + return ResourceManager.GetString("PuttyStuff", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Maximum PuTTY and integrated external tools wait time:. + /// + internal static string PuttyTimeout { + get { + return ResourceManager.GetString("PuttyTimeout", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to PuTTY Title: {0}. + /// + internal static string PuttyTitle { + get { + return ResourceManager.GetString("PuttyTitle", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Quick: {0}. + /// + internal static string Quick { + get { + return ResourceManager.GetString("Quick", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Quick Connect. + /// + internal static string QuickConnect { + get { + return ResourceManager.GetString("QuickConnect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Quick Connect Add Failed!. + /// + internal static string QuickConnectAddFailed { + get { + return ResourceManager.GetString("QuickConnectAddFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Creating quick connect failed. + /// + internal static string QuickConnectFailed { + get { + return ResourceManager.GetString("QuickConnectFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Quick Connect Toolbar. + /// + internal static string QuickConnectToolbar { + get { + return ResourceManager.GetString("QuickConnectToolbar", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Warn me only when e&xiting mRemoteNG. + /// + internal static string RadioCloseWarnExit { + get { + return ResourceManager.GetString("RadioCloseWarnExit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Warn me only when closing &multiple connections. + /// + internal static string RadioCloseWarnMultiple { + get { + return ResourceManager.GetString("RadioCloseWarnMultiple", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do &not warn me when closing connections. + /// + internal static string RadioCloseWarnNever { + get { + return ResourceManager.GetString("RadioCloseWarnNever", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RAW. + /// + internal static string Raw { + get { + return ResourceManager.GetString("Raw", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP. + /// + internal static string Rdp { + get { + return ResourceManager.GetString("Rdp", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 16777216 Colours (24-bit). + /// + internal static string Rdp16777216Colors { + get { + return ResourceManager.GetString("Rdp16777216Colors", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 256 Colours (8-bit). + /// + internal static string Rdp256Colors { + get { + return ResourceManager.GetString("Rdp256Colors", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 32768 Colours (15-bit). + /// + internal static string Rdp32768Colors { + get { + return ResourceManager.GetString("Rdp32768Colors", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 16777216 Colours (32-bit). + /// + internal static string Rdp4294967296Colors { + get { + return ResourceManager.GetString("Rdp4294967296Colors", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to 65536 Colours (16-bit). + /// + internal static string Rdp65536Colors { + get { + return ResourceManager.GetString("Rdp65536Colors", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't create RDP control, please check mRemoteNG requirements.. + /// + internal static string RdpControlCreationFailed { + get { + return ResourceManager.GetString("RdpControlCreationFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Disconnect failed, trying to close!. + /// + internal static string RdpDisconnectFailed { + get { + return ResourceManager.GetString("RdpDisconnectFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Internal error code 1.. + /// + internal static string RdpErrorCode1 { + get { + return ResourceManager.GetString("RdpErrorCode1", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Internal error code 2.. + /// + internal static string RdpErrorCode2 { + get { + return ResourceManager.GetString("RdpErrorCode2", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Internal error code 3. This is not a valid state.. + /// + internal static string RdpErrorCode3 { + get { + return ResourceManager.GetString("RdpErrorCode3", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Internal error code 4.. + /// + internal static string RdpErrorCode4 { + get { + return ResourceManager.GetString("RdpErrorCode4", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An unrecoverable error has occurred during client connection.. + /// + internal static string RdpErrorConnection { + get { + return ResourceManager.GetString("RdpErrorConnection", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to GetError failed (FatalErrors). + /// + internal static string RdpErrorGetFailure { + get { + return ResourceManager.GetString("RdpErrorGetFailure", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An out-of-memory error has occurred.. + /// + internal static string RdpErrorOutOfMemory { + get { + return ResourceManager.GetString("RdpErrorOutOfMemory", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An unknown error has occurred.. + /// + internal static string RdpErrorUnknown { + get { + return ResourceManager.GetString("RdpErrorUnknown", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to A window-creation error has occurred.. + /// + internal static string RdpErrorWindowCreation { + get { + return ResourceManager.GetString("RdpErrorWindowCreation", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Winsock initialization error.. + /// + internal static string RdpErrorWinsock { + get { + return ResourceManager.GetString("RdpErrorWinsock", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Focus failed!. + /// + internal static string RdpFocusFailed { + get { + return ResourceManager.GetString("RdpFocusFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Gateway Domain. + /// + internal static string RdpGatewayDomain { + get { + return ResourceManager.GetString("RdpGatewayDomain", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Gateway Hostname. + /// + internal static string RdpGatewayHostname { + get { + return ResourceManager.GetString("RdpGatewayHostname", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Gateway is supported.. + /// + internal static string RdpGatewayIsSupported { + get { + return ResourceManager.GetString("RdpGatewayIsSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Gateway is not supported!. + /// + internal static string RdpGatewayNotSupported { + get { + return ResourceManager.GetString("RdpGatewayNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Remote Desktop Gateway Password. + /// + internal static string RdpGatewayPassword { + get { + return ResourceManager.GetString("RdpGatewayPassword", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use Gateway. + /// + internal static string RdpGatewayUsageMethod { + get { + return ResourceManager.GetString("RdpGatewayUsageMethod", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Gateway Credentials. + /// + internal static string RdpGatewayUseConnectionCredentials { + get { + return ResourceManager.GetString("RdpGatewayUseConnectionCredentials", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Gateway Username. + /// + internal static string RdpGatewayUsername { + get { + return ResourceManager.GetString("RdpGatewayUsername", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Connection Timeout. + /// + internal static string RdpOverallConnectionTimeout { + get { + return ResourceManager.GetString("RdpOverallConnectionTimeout", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Could not create RDP client. RDP protocol version {0} is not supported on this machine. Please choose an older protocol version.. + /// + internal static string RdpProtocolVersionNotSupported { + get { + return ResourceManager.GetString("RdpProtocolVersionNotSupported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP reconnection count:. + /// + internal static string RdpReconnectCount { + get { + return ResourceManager.GetString("RdpReconnectCount", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP SetAuthenticationLevel failed!. + /// + internal static string RdpSetAuthenticationLevelFailed { + get { + return ResourceManager.GetString("RdpSetAuthenticationLevelFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP SetUseConsoleSession failed!. + /// + internal static string RdpSetConsoleSessionFailed { + get { + return ResourceManager.GetString("RdpSetConsoleSessionFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Setting Console switch for RDC {0}.. + /// + internal static string RdpSetConsoleSwitch { + get { + return ResourceManager.GetString("RdpSetConsoleSwitch", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP SetCredentials failed!. + /// + internal static string RdpSetCredentialsFailed { + get { + return ResourceManager.GetString("RdpSetCredentialsFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP SetEventHandlers failed!. + /// + internal static string RdpSetEventHandlersFailed { + get { + return ResourceManager.GetString("RdpSetEventHandlersFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP SetRDGateway failed!. + /// + internal static string RdpSetGatewayFailed { + get { + return ResourceManager.GetString("RdpSetGatewayFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP SetPerformanceFlags failed!. + /// + internal static string RdpSetPerformanceFlagsFailed { + get { + return ResourceManager.GetString("RdpSetPerformanceFlagsFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP SetPort failed!. + /// + internal static string RdpSetPortFailed { + get { + return ResourceManager.GetString("RdpSetPortFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP SetProps failed!. + /// + internal static string RdpSetPropsFailed { + get { + return ResourceManager.GetString("RdpSetPropsFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Set Redirection Failed!. + /// + internal static string RdpSetRedirectionFailed { + get { + return ResourceManager.GetString("RdpSetRedirectionFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Set Redirect Keys Failed!. + /// + internal static string RdpSetRedirectKeysFailed { + get { + return ResourceManager.GetString("RdpSetRedirectKeysFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP SetResolution failed!. + /// + internal static string RdpSetResolutionFailed { + get { + return ResourceManager.GetString("RdpSetResolutionFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Bring to this computer. + /// + internal static string RdpSoundBringToThisComputer { + get { + return ResourceManager.GetString("RdpSoundBringToThisComputer", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Leave at remote computer. + /// + internal static string RdpSoundLeaveAtRemoteComputer { + get { + return ResourceManager.GetString("RdpSoundLeaveAtRemoteComputer", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Alternate Shell. + /// + internal static string RDPStartProgram { + get { + return ResourceManager.GetString("RDPStartProgram", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Alternate shell working directory. + /// + internal static string RDPStartProgramWorkDir { + get { + return ResourceManager.GetString("RDPStartProgramWorkDir", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP ToggleFullscreen failed!. + /// + internal static string RdpToggleFullscreenFailed { + get { + return ResourceManager.GetString("RdpToggleFullscreenFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP ToggleSmartSize failed!. + /// + internal static string RdpToggleSmartSizeFailed { + get { + return ResourceManager.GetString("RdpToggleSmartSizeFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to RDP Version. + /// + internal static string RdpVersion { + get { + return ResourceManager.GetString("RdpVersion", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Read only:. + /// + internal static string ReadOnly { + get { + return ResourceManager.GetString("ReadOnly", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reconnect. + /// + internal static string Reconnect { + get { + return ResourceManager.GetString("Reconnect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reconnect All Connections. + /// + internal static string ReconnectAllConnections { + get { + return ResourceManager.GetString("ReconnectAllConnections", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reconnect to previously opened sessions on startup. + /// + internal static string ReconnectAtStartup { + get { + return ResourceManager.GetString("ReconnectAtStartup", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Redirect. + /// + internal static string Redirect { + get { + return ResourceManager.GetString("Redirect", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Disk Drives. + /// + internal static string RedirectDrives { + get { + return ResourceManager.GetString("RedirectDrives", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Key Combinations. + /// + internal static string RedirectKeys { + get { + return ResourceManager.GetString("RedirectKeys", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Smart Cards. + /// + internal static string RedirectSmartCards { + get { + return ResourceManager.GetString("RedirectSmartCards", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Refresh. + /// + internal static string Refresh { + get { + return ResourceManager.GetString("Refresh", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Refresh Screen (VNC). + /// + internal static string RefreshScreen { + get { + return ResourceManager.GetString("RefreshScreen", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Release Channel. + /// + internal static string ReleaseChannel { + get { + return ResourceManager.GetString("ReleaseChannel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Stable channel includes final releases only. + ///Preview channel includes Betas & Release Candidates. + ///Nightly Channel includes Alphas, Betas & Release Candidates.. + /// + internal static string ReleaseChannelExplanation { + get { + return ResourceManager.GetString("ReleaseChannelExplanation", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Released under the GNU General Public License (GPL). + /// + internal static string ReleasedUnderGPL { + get { + return ResourceManager.GetString("ReleasedUnderGPL", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Remote Desktop Services. + /// + internal static string RemoteDesktopServices { + get { + return ResourceManager.GetString("RemoteDesktopServices", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Remote file. + /// + internal static string RemoteFile { + get { + return ResourceManager.GetString("RemoteFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Remove All. + /// + internal static string RemoveAll { + get { + return ResourceManager.GetString("RemoveAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Rename. + /// + internal static string Rename { + get { + return ResourceManager.GetString("Rename", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Rename Tab. + /// + internal static string RenameTab { + get { + return ResourceManager.GetString("RenameTab", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Rendering Engine. + /// + internal static string RenderingEngine { + get { + return ResourceManager.GetString("RenderingEngine", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Report a Bug. + /// + internal static string ReportBug { + get { + return ResourceManager.GetString("ReportBug", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Reset layout. + /// + internal static string ResetLayout { + get { + return ResourceManager.GetString("ResetLayout", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Resolution. + /// + internal static string Resolution { + get { + return ResourceManager.GetString("Resolution", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Rlogin. + /// + internal static string Rlogin { + get { + return ResourceManager.GetString("Rlogin", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Run elevated. + /// + internal static string RunElevated { + get { + return ResourceManager.GetString("RunElevated", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Save. + /// + internal static string Save { + get { + return ResourceManager.GetString("Save", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Save All. + /// + internal static string SaveAll { + get { + return ResourceManager.GetString("SaveAll", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Save Connection File. + /// + internal static string SaveConnectionFile { + get { + return ResourceManager.GetString("SaveConnectionFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Save Connection File As.... + /// + internal static string SaveConnectionFileAs { + get { + return ResourceManager.GetString("SaveConnectionFileAs", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Save connections after every edit. + /// + internal static string SaveConnectionsAfterEveryEdit { + get { + return ResourceManager.GetString("SaveConnectionsAfterEveryEdit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Do you want to save the current connections file before loading another?. + /// + internal static string SaveConnectionsFileBeforeOpeningAnother { + get { + return ResourceManager.GetString("SaveConnectionsFileBeforeOpeningAnother", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Graphics Interchange Format File (.gif)|*.gif|Joint Photographic Experts Group File (.jpeg)|*.jpeg|Joint Photographic Experts Group File (.jpg)|*.jpg|Portable Network Graphics File (.png)|*.png. + /// + internal static string SaveImageFilter { + get { + return ResourceManager.GetString("SaveImageFilter", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Screen. + /// + internal static string Screen { + get { + return ResourceManager.GetString("Screen", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Screenshot. + /// + internal static string Screenshot { + get { + return ResourceManager.GetString("Screenshot", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Screenshots. + /// + internal static string Screenshots { + get { + return ResourceManager.GetString("Screenshots", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Search. + /// + internal static string SearchPrompt { + get { + return ResourceManager.GetString("SearchPrompt", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Seconds. + /// + internal static string Seconds { + get { + return ResourceManager.GetString("Seconds", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select a panel from the list below or click New to add a new one. Click OK to continue.. + /// + internal static string SelectPanel { + get { + return ResourceManager.GetString("SelectPanel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Send Special Keys (VNC). + /// + internal static string SendSpecialKeys { + get { + return ResourceManager.GetString("SendSpecialKeys", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Send To.... + /// + internal static string SendTo { + get { + return ResourceManager.GetString("SendTo", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Server '{0}' was not accessible.. + /// + internal static string ServerNotAccessible { + get { + return ResourceManager.GetString("ServerNotAccessible", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Server status:. + /// + internal static string ServerStatus { + get { + return ResourceManager.GetString("ServerStatus", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Set hostname like display name when creating or renaming connections. + /// + internal static string SetHostnameLikeDisplayName { + get { + return ResourceManager.GetString("SetHostnameLikeDisplayName", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Couldn't save settings or dispose SysTray Icon!. + /// + internal static string SettingsCouldNotBeSavedOrTrayDispose { + get { + return ResourceManager.GetString("SettingsCouldNotBeSavedOrTrayDispose", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show description tooltips in connection tree. + /// + internal static string ShowDescriptionTooltips { + get { + return ResourceManager.GetString("ShowDescriptionTooltips", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show full connections file path in window title. + /// + internal static string ShowFullConsFilePath { + get { + return ResourceManager.GetString("ShowFullConsFilePath", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to &Show Help Text. + /// + internal static string ShowHelpText { + get { + return ResourceManager.GetString("ShowHelpText", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show/Hide Menu Strip. + /// + internal static string ShowHideMenu { + get { + return ResourceManager.GetString("ShowHideMenu", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show logon information on tab names. + /// + internal static string ShowLogonInfoOnTabs { + get { + return ResourceManager.GetString("ShowLogonInfoOnTabs", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show On Toolbar. + /// + internal static string ShowOnToolbar { + get { + return ResourceManager.GetString("ShowOnToolbar", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show on toolbar column. + /// + internal static string ShowOnToolbarColumnHeader { + get { + return ResourceManager.GetString("ShowOnToolbarColumnHeader", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show protocols on tab names. + /// + internal static string ShowProtocolOnTabs { + get { + return ResourceManager.GetString("ShowProtocolOnTabs", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show Text. + /// + internal static string ShowText { + get { + return ResourceManager.GetString("ShowText", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Show these message types. + /// + internal static string ShowTheseMessageTypes { + get { + return ResourceManager.GetString("ShowTheseMessageTypes", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Single click on connection opens it. + /// + internal static string SingleClickOnConnectionOpensIt { + get { + return ResourceManager.GetString("SingleClickOnConnectionOpensIt", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Single click on opened connection in Connection Tree switches to opened Connection Tab. + /// + internal static string SingleClickOnOpenConnectionSwitchesToIt { + get { + return ResourceManager.GetString("SingleClickOnOpenConnectionSwitchesToIt", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SmartCard. + /// + internal static string SmartCard { + get { + return ResourceManager.GetString("SmartCard", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SmartSize (RDP/VNC). + /// + internal static string SmartSize { + get { + return ResourceManager.GetString("SmartSize", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SmartSize Mode. + /// + internal static string SmartSizeMode { + get { + return ResourceManager.GetString("SmartSizeMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Socks 5. + /// + internal static string Socks5 { + get { + return ResourceManager.GetString("Socks5", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sort. + /// + internal static string Sort { + get { + return ResourceManager.GetString("Sort", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Ascending (A-Z). + /// + internal static string SortAsc { + get { + return ResourceManager.GetString("SortAsc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Descending (Z-A). + /// + internal static string SortDesc { + get { + return ResourceManager.GetString("SortDesc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sound quality. + /// + internal static string SoundQuality { + get { + return ResourceManager.GetString("SoundQuality", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Sounds. + /// + internal static string Sounds { + get { + return ResourceManager.GetString("Sounds", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Please see Help - Getting started - SQL Configuration for more Info!. + /// + internal static string SQLInfo { + get { + return ResourceManager.GetString("SQLInfo", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SQL Server. + /// + internal static string SQLServer { + get { + return ResourceManager.GetString("SQLServer", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH background transfer failed!. + /// + internal static string SshBackgroundTransferFailed { + get { + return ResourceManager.GetString("SshBackgroundTransferFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH File Transfer. + /// + internal static string SshFileTransfer { + get { + return ResourceManager.GetString("SshFileTransfer", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH Options. + /// + internal static string SshOptions { + get { + return ResourceManager.GetString("SshOptions", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH transfer failed.. + /// + internal static string SshTransferFailed { + get { + return ResourceManager.GetString("SshTransferFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH Tunnel. + /// + internal static string SshTunnel { + get { + return ResourceManager.GetString("SshTunnel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH Tunnel connection configuration problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. A connection with the name configured as SSH Tunnel and protocol SSH version 1 or SSH2 version 2 cannot be found in the connection tree. Clear SSH Tunnel configuration or specify existing SSH connection.. + /// + internal static string SshTunnelConfigProblem { + get { + return ResourceManager.GetString("SshTunnelConfigProblem", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH tunnel connection failed. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Putty process terminated. Check for any problems with the connection configured as SSH Tunnel.. + /// + internal static string SshTunnelFailed { + get { + return ResourceManager.GetString("SshTunnelFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH tunnel configuration problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Connection configured as SSH Tunnel found in tree, but protocol is not derived from putty. Make sure connection configured as SSH Tunnel is using SSH protocol.. + /// + internal static string SshTunnelIsNotPutty { + get { + return ResourceManager.GetString("SshTunnelIsNotPutty", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH tunnel connection problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. SSH connection failed. Check for any problems with the connection configured as SSH Tunnel.. + /// + internal static string SshTunnelNotConnected { + get { + return ResourceManager.GetString("SshTunnelNotConnected", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH tunnel initialization problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. SSH connection could not be initialized. Check for any problems with the connection configured as SSH Tunnel.. + /// + internal static string SshTunnelNotInitialized { + get { + return ResourceManager.GetString("SshTunnelNotInitialized", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH tunnel connection timed out. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Local tunnel port did not become available in time. Check for any problems with the connection configured as SSH Tunnel.. + /// + internal static string SshTunnelPortNotReadyInTime { + get { + return ResourceManager.GetString("SshTunnelPortNotReadyInTime", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH version 1. + /// + internal static string SshV1 { + get { + return ResourceManager.GetString("SshV1", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to SSH version 2. + /// + internal static string SshV2 { + get { + return ResourceManager.GetString("SshV2", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Stack trace. + /// + internal static string StackTrace { + get { + return ResourceManager.GetString("StackTrace", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Start Chat (VNC). + /// + internal static string StartChat { + get { + return ResourceManager.GetString("StartChat", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Start minimized. + /// + internal static string StartMinimized { + get { + return ResourceManager.GetString("StartMinimized", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Start Program. + /// + internal static string StartProgram { + get { + return ResourceManager.GetString("StartProgram", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Startup/Exit. + /// + internal static string StartupExit { + get { + return ResourceManager.GetString("StartupExit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Status. + /// + internal static string Status { + get { + return ResourceManager.GetString("Status", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Backup. + /// + internal static string strBackup { + get { + return ResourceManager.GetString("strBackup", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Browse.... + /// + internal static string strBrowse { + get { + return ResourceManager.GetString("strBrowse", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Connection Backup Frequency. + /// + internal static string strConnectionBackupFrequency { + get { + return ResourceManager.GetString("strConnectionBackupFrequency", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Maximum number of backups. + /// + internal static string strConnectionsBackupMaxCount { + get { + return ResourceManager.GetString("strConnectionsBackupMaxCount", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Location of connection file backup. + /// + internal static string strConnectionsBackupPath { + get { + return ResourceManager.GetString("strConnectionsBackupPath", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Support Forum. + /// + internal static string SupportForum { + get { + return ResourceManager.GetString("SupportForum", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Switch to Notifications panel on:. + /// + internal static string SwitchToErrorsAndInfos { + get { + return ResourceManager.GetString("SwitchToErrorsAndInfos", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Tabs && Panels. + /// + internal static string TabsAndPanels { + get { + return ResourceManager.GetString("TabsAndPanels", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Security. + /// + internal static string TabSecurity { + get { + return ResourceManager.GetString("TabSecurity", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Telnet. + /// + internal static string Telnet { + get { + return ResourceManager.GetString("Telnet", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Test connection. + /// + internal static string TestConnection { + get { + return ResourceManager.GetString("TestConnection", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Testing connection. + /// + internal static string TestingConnection { + get { + return ResourceManager.GetString("TestingConnection", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Test Proxy. + /// + internal static string TestProxy { + get { + return ResourceManager.GetString("TestProxy", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Test Settings. + /// + internal static string TestSettings { + get { + return ResourceManager.GetString("TestSettings", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The following:. + /// + internal static string TheFollowing { + get { + return ResourceManager.GetString("TheFollowing", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Theme. + /// + internal static string Theme { + get { + return ResourceManager.GetString("Theme", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Timeout [seconds]. + /// + internal static string TimeoutInSeconds { + get { + return ResourceManager.GetString("TimeoutInSeconds", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Title. + /// + internal static string Title { + get { + return ResourceManager.GetString("Title", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Error ({0}). + /// + internal static string TitleError { + get { + return ResourceManager.GetString("TitleError", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Information ({0}). + /// + internal static string TitleInformation { + get { + return ResourceManager.GetString("TitleInformation", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemoteNG password. + /// + internal static string TitlePassword { + get { + return ResourceManager.GetString("TitlePassword", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemoteNG password for {0}. + /// + internal static string TitlePasswordWithName { + get { + return ResourceManager.GetString("TitlePasswordWithName", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Select Panel. + /// + internal static string TitleSelectPanel { + get { + return ResourceManager.GetString("TitleSelectPanel", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Warning ({0}). + /// + internal static string TitleWarning { + get { + return ResourceManager.GetString("TitleWarning", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Track active connection in the connection tree. + /// + internal static string TrackActiveConnectionInConnectionTree { + get { + return ResourceManager.GetString("TrackActiveConnectionInConnectionTree", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Transfer. + /// + internal static string Transfer { + get { + return ResourceManager.GetString("Transfer", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Transfer File (SSH). + /// + internal static string TransferFile { + get { + return ResourceManager.GetString("TransferFile", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Try to integrate. + /// + internal static string TryToIntegrate { + get { + return ResourceManager.GetString("TryToIntegrate", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Ultra VNC Repeater. + /// + internal static string UltraVncRepeater { + get { + return ResourceManager.GetString("UltraVncRepeater", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to UltraVNC SingleClick port:. + /// + internal static string UltraVNCSCListeningPort { + get { + return ResourceManager.GetString("UltraVNCSCListeningPort", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to UltraVNC SingleClick. + /// + internal static string UltraVNCSingleClick { + get { + return ResourceManager.GetString("UltraVNCSingleClick", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Uncheck the properties you want not to be saved!. + /// + internal static string UncheckProperties { + get { + return ResourceManager.GetString("UncheckProperties", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to An unhandled exception has occurred. + /// + internal static string UnhandledExceptionOccured { + get { + return ResourceManager.GetString("UnhandledExceptionOccured", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemoteNG requires an update. + /// + internal static string UpdateAvailable { + get { + return ResourceManager.GetString("UpdateAvailable", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to mRemoteNG can periodically connect to the mRemoteNG website to check for updates.. + /// + internal static string UpdateCheck { + get { + return ResourceManager.GetString("UpdateCheck", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The update information could not be downloaded.. + /// + internal static string UpdateCheckCompleteFailed { + get { + return ResourceManager.GetString("UpdateCheckCompleteFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Download complete! + ///mRemoteNG will now quit and begin with the installation.. + /// + internal static string UpdateDownloadComplete { + get { + return ResourceManager.GetString("UpdateDownloadComplete", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The update could not be downloaded.. + /// + internal static string UpdateDownloadCompleteFailed { + get { + return ResourceManager.GetString("UpdateDownloadCompleteFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The update download could not be initiated.. + /// + internal static string UpdateDownloadFailed { + get { + return ResourceManager.GetString("UpdateDownloadFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Every {0} days. + /// + internal static string UpdateFrequencyCustom { + get { + return ResourceManager.GetString("UpdateFrequencyCustom", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to The change log could not be downloaded.. + /// + internal static string UpdateGetChangeLogFailed { + get { + return ResourceManager.GetString("UpdateGetChangeLogFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Download Completed!. + /// + internal static string UpdatePortableDownloadComplete { + get { + return ResourceManager.GetString("UpdatePortableDownloadComplete", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Updates. + /// + internal static string Updates { + get { + return ResourceManager.GetString("Updates", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use Console Session. + /// + internal static string UseConsoleSession { + get { + return ResourceManager.GetString("UseConsoleSession", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use CredSSP. + /// + internal static string UseCredSsp { + get { + return ResourceManager.GetString("UseCredSsp", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use default. + /// + internal static string UseDefault { + get { + return ResourceManager.GetString("UseDefault", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use a different username and password. + /// + internal static string UseDifferentUsernameAndPassword { + get { + return ResourceManager.GetString("UseDifferentUsernameAndPassword", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use enhanced mode. + /// + internal static string UseEnhancedMode { + get { + return ResourceManager.GetString("UseEnhancedMode", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to User. + /// + internal static string User { + get { + return ResourceManager.GetString("User", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to User Field. + /// + internal static string UserField { + get { + return ResourceManager.GetString("UserField", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Username. + /// + internal static string Username { + get { + return ResourceManager.GetString("Username", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use the same username and password. + /// + internal static string UseSameUsernameAndPassword { + get { + return ResourceManager.GetString("UseSameUsernameAndPassword", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use a smart card. + /// + internal static string UseSmartCard { + get { + return ResourceManager.GetString("UseSmartCard", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use SQL Server to load && save connections. + /// + internal static string UseSQLServer { + get { + return ResourceManager.GetString("UseSQLServer", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Use VM ID. + /// + internal static string UseVmId { + get { + return ResourceManager.GetString("UseVmId", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Verify:. + /// + internal static string Verify { + get { + return ResourceManager.GetString("Verify", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Version. + /// + internal static string Version { + get { + return ResourceManager.GetString("Version", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to View Only. + /// + internal static string ViewOnly { + get { + return ResourceManager.GetString("ViewOnly", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VM ID. + /// + internal static string VmId { + get { + return ResourceManager.GetString("VmId", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VNC. + /// + internal static string Vnc { + get { + return ResourceManager.GetString("Vnc", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VNC disconnect failed!. + /// + internal static string VncConnectionDisconnectFailed { + get { + return ResourceManager.GetString("VncConnectionDisconnectFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VNC Refresh Screen Failed!. + /// + internal static string VncRefreshFailed { + get { + return ResourceManager.GetString("VncRefreshFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VNC SendSpecialKeys failed!. + /// + internal static string VncSendSpecialKeysFailed { + get { + return ResourceManager.GetString("VncSendSpecialKeysFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VNC Set Event Handlers failed!. + /// + internal static string VncSetEventHandlersFailed { + get { + return ResourceManager.GetString("VncSetEventHandlersFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VNC Set Props Failed!. + /// + internal static string VncSetPropsFailed { + get { + return ResourceManager.GetString("VncSetPropsFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VNC Toggle SmartSize Failed!. + /// + internal static string VncToggleSmartSizeFailed { + get { + return ResourceManager.GetString("VncToggleSmartSizeFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to VNC Toggle ViewOnly Failed!. + /// + internal static string VncToggleViewOnlyFailed { + get { + return ResourceManager.GetString("VncToggleViewOnlyFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Wait for exit. + /// + internal static string WaitForExit { + get { + return ResourceManager.GetString("WaitForExit", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Warn me if authentication fails. + /// + internal static string WarnIfAuthFails { + get { + return ResourceManager.GetString("WarnIfAuthFails", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Warnings. + /// + internal static string Warnings { + get { + return ResourceManager.GetString("Warnings", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Website. + /// + internal static string Website { + get { + return ResourceManager.GetString("Website", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to WebView2 creation failed with exception. + /// + internal static string WebView2InitializationFailed { + get { + return ResourceManager.GetString("WebView2InitializationFailed", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Weekly. + /// + internal static string Weekly { + get { + return ResourceManager.GetString("Weekly", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Windows. + /// + internal static string Windows { + get { + return ResourceManager.GetString("Windows", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Working directory. + /// + internal static string WorkingDirColumnHeader { + get { + return ResourceManager.GetString("WorkingDirColumnHeader", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Working directory:. + /// + internal static string WorkingDirectory { + get { + return ResourceManager.GetString("WorkingDirectory", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Yes. + /// + internal static string Yes { + get { + return ResourceManager.GetString("Yes", resourceCulture); + } + } + } +} diff --git a/mRemoteNG/Language/Language.resx b/mRemoteNG/Language/Language.resx index 8c26815fe..6e763afd9 100644 --- a/mRemoteNG/Language/Language.resx +++ b/mRemoteNG/Language/Language.resx @@ -1,2188 +1,2193 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - About - - - Active Directory - - - AddNodeFromXML failed! - - - Allow only a single instance of the application (mRemoteNG restart required) - - - Always - - - Always connect, even if authentication fails - - - Always show panel selection dialog when opening connections - - - Always show panel tabs - - - Always show notification area icon - - - Ask me again later - - - Customize the settings now - - - Use the recommended settings - - - {0} can automatically check for updates that may provide new features and bug fixes. It is recommended that you allow {0} to check for updates weekly. - - - Automatic update settings - - - Aspect - - - Auto save time in minutes (0 means disabled): - - - Latest version - - - &Browse... - - - &Cancel - - - Change - - - &Close - - - Default Inheritance - - - Default Properties - - - Disconnect - - - Icon - - - &Import - - - Inheritance - - - &Launch - - - Launch PuTTY - - - &OK - - - Properties - - - &Scan - - - &Stop - - - Test Proxy - - - Cannot start Port Scan, incorrect IP format! - - - Appearance - - - Connection - - - Display - - - Gateway - - - Miscellaneous - - - Protocol - - - Redirect - - - Check failed! - - - Automatically try to reconnect when disconnected from server (RDP && ICA only) - - - Do not show this message again. - - - This proxy server requires authentication - - - Use custom PuTTY path: - - - Reconnect when ready - - - Use a proxy server to connect - - - Username - - - Wait for exit - - - Check Again - - - Check for updates at startup - - - Check now - - - Check proper installation of components at startup - - - Choose panel before connecting - - - Closed Ports - - - Collapse all folders - - - Arguments - - - Filename - - - Message - - - E&xit {0} - - - Couldn't parse command line args! - - - &Open a connection file - - - &Try again - - - {0} has detected the Lenovo Auto Scroll Utility running on this system. This utility is known to cause problems with {0}. It is recommended that you disable or uninstall it. - - - Compatibility problem detected - - - btnIcon_Click failed! - - - ShowHideGridItems failed! - - - IconMenu_Click failed! - - - Property Grid object failed! - - - SetHostStatus failed! - - - pGrid_PopertyValueChanged failed! - - - Config UI load failed! - - - Are you sure you want to close the panel, "{0}"? Any connections that it contains will also be closed. - - - Are you sure you want to delete the external tool, "{0}"? - - - Are you sure you want to delete the {0} selected external tools? - - - Are you sure you want to delete the connection, "{0}"? - - - Are you sure you want to delete the empty folder, "{0}"? - - - Are you sure you want to delete the folder, "{0}"? Any folders or connections that it contains will also be deleted. - - - Do you want to close all open connections? - - - Are you sure you want to reset the panels to their default layout? - - - Connect - - - Connect in fullscreen mode - - - Connecting... - - - Protocol Event Connected - - - Connection to "{0}" via "{1}" established by user "{2}" (Description: "{3}"; User Field: "{4}") - - - Connection failed! - - - A connection protocol error occurred. Host: "{1}"; Error code: "{2}"; Error Description: "{0}" - - - Opening connection failed! - - - Cannot open connection: No hostname specified! - - - Connections - - - Couldn't set default port! - - - Couldn't create backup of connections file! - - - Connections file "{0}" could not be loaded! - - - Connections file "{0}" could not be loaded! -Starting with new connections file. - - - Couldn't save connections file as "{0}"! - - - Connect without credentials - - - Connect to console session - - - Connect (with options) - - - Connection to {0} via {1} closed by user {2}. - - - Connection Event Closed - - - Connection Event Closed failed! - - - Couldn't create new connections file! - - - Could not find ToolStrip control in FilteredPropertyGrid. - - - Detect - - - Don't connect to console session - - - Don't connect if authentication fails - - - Double click on tab closes it - - - Download and Install - - - Duplicate - - - Do you want to continue with no password? - - - For empty Username, Password or Domain fields use: - - - Completely encrypt connection file - - - Last IP - - - Last Port - - - AddExternalToolsToToolBar (frmMain) failed. {0} - - - AddFolder (UI.Window.ConnectionTreeWindow) failed. {0} - - - The database version {0} is not compatible with this version of {1}. - - - The connection list could not be saved. - - - PuTTY could not be launched. - - - Decryption failed. {0} - - - Encryption failed. {0} - - - The Windows security setting, "System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing", is enabled. - -See the Microsoft Support article at http://support.microsoft.com/kb/811833 for more information. - -{0} is not fully FIPS compliant. Click OK to proceed at your own discretion, or Cancel to Exit. - - - Errors - - - The startup connection file could not be loaded.{0}{0}{2}{0}{3}{0}{0}In order to prevent data loss, {1} will now exit. - - - VerifyDatabaseVersion (Config.Connections.Save) failed. {0} - - - Expand all folders - - - Experimental - - - Export - - - Export everything - - - Export File - - - Export Items - - - Export Properties - - - Export the currently selected connection - - - Export the currently selected folder - - - &Export to File... - - - New External Tool - - - File &Format: - - - All Files (*.*) - - - All importable files - - - Application Files (*.exe) - - - mRemote CSV Files (*.csv) - - - mRemote XML Files (*.xml) - - - PuTTY Connection Manager files - - - Remote Desktop Connection Manager files (*.rdg) - - - RDP Files (*.rdp) - - - Inherit {0} - - - Description of inherited property: {0} - - - Free - - - Fullscreen - - - General - - - An error occured while loading the connection entry for "{0}" from "{1}". {2} - - - Automatic Reconnect - - - External Tool Properties - - - Files - - - Host - - - HTTP - - - HTTP Connect Failed! - - - Couldn't create new HTTP Connection! - - - Changing HTTP Document Tile Failed! - - - Internet Explorer - - - HTTPS - - - Set HTTP Props failed! - - - Identify quick connect tabs by adding the prefix "Quick:" - - - Import from Active Directory - - - An error occurred while importing the file "{0}". - - - Import from &File... - - - Import from Port Scan - - - Informations - - - Dispose of Int App process failed! - - - Int App Focus Failed! - - - Int App Handle: {0} - - - Killing Int App Process failed! - - - Int App Resize failed! - - - --- IntApp Stuff --- - - - Int App Title: {0} - - - Address: - - - When closing connections: - - - Display Name - - - Domain - - - Hostname: - - - Portable Edition - - - To configure PuTTY sessions click this button: - - - Maximum PuTTY and integrated external tools wait time: - - - Released under the GNU General Public License (GPL) - - - Seconds - - - Select a panel from the list below or click New to add a new one. Click OK to continue. - - - Server status: - - - Database: - - - Verify: - - - Language - - - (Automatically Detect) - - - {0} must be restarted before changes to the language will take effect. - - - Load from SQL failed - - - The connection information could not be loaded from the SQL server. - - - Load From XML failed! - - - Local file - - - Local file does not exist! - - - Add Connection Panel - - - Check for Updates - - - Config - - - Connection Panels - - - Copy - - - Ctrl-Alt-Del - - - Ctrl-Esc - - - Delete External Tool... - - - Donate - - - Duplicate Tab - - - Exit - - - External Tools Toolbar - - - &File - - - &Help - - - mRemoteNG Help - - - Launch External Tool - - - New Connection File - - - New External Tool - - - Notifications - - - Copy All - - - Delete All - - - Open Connection File... - - - Options - - - Port Scan - - - Quick Connect Toolbar - - - Reconnect - - - Refresh Screen (VNC) - - - Rename Tab - - - Report a Bug - - - Reset layout - - - Save Connection File - - - Save Connection File As... - - - Send Special Keys (VNC) - - - &Show Help Text - - - Show Text - - - SmartSize (RDP/VNC) - - - SSH File Transfer - - - Start Chat (VNC) - - - Support Forum - - - &Tools - - - Transfer File (SSH) - - - &View - - - View Only - - - Website - - - Minimize to notification area - - - Move down - - - Move up - - - mRemoteNG CSV - - - mRemoteNG XML - - - My current credentials (Windows logon information) - - - Never - - - New Connection - - - New Folder - - - New Panel - - - New Title - - - No - - - No сompression - - - No ext. app specified. - - - None - - - Normal - - - No SmartSize - - - No update available - - - You are trying to load a connection file that was created using an very early version of mRemote, this could result in an runtime error. -If you run into such an error, please create a new connection file! - - - Open new tab to the right of the currently selected tab - - - Open Ports - - - Testing... - - - Theme - - - &Delete - - - &New - - - Panel Name - - - Password protect - - - Both passwords must match. - - - The password must be at least 3 characters long. - - - Please fill all fields - - - Port scan complete. - - - Couldn't load PortScan panel! - - - Enter the hostname or ip you want to connect to. - - - Toggle all inheritance options. - - - Select which authentication level this connection should use. - - - Select how you want to authenticate against the VNC server. - - - Select whether to automatically resize the connection when the window is resized or when fullscreen mode is toggled. Requires RDC 8.0 or higher. - - - Select whether to use bitmap caching or not. - - - Select the colour quality to be used. - - - Select the compression value to be used. - - - Put your notes or a description for the host here. - - - Select yes if the theme of the remote host should be displayed. - - - Select yes if the wallpaper of the remote host should be displayed. - - - Enter your domain. - - - Select whether to use desktop composition or not. - - - Select whether to use font smoothing or not. - - - Select the encoding mode to be used. - - - Select the external tool to be started. - - - Select a external tool to be started after the disconnection to the remote host. - - - Select a external tool to be started before the connection to the remote host is established. - - - Choose a icon that will be displayed when connected to the host. - - - Specifies the load balancing information for use by load balancing routers to choose the best server. - - - Enter the MAC address of the remote host if you wish to use it in an external tool. - - - This is the name that will be displayed in the connections tree. - - - Sets the panel in which the connection will open. - - - Enter your password. - - - Enter the port the selected protocol is listening on. - - - Choose the protocol mRemoteNG should use to connect to the host. - - - Select a PuTTY session to be used when connecting. - - - Specifies the domain name that a user provides to connect to the RD Gateway server. - - - Specifies the host name of the Remote Desktop Gateway server. - - - Specifies when to use a Remote Desktop Gateway (RD Gateway) server. - - - Specifies whether or not to log on to the gateway using the same username and password as the connection. - - - Specifies the user name that a user provides to connect to the RD Gateway server. - - - Select whether local disk drives should be shown on the remote host. - - - Select whether key combinations (e.g. Alt-Tab) should be redirected to the remote host. - - - Select whether local ports (ie. com, parallel) should be shown on the remote host. - - - Select whether local printers should be shown on the remote host. - - - Select whether the clipboard should be shared. - - - Select whether local smart cards should be available on the remote host. - - - Select how remote sound should be redirected. - - - Select whether the default audio input device on the remote machine should be redirected to this computer. - - - Select one of the available rendering engines that will be used to display HTML. - - - Choose the resolution or mode this connection will open in. - - - Select the SmartSize mode to be used. - - - Connect to the console session of the remote host. - - - Use the Credential Security Support Provider (CredSSP) for authentication if it is available. - - - Feel free to enter any information you need here. - - - Enter your username. - - - If you want to establish a view only connection to the host select yes. - - - Enter the proxy address to be used. - - - Enter your password for authenticating against the proxy. - - - Enter the port the proxy server listens on. - - - If you use a proxy to tunnel VNC connections, select which type it is. - - - Enter your username for authenticating against the proxy. - - - Hostname/IP - - - All - - - Server Authentication - - - Authentication mode - - - Automatic resize - - - Cache Bitmaps - - - Colours - - - Compression - - - Description - - - Display Themes - - - Display Wallpaper - - - Desktop Composition - - - Font Smoothing - - - Encoding - - - External Tool - - - External Tool After - - - External Tool Before - - - Load Balance Info - - - MAC Address - - - Name - - - Panel - - - Password - - - Port - - - PuTTY Session - - - Gateway Domain - - - Gateway Hostname - - - Remote Desktop Gateway Password - - - Use Gateway - - - Gateway Credentials - - - Gateway Username - - - Disk Drives - - - Key Combinations - - - Ports - - - Printers - - - Clipboard - - - Sounds - - - Audio Capture - - - Rendering Engine - - - Resolution - - - SmartSize Mode - - - Use Console Session - - - Use CredSSP - - - User Field - - - Proxy Address - - - Proxy Password - - - Proxy Port - - - Proxy Type - - - Proxy Username - - - Protocol Event Disconnected. Host: "{1}"; Protocol: "{2}" Message: "{0}" - - - Protocol Event Disconnected failed. -{0} - - - Protocol to import - - - Proxy test failed! - - - Proxy test succeeded! - - - Dispose of Putty process failed! - - - Couldn't set focus! - - - Putty Handle: {0} - - - Killing Putty Process failed! - - - Panel Handle: {0} - - - Putty Resize Failed! - - - PuTTY Saved Sessions - - - PuTTY Settings - - - Show PuTTY Settings Dialog failed! - - - --- PuTTY Stuff --- - - - PuTTY Title: {0} - - - Quick: {0} - - - Quick Connect - - - Quick Connect Add Failed! - - - Creating quick connect failed - - - Warn me when closing connections - - - Warn me only when e&xiting mRemoteNG - - - Warn me only when closing &multiple connections - - - Do &not warn me when closing connections - - - RAW - - - RDP - - - 16777216 Colours (24-bit) - - - 256 Colours (8-bit) - - - 32768 Colours (15-bit) - - - 16777216 Colours (32-bit) - - - 65536 Colours (16-bit) - - - Couldn't create RDP control, please check mRemoteNG requirements. - - - Disable Cursor blinking - - - Disable Cursor Shadow - - - Disable Full Window drag - - - Disable Menu Animations - - - RDP Disconnect failed, trying to close! - - - Internal error code 1. - - - Internal error code 2. - - - Internal error code 3. This is not a valid state. - - - Internal error code 4. - - - An unrecoverable error has occurred during client connection. - - - GetError failed (FatalErrors) - - - An out-of-memory error has occurred. - - - An unknown error has occurred. - - - A window-creation error has occurred. - - - Winsock initialization error. - - - Fit To Panel - - - RDP Focus failed! - - - RDP Gateway is supported. - - - RDP Gateway is not supported! - - - RDP reconnection count: - - - RDP SetAuthenticationLevel failed! - - - RDP SetUseConsoleSession failed! - - - RDP Setting Console switch for RDC {0}. - - - RDP SetCredentials failed! - - - RDP SetEventHandlers failed! - - - RDP SetRDGateway failed! - - - RDP SetPerformanceFlags failed! - - - RDP SetPort failed! - - - RDP SetProps failed! - - - RDP Set Redirection Failed! - - - RDP Set Redirect Keys Failed! - - - RDP SetResolution failed! - - - Bring to this computer - - - Do not play - - - Leave at remote computer - - - RDP ToggleFullscreen failed! - - - RDP ToggleSmartSize failed! - - - Reconnect to previously opened sessions on startup - - - Remote file - - - Remove All - - - Rename - - - Rlogin - - - Save - - - Save All - - - Do you want to save the current connections file before loading another? - - - Daily - - - Connection Backup Frequency - - - Weekly - - - Maximum number of backups - - - Location of connection file backup - - - On Edit - - - On Exit - - - Never backup connections - - - Browse... - - - Backup - - - Graphics Interchange Format File (.gif)|*.gif|Joint Photographic Experts Group File (.jpeg)|*.jpeg|Joint Photographic Experts Group File (.jpg)|*.jpg|Portable Network Graphics File (.png)|*.png - - - Screen - - - Screenshot - - - Screenshots - - - Search - - - Send To... - - - Set hostname like display name when creating or renaming connections - - - Couldn't save settings or dispose SysTray Icon! - - - Show description tooltips in connection tree - - - Show full connections file path in window title - - - Show logon information on tab names - - - Show protocols on tab names - - - Single click on connection opens it - - - Single click on opened connection in Connection Tree switches to opened Connection Tab - - - Socks 5 - - - Sort - - - Ascending (A-Z) - - - Descending (Z-A) - - - Please see Help - Getting started - SQL Configuration for more Info! - - - SQL Server - - - SSH version 1 - - - SSH version 2 - - - SSH background transfer failed! - - - SSH transfer failed. - - - First IP - - - First Port - - - Startup/Exit - - - Status - - - Switch to Notifications panel on: - - - Advanced - - - Tabs && Panels - - - Updates - - - Telnet - - - The following: - - - Error ({0}) - - - Information ({0}) - - - mRemoteNG password - - - mRemoteNG password for {0} - - - Select Panel - - - Warning ({0}) - - - Transfer - - - Try to integrate - - - Show On Toolbar - - - Ultra VNC Repeater - - - UltraVNC SingleClick port: - - - Uncheck the properties you want not to be saved! - - - mRemoteNG requires an update - - - mRemoteNG can periodically connect to the mRemoteNG website to check for updates. - - - The update information could not be downloaded. - - - Download complete! -mRemoteNG will now quit and begin with the installation. - - - The update could not be downloaded. - - - The update download could not be initiated. - - - Every {0} days - - - Daily - - - Monthly - - - Weekly - - - The change log could not be downloaded. - - - Use a different username and password - - - User - - - Use the same username and password - - - Use a smart card - - - Use SQL Server to load && save connections - - - Version - - - VNC - - - VNC disconnect failed! - - - VNC Refresh Screen Failed! - - - VNC SendSpecialKeys failed! - - - VNC Set Event Handlers failed! - - - VNC Set Props Failed! - - - VNC Toggle SmartSize Failed! - - - VNC Toggle ViewOnly Failed! - - - Warn me if authentication fails - - - Warnings - - - Yes - - - RDP Connection Timeout - - - This node is already in this folder. - - - Cannot drag node onto itself. - - - Cannot drag parent node onto child. - - - This node is not draggable. - - - Block Cipher Mode - - - Encryption Engine - - - Security - - - Key Derivation Function Iterations - - - Dynamic - - - High - - - Medium - - - Choose the Sound Quality provided by the protocol: Dynamic, Medium, High - - - Sound quality - - - Download Completed! - - - Download - - - The number of minutes for the RDP session to sit idle before automatically disconnecting (for no limit use 0) - - - Minutes to Idle - - - Add - - - Title - - - Are you sure you want to delete the credential record, {0}? - - - Select whether to receive an alert after the RDP session disconnects due to inactivity - - - Password must contain at least {0} of the following characters: {1} - - - Password must contain at least {0} lower case character(s) - - - Password must contain at least {0} number(s) - - - Password must contain at least {0} upper case character(s) - - - Password length must be between {0} and {1} - - - Choose a path for the mRemoteNG log file - - - Debug - - - Show these message types - - - Log file path - - - Log these message types - - - Choose path - - - Open file - - - Use default - - - Logging - - - Popups - - - Log to application directory - - - Assigned Credential - - - Credentials - - - Open a different file - - - Credential not available - - - Do you really want to delete the theme? - - - New theme name - - - Cannot create theme, name already present or special characters in the name - - - Type the new theme name - - - Warning: Restart is required to commit any theme configuration change. - - - Could not find external tool with name "{0}" - - - Create a New Connection File - - - The connection file could not be found. - - - Import an Existing File - - - Use a Custom File Path - - - Testing connection - - - Server '{0}' was not accessible. - - - Connection successful - - - Login failed for user '{0}'. - - - Database '{0}' not available. - - - Save connections after every edit - - - Filter search matches in connection tree - - - Test connection - - - Read only: - - - Use UTF8 encoding for RDP "Load Balance Info" property - - - Timeout [seconds] - - - Working directory: - - - Run elevated - - - Show on toolbar column - - - Working directory - - - Lock toolbar positions - - - Multi SSH toolbar - - - Import sub OUs - - - Advanced security options - - - mRemoteNG Options - - - Create an empty panel when mRemoteNG starts - - - Must Be Between 0 and 255 - - - Out Of Range - - - Delete - - - Reconnect All Connections - - - UltraVNC SingleClick - - - Disconnect Tabs To The Right - - - Disconnect All But This - - - Are you sure you want to close all connections except for "{0}"? - - - An error occurred while trying to reconnect to RDP host '{0}' - - - An error occurred while trying to change the connection resolution to host '{0}' - - - Stack trace - - - Exception Message - - - mRemoteNG Unhandled Exception - - - An unhandled exception has occurred - - - This exception will force mRemoteNG to close - - - Copy Hostname - - - Place search bar above connection tree - - - Track active connection in the connection tree - - - Always show connection tabs - - - Release Channel - - - Stable channel includes final releases only. -Preview channel includes Betas & Release Candidates. -Nightly Channel includes Alphas, Betas & Release Candidates. - - - Apply - - - Proxy - - - Multi SSH: - - - Press ENTER to send. Ctrl+C is sent immediately. - - - Show this connection in the favorites menu. - - - Favorite - - - Favorites - - - Clear search string - - - Connect in View Only mode - - - Do not trim spaces from usernames - - - Environment - - - Encrypting {0} entries using {1}/{2} and {3} iterations took {4} seconds. - - - Encryption Test - - - Test Settings - - - Sets the version of RDP to use when opening connections. - - - RDP Version - - - Use VM ID to connect to VM running on Hyper-V. - - - The ID of the Hyper-V virtual machine to connect to. - - - Use VM ID - - - VM ID - - - Could not create RDP client. RDP protocol version {0} is not supported on this machine. Please choose an older protocol version. - - - For connection through a SSH tunnel (jump host) specify SSH connection to be used to establish SSH tunnel. - - - SSH Tunnel - - - Specify here additional options to be used for SSH connection. See putty documentation for further details. - - - SSH Options - - - SSH Tunnel connection configuration problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. A connection with the name configured as SSH Tunnel and protocol SSH version 1 or SSH2 version 2 cannot be found in the connection tree. Clear SSH Tunnel configuration or specify existing SSH connection. - - - SSH tunnel configuration problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Connection configured as SSH Tunnel found in tree, but protocol is not derived from putty. Make sure connection configured as SSH Tunnel is using SSH protocol. - - - SSH tunnel initialization problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. SSH connection could not be initialized. Check for any problems with the connection configured as SSH Tunnel. - - - SSH tunnel connection problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. SSH connection failed. Check for any problems with the connection configured as SSH Tunnel. - - - SSH tunnel connection failed. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Putty process terminated. Check for any problems with the connection configured as SSH Tunnel. - - - SSH tunnel connection timed out. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Local tunnel port did not become available in time. Check for any problems with the connection configured as SSH Tunnel. - - - Start minimized - - - Set a password needed to encrypt the connection file with. You will be prompted to enter your passcode before starting mRemoteNG. - - - Connect to a Hyper-V host with enhanced mode enabled. - - - Use enhanced mode - - - Specifies the password of the Remote Desktop Gateway server. - - - Close to notification area - - - Windows - - - PowerShell - - - Changelog - - - Credits - - - License - - - Determines whether cursor flashes should be disabled. - - - Determines whether a mouse shadow should be visible. - - - Determines whether window content is displayed when you drag the window to a new location. - - - Determines whether menus and windows can be displayed with animation effects in the remote session. - - - Edge Chromium - - - Failed to contruct the URL to load - - - Show/Hide Menu Strip - - - Start Program/alternate shell - - - Start Program - - - WebView2 creation failed with exception - - - SmartCard - - - Opening Command - - - A command to run on the remote server after successfully connecting. - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + About + + + Active Directory + + + AddNodeFromXML failed! + + + Allow only a single instance of the application (mRemoteNG restart required) + + + Always + + + Always connect, even if authentication fails + + + Always show panel selection dialog when opening connections + + + Always show panel tabs + + + Always show notification area icon + + + Ask me again later + + + Customize the settings now + + + Use the recommended settings + + + {0} can automatically check for updates that may provide new features and bug fixes. It is recommended that you allow {0} to check for updates weekly. + + + Automatic update settings + + + Aspect + + + Auto save time in minutes (0 means disabled): + + + Latest version + + + &Browse... + + + &Cancel + + + Change + + + &Close + + + Default Inheritance + + + Default Properties + + + Disconnect + + + Icon + + + &Import + + + Inheritance + + + &Launch + + + Launch PuTTY + + + &OK + + + Properties + + + &Scan + + + &Stop + + + Test Proxy + + + Cannot start Port Scan, incorrect IP format! + + + Appearance + + + Connection + + + Display + + + Gateway + + + Miscellaneous + + + Protocol + + + Redirect + + + Check failed! + + + Automatically try to reconnect when disconnected from server (RDP && ICA only) + + + Do not show this message again. + + + This proxy server requires authentication + + + Use custom PuTTY path: + + + Reconnect when ready + + + Use a proxy server to connect + + + Username + + + Wait for exit + + + Check Again + + + Check for updates at startup + + + Check now + + + Check proper installation of components at startup + + + Choose panel before connecting + + + Closed Ports + + + Collapse all folders + + + Arguments + + + Filename + + + Message + + + E&xit {0} + + + Couldn't parse command line args! + + + &Open a connection file + + + &Try again + + + {0} has detected the Lenovo Auto Scroll Utility running on this system. This utility is known to cause problems with {0}. It is recommended that you disable or uninstall it. + + + Compatibility problem detected + + + btnIcon_Click failed! + + + ShowHideGridItems failed! + + + IconMenu_Click failed! + + + Property Grid object failed! + + + SetHostStatus failed! + + + pGrid_PopertyValueChanged failed! + + + Config UI load failed! + + + Are you sure you want to close the panel, "{0}"? Any connections that it contains will also be closed. + + + Are you sure you want to delete the external tool, "{0}"? + + + Are you sure you want to delete the {0} selected external tools? + + + Are you sure you want to delete the connection, "{0}"? + + + Are you sure you want to delete the empty folder, "{0}"? + + + Are you sure you want to delete the folder, "{0}"? Any folders or connections that it contains will also be deleted. + + + Do you want to close all open connections? + + + Are you sure you want to reset the panels to their default layout? + + + Connect + + + Connect in fullscreen mode + + + Connecting... + + + Protocol Event Connected + + + Connection to "{0}" via "{1}" established by user "{2}" (Description: "{3}"; User Field: "{4}") + + + Connection failed! + + + A connection protocol error occurred. Host: "{1}"; Error code: "{2}"; Error Description: "{0}" + + + Opening connection failed! + + + Cannot open connection: No hostname specified! + + + Connections + + + Couldn't set default port! + + + Couldn't create backup of connections file! + + + Connections file "{0}" could not be loaded! + + + Connections file "{0}" could not be loaded! +Starting with new connections file. + + + Couldn't save connections file as "{0}"! + + + Connect without credentials + + + Connect to console session + + + Connect (with options) + + + Connection to {0} via {1} closed by user {2}. + + + Connection Event Closed + + + Connection Event Closed failed! + + + Couldn't create new connections file! + + + Could not find ToolStrip control in FilteredPropertyGrid. + + + Detect + + + Don't connect to console session + + + Don't connect if authentication fails + + + Double click on tab closes it + + + Download and Install + + + Duplicate + + + Do you want to continue with no password? + + + For empty Username, Password or Domain fields use: + + + Completely encrypt connection file + + + Last IP + + + Last Port + + + AddExternalToolsToToolBar (frmMain) failed. {0} + + + AddFolder (UI.Window.ConnectionTreeWindow) failed. {0} + + + The database version {0} is not compatible with this version of {1}. + + + The connection list could not be saved. + + + PuTTY could not be launched. + + + Decryption failed. {0} + + + Encryption failed. {0} + + + The Windows security setting, "System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing", is enabled. + +See the Microsoft Support article at http://support.microsoft.com/kb/811833 for more information. + +{0} is not fully FIPS compliant. Click OK to proceed at your own discretion, or Cancel to Exit. + + + Errors + + + The startup connection file could not be loaded.{0}{0}{2}{0}{3}{0}{0}In order to prevent data loss, {1} will now exit. + + + VerifyDatabaseVersion (Config.Connections.Save) failed. {0} + + + Expand all folders + + + Experimental + + + Export + + + Export everything + + + Export File + + + Export Items + + + Export Properties + + + Export the currently selected connection + + + Export the currently selected folder + + + &Export to File... + + + New External Tool + + + File &Format: + + + All Files (*.*) + + + All importable files + + + Application Files (*.exe) + + + mRemote CSV Files (*.csv) + + + mRemote XML Files (*.xml) + + + PuTTY Connection Manager files + + + Remote Desktop Connection Manager files (*.rdg) + + + RDP Files (*.rdp) + + + Inherit {0} + + + Description of inherited property: {0} + + + Free + + + Fullscreen + + + General + + + An error occured while loading the connection entry for "{0}" from "{1}". {2} + + + Automatic Reconnect + + + External Tool Properties + + + Files + + + Host + + + HTTP + + + HTTP Connect Failed! + + + Couldn't create new HTTP Connection! + + + Changing HTTP Document Tile Failed! + + + Internet Explorer + + + HTTPS + + + Set HTTP Props failed! + + + Identify quick connect tabs by adding the prefix "Quick:" + + + Import from Active Directory + + + An error occurred while importing the file "{0}". + + + Import from &File... + + + Import from Port Scan + + + Informations + + + Dispose of Int App process failed! + + + Int App Focus Failed! + + + Int App Handle: {0} + + + Killing Int App Process failed! + + + Int App Resize failed! + + + --- IntApp Stuff --- + + + Int App Title: {0} + + + Address: + + + When closing connections: + + + Display Name + + + Domain + + + Hostname: + + + Portable Edition + + + To configure PuTTY sessions click this button: + + + Maximum PuTTY and integrated external tools wait time: + + + Released under the GNU General Public License (GPL) + + + Seconds + + + Select a panel from the list below or click New to add a new one. Click OK to continue. + + + Server status: + + + Database: + + + Verify: + + + Language + + + (Automatically Detect) + + + {0} must be restarted before changes to the language will take effect. + + + Load from SQL failed + + + The connection information could not be loaded from the SQL server. + + + Load From XML failed! + + + Local file + + + Local file does not exist! + + + Add Connection Panel + + + Check for Updates + + + Config + + + Connection Panels + + + Copy + + + Ctrl-Alt-Del + + + Ctrl-Esc + + + Delete External Tool... + + + Donate + + + Duplicate Tab + + + Exit + + + External Tools Toolbar + + + &File + + + &Help + + + mRemoteNG Help + + + Launch External Tool + + + New Connection File + + + New External Tool + + + Notifications + + + Copy All + + + Delete All + + + Open Connection File... + + + Options + + + Port Scan + + + Quick Connect Toolbar + + + Reconnect + + + Refresh Screen (VNC) + + + Rename Tab + + + Report a Bug + + + Reset layout + + + Save Connection File + + + Save Connection File As... + + + Send Special Keys (VNC) + + + &Show Help Text + + + Show Text + + + SmartSize (RDP/VNC) + + + SSH File Transfer + + + Start Chat (VNC) + + + Support Forum + + + &Tools + + + Transfer File (SSH) + + + &View + + + View Only + + + Website + + + Minimize to notification area + + + Move down + + + Move up + + + mRemoteNG CSV + + + mRemoteNG XML + + + My current credentials (Windows logon information) + + + Never + + + New Connection + + + New Folder + + + New Panel + + + New Title + + + No + + + No сompression + + + No ext. app specified. + + + None + + + Normal + + + No SmartSize + + + No update available + + + You are trying to load a connection file that was created using an very early version of mRemote, this could result in an runtime error. +If you run into such an error, please create a new connection file! + + + Open new tab to the right of the currently selected tab + + + Open Ports + + + Testing... + + + Theme + + + &Delete + + + &New + + + Panel Name + + + Password protect + + + Both passwords must match. + + + The password must be at least 3 characters long. + + + Please fill all fields + + + Port scan complete. + + + Couldn't load PortScan panel! + + + Enter the hostname or ip you want to connect to. + + + Toggle all inheritance options. + + + Select which authentication level this connection should use. + + + Select how you want to authenticate against the VNC server. + + + Select whether to automatically resize the connection when the window is resized or when fullscreen mode is toggled. Requires RDC 8.0 or higher. + + + Select whether to use bitmap caching or not. + + + Select the colour quality to be used. + + + Select the compression value to be used. + + + Put your notes or a description for the host here. + + + Select yes if the theme of the remote host should be displayed. + + + Select yes if the wallpaper of the remote host should be displayed. + + + Enter your domain. + + + Select whether to use desktop composition or not. + + + Select whether to use font smoothing or not. + + + Select the encoding mode to be used. + + + Select the external tool to be started. + + + Select a external tool to be started after the disconnection to the remote host. + + + Select a external tool to be started before the connection to the remote host is established. + + + Choose a icon that will be displayed when connected to the host. + + + Specifies the load balancing information for use by load balancing routers to choose the best server. + + + Enter the MAC address of the remote host if you wish to use it in an external tool. + + + This is the name that will be displayed in the connections tree. + + + Sets the panel in which the connection will open. + + + Enter your password. + + + Enter the port the selected protocol is listening on. + + + Choose the protocol mRemoteNG should use to connect to the host. + + + Select a PuTTY session to be used when connecting. + + + Specifies the domain name that a user provides to connect to the RD Gateway server. + + + Specifies the host name of the Remote Desktop Gateway server. + + + Specifies when to use a Remote Desktop Gateway (RD Gateway) server. + + + Specifies whether or not to log on to the gateway using the same username and password as the connection. + + + Specifies the user name that a user provides to connect to the RD Gateway server. + + + Select whether local disk drives should be shown on the remote host. + + + Select whether key combinations (e.g. Alt-Tab) should be redirected to the remote host. + + + Select whether local ports (ie. com, parallel) should be shown on the remote host. + + + Select whether local printers should be shown on the remote host. + + + Select whether the clipboard should be shared. + + + Select whether local smart cards should be available on the remote host. + + + Select how remote sound should be redirected. + + + Select whether the default audio input device on the remote machine should be redirected to this computer. + + + Select one of the available rendering engines that will be used to display HTML. + + + Choose the resolution or mode this connection will open in. + + + Select the SmartSize mode to be used. + + + Connect to the console session of the remote host. + + + Use the Credential Security Support Provider (CredSSP) for authentication if it is available. + + + Feel free to enter any information you need here. + + + Enter your username. + + + If you want to establish a view only connection to the host select yes. + + + Enter the proxy address to be used. + + + Enter your password for authenticating against the proxy. + + + Enter the port the proxy server listens on. + + + If you use a proxy to tunnel VNC connections, select which type it is. + + + Enter your username for authenticating against the proxy. + + + Hostname/IP + + + All + + + Server Authentication + + + Authentication mode + + + Automatic resize + + + Cache Bitmaps + + + Colours + + + Compression + + + Description + + + Display Themes + + + Display Wallpaper + + + Desktop Composition + + + Font Smoothing + + + Encoding + + + External Tool + + + External Tool After + + + External Tool Before + + + Load Balance Info + + + MAC Address + + + Name + + + Panel + + + Password + + + Port + + + PuTTY Session + + + Gateway Domain + + + Gateway Hostname + + + Remote Desktop Gateway Password + + + Use Gateway + + + Gateway Credentials + + + Gateway Username + + + Disk Drives + + + Key Combinations + + + Ports + + + Printers + + + Clipboard + + + Sounds + + + Audio Capture + + + Rendering Engine + + + Resolution + + + SmartSize Mode + + + Use Console Session + + + Use CredSSP + + + User Field + + + Proxy Address + + + Proxy Password + + + Proxy Port + + + Proxy Type + + + Proxy Username + + + Protocol Event Disconnected. Host: "{1}"; Protocol: "{2}" Message: "{0}" + + + Protocol Event Disconnected failed. +{0} + + + Protocol to import + + + Proxy test failed! + + + Proxy test succeeded! + + + Dispose of Putty process failed! + + + Couldn't set focus! + + + Putty Handle: {0} + + + Killing Putty Process failed! + + + Panel Handle: {0} + + + Putty Resize Failed! + + + PuTTY Saved Sessions + + + PuTTY Settings + + + Show PuTTY Settings Dialog failed! + + + --- PuTTY Stuff --- + + + PuTTY Title: {0} + + + Quick: {0} + + + Quick Connect + + + Quick Connect Add Failed! + + + Creating quick connect failed + + + Warn me when closing connections + + + Warn me only when e&xiting mRemoteNG + + + Warn me only when closing &multiple connections + + + Do &not warn me when closing connections + + + RAW + + + RDP + + + 16777216 Colours (24-bit) + + + 256 Colours (8-bit) + + + 32768 Colours (15-bit) + + + 16777216 Colours (32-bit) + + + 65536 Colours (16-bit) + + + Couldn't create RDP control, please check mRemoteNG requirements. + + + Disable Cursor blinking + + + Disable Cursor Shadow + + + Disable Full Window drag + + + Disable Menu Animations + + + RDP Disconnect failed, trying to close! + + + Internal error code 1. + + + Internal error code 2. + + + Internal error code 3. This is not a valid state. + + + Internal error code 4. + + + An unrecoverable error has occurred during client connection. + + + GetError failed (FatalErrors) + + + An out-of-memory error has occurred. + + + An unknown error has occurred. + + + A window-creation error has occurred. + + + Winsock initialization error. + + + Fit To Panel + + + RDP Focus failed! + + + RDP Gateway is supported. + + + RDP Gateway is not supported! + + + RDP reconnection count: + + + RDP SetAuthenticationLevel failed! + + + RDP SetUseConsoleSession failed! + + + RDP Setting Console switch for RDC {0}. + + + RDP SetCredentials failed! + + + RDP SetEventHandlers failed! + + + RDP SetRDGateway failed! + + + RDP SetPerformanceFlags failed! + + + RDP SetPort failed! + + + RDP SetProps failed! + + + RDP Set Redirection Failed! + + + RDP Set Redirect Keys Failed! + + + RDP SetResolution failed! + + + Bring to this computer + + + Do not play + + + Leave at remote computer + + + RDP ToggleFullscreen failed! + + + RDP ToggleSmartSize failed! + + + Reconnect to previously opened sessions on startup + + + Remote file + + + Remove All + + + Rename + + + Rlogin + + + Save + + + Save All + + + Do you want to save the current connections file before loading another? + + + Daily + + + Connection Backup Frequency + + + Weekly + + + Maximum number of backups + + + Location of connection file backup + + + On Edit + + + On Exit + + + Never backup connections + + + Browse... + + + Backup + + + Graphics Interchange Format File (.gif)|*.gif|Joint Photographic Experts Group File (.jpeg)|*.jpeg|Joint Photographic Experts Group File (.jpg)|*.jpg|Portable Network Graphics File (.png)|*.png + + + Screen + + + Screenshot + + + Screenshots + + + Search + + + Send To... + + + Set hostname like display name when creating or renaming connections + + + Couldn't save settings or dispose SysTray Icon! + + + Show description tooltips in connection tree + + + Show full connections file path in window title + + + Show logon information on tab names + + + Show protocols on tab names + + + Single click on connection opens it + + + Single click on opened connection in Connection Tree switches to opened Connection Tab + + + Socks 5 + + + Sort + + + Ascending (A-Z) + + + Descending (Z-A) + + + Please see Help - Getting started - SQL Configuration for more Info! + + + SQL Server + + + SSH version 1 + + + SSH version 2 + + + SSH background transfer failed! + + + SSH transfer failed. + + + First IP + + + First Port + + + Startup/Exit + + + Status + + + Switch to Notifications panel on: + + + Advanced + + + Tabs && Panels + + + Updates + + + Telnet + + + The following: + + + Error ({0}) + + + Information ({0}) + + + mRemoteNG password + + + mRemoteNG password for {0} + + + Select Panel + + + Warning ({0}) + + + Transfer + + + Try to integrate + + + Show On Toolbar + + + Ultra VNC Repeater + + + UltraVNC SingleClick port: + + + Uncheck the properties you want not to be saved! + + + mRemoteNG requires an update + + + mRemoteNG can periodically connect to the mRemoteNG website to check for updates. + + + The update information could not be downloaded. + + + Download complete! +mRemoteNG will now quit and begin with the installation. + + + The update could not be downloaded. + + + The update download could not be initiated. + + + Every {0} days + + + Daily + + + Monthly + + + Weekly + + + The change log could not be downloaded. + + + Use a different username and password + + + User + + + Use the same username and password + + + Use a smart card + + + Use SQL Server to load && save connections + + + Version + + + VNC + + + VNC disconnect failed! + + + VNC Refresh Screen Failed! + + + VNC SendSpecialKeys failed! + + + VNC Set Event Handlers failed! + + + VNC Set Props Failed! + + + VNC Toggle SmartSize Failed! + + + VNC Toggle ViewOnly Failed! + + + Warn me if authentication fails + + + Warnings + + + Yes + + + RDP Connection Timeout + + + This node is already in this folder. + + + Cannot drag node onto itself. + + + Cannot drag parent node onto child. + + + This node is not draggable. + + + Block Cipher Mode + + + Encryption Engine + + + Security + + + Key Derivation Function Iterations + + + Dynamic + + + High + + + Medium + + + Choose the Sound Quality provided by the protocol: Dynamic, Medium, High + + + Sound quality + + + Download Completed! + + + Download + + + The number of minutes for the RDP session to sit idle before automatically disconnecting (for no limit use 0) + + + Minutes to Idle + + + Add + + + Title + + + Are you sure you want to delete the credential record, {0}? + + + Select whether to receive an alert after the RDP session disconnects due to inactivity + + + Password must contain at least {0} of the following characters: {1} + + + Password must contain at least {0} lower case character(s) + + + Password must contain at least {0} number(s) + + + Password must contain at least {0} upper case character(s) + + + Password length must be between {0} and {1} + + + Choose a path for the mRemoteNG log file + + + Debug + + + Show these message types + + + Log file path + + + Log these message types + + + Choose path + + + Open file + + + Use default + + + Logging + + + Popups + + + Log to application directory + + + Assigned Credential + + + Credentials + + + Open a different file + + + Credential not available + + + Do you really want to delete the theme? + + + New theme name + + + Cannot create theme, name already present or special characters in the name + + + Type the new theme name + + + Warning: Restart is required to commit any theme configuration change. + + + Could not find external tool with name "{0}" + + + Create a New Connection File + + + The connection file could not be found. + + + Import an Existing File + + + Use a Custom File Path + + + Testing connection + + + Server '{0}' was not accessible. + + + Connection successful + + + Login failed for user '{0}'. + + + Database '{0}' not available. + + + Save connections after every edit + + + Filter search matches in connection tree + + + Test connection + + + Read only: + + + Use UTF8 encoding for RDP "Load Balance Info" property + + + Timeout [seconds] + + + Working directory: + + + Run elevated + + + Show on toolbar column + + + Working directory + + + Lock toolbar positions + + + Multi SSH toolbar + + + Import sub OUs + + + Advanced security options + + + mRemoteNG Options + + + Create an empty panel when mRemoteNG starts + + + Must Be Between 0 and 255 + + + Out Of Range + + + Delete + + + Reconnect All Connections + + + UltraVNC SingleClick + + + Disconnect Tabs To The Right + + + Disconnect All But This + + + Are you sure you want to close all connections except for "{0}"? + + + An error occurred while trying to reconnect to RDP host '{0}' + + + An error occurred while trying to change the connection resolution to host '{0}' + + + Stack trace + + + Exception Message + + + mRemoteNG Unhandled Exception + + + An unhandled exception has occurred + + + This exception will force mRemoteNG to close + + + Copy Hostname + + + Place search bar above connection tree + + + Track active connection in the connection tree + + + Always show connection tabs + + + Release Channel + + + Stable channel includes final releases only. +Preview channel includes Betas & Release Candidates. +Nightly Channel includes Alphas, Betas & Release Candidates. + + + Apply + + + Proxy + + + Multi SSH: + + + Press ENTER to send. Ctrl+C is sent immediately. + + + Show this connection in the favorites menu. + + + Favorite + + + Favorites + + + Clear search string + + + Connect in View Only mode + + + Do not trim spaces from usernames + + + Environment + + + Encrypting {0} entries using {1}/{2} and {3} iterations took {4} seconds. + + + Encryption Test + + + Test Settings + + + Sets the version of RDP to use when opening connections. + + + RDP Version + + + Use VM ID to connect to VM running on Hyper-V. + + + The ID of the Hyper-V virtual machine to connect to. + + + Use VM ID + + + VM ID + + + Could not create RDP client. RDP protocol version {0} is not supported on this machine. Please choose an older protocol version. + + + For connection through a SSH tunnel (jump host) specify SSH connection to be used to establish SSH tunnel. + + + SSH Tunnel + + + Specify here additional options to be used for SSH connection. See putty documentation for further details. + + + SSH Options + + + SSH Tunnel connection configuration problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. A connection with the name configured as SSH Tunnel and protocol SSH version 1 or SSH2 version 2 cannot be found in the connection tree. Clear SSH Tunnel configuration or specify existing SSH connection. + + + SSH tunnel configuration problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Connection configured as SSH Tunnel found in tree, but protocol is not derived from putty. Make sure connection configured as SSH Tunnel is using SSH protocol. + + + SSH tunnel initialization problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. SSH connection could not be initialized. Check for any problems with the connection configured as SSH Tunnel. + + + SSH tunnel connection problem. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. SSH connection failed. Check for any problems with the connection configured as SSH Tunnel. + + + SSH tunnel connection failed. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Putty process terminated. Check for any problems with the connection configured as SSH Tunnel. + + + SSH tunnel connection timed out. Connection to: "{0}" via SSH Tunnel: "{1}" not possible. Local tunnel port did not become available in time. Check for any problems with the connection configured as SSH Tunnel. + + + Start minimized + + + Set a password needed to encrypt the connection file with. You will be prompted to enter your passcode before starting mRemoteNG. + + + Connect to a Hyper-V host with enhanced mode enabled. + + + Use enhanced mode + + + Specifies the password of the Remote Desktop Gateway server. + + + Close to notification area + + + Windows + + + PowerShell + + + Changelog + + + Credits + + + License + + + Determines whether cursor flashes should be disabled. + + + Determines whether a mouse shadow should be visible. + + + Determines whether window content is displayed when you drag the window to a new location. + + + Determines whether menus and windows can be displayed with animation effects in the remote session. + + + Edge Chromium + + + Failed to contruct the URL to load + + + Show/Hide Menu Strip + + + The program to be started on the remote server upon connection. + + + Specifies the working directory of the alternate shell. + + + Alternate Shell + https://docs.microsoft.com/en-us/windows/win32/termserv/imstscsecuredsettings-startprogram + + + Alternate shell working directory + https://docs.microsoft.com/en-us/windows/win32/termserv/imstscsecuredsettings-workdir + + + Disk Drives + + + Smart Cards + + + Remote Desktop Services + \ No newline at end of file diff --git a/mRemoteNG/Properties/Settings.Designer.cs b/mRemoteNG/Properties/Settings.Designer.cs index 1779d92a5..afeaaf09e 100644 --- a/mRemoteNG/Properties/Settings.Designer.cs +++ b/mRemoteNG/Properties/Settings.Designer.cs @@ -1,3218 +1,3218 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace mRemoteNG.Properties { - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.0.3.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { - return defaultInstance; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] - public global::System.Drawing.Point MainFormLocation { - get { - return ((global::System.Drawing.Point)(this["MainFormLocation"])); - } - set { - this["MainFormLocation"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] - public global::System.Drawing.Size MainFormSize { - get { - return ((global::System.Drawing.Size)(this["MainFormSize"])); - } - set { - this["MainFormSize"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("Normal")] - public global::System.Windows.Forms.FormWindowState MainFormState { - get { - return ((global::System.Windows.Forms.FormWindowState)(this["MainFormState"])); - } - set { - this["MainFormState"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool MainFormKiosk { - get { - return ((bool)(this["MainFormKiosk"])); - } - set { - this["MainFormKiosk"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool DoUpgrade { - get { - return ((bool)(this["DoUpgrade"])); - } - set { - this["DoUpgrade"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string CustomPuttyPath { - get { - return ((string)(this["CustomPuttyPath"])); - } - set { - this["CustomPuttyPath"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool SwitchToMCOnInformation { - get { - return ((bool)(this["SwitchToMCOnInformation"])); - } - set { - this["SwitchToMCOnInformation"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool SwitchToMCOnWarning { - get { - return ((bool)(this["SwitchToMCOnWarning"])); - } - set { - this["SwitchToMCOnWarning"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool SwitchToMCOnError { - get { - return ((bool)(this["SwitchToMCOnError"])); - } - set { - this["SwitchToMCOnError"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool LoadConsFromCustomLocation { - get { - return ((bool)(this["LoadConsFromCustomLocation"])); - } - set { - this["LoadConsFromCustomLocation"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string CustomConsPath { - get { - return ((string)(this["CustomConsPath"])); - } - set { - this["CustomConsPath"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool SaveConsOnExit { - get { - return ((bool)(this["SaveConsOnExit"])); - } - set { - this["SaveConsOnExit"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool CheckForUpdatesOnStartup { - get { - return ((bool)(this["CheckForUpdatesOnStartup"])); - } - set { - this["CheckForUpdatesOnStartup"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ShowDescriptionTooltipsInTree { - get { - return ((bool)(this["ShowDescriptionTooltipsInTree"])); - } - set { - this["ShowDescriptionTooltipsInTree"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ShowSystemTrayIcon { - get { - return ((bool)(this["ShowSystemTrayIcon"])); - } - set { - this["ShowSystemTrayIcon"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool OpenTabsRightOfSelected { - get { - return ((bool)(this["OpenTabsRightOfSelected"])); - } - set { - this["OpenTabsRightOfSelected"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ShowLogonInfoOnTabs { - get { - return ((bool)(this["ShowLogonInfoOnTabs"])); - } - set { - this["ShowLogonInfoOnTabs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool SingleClickOnConnectionOpensIt { - get { - return ((bool)(this["SingleClickOnConnectionOpensIt"])); - } - set { - this["SingleClickOnConnectionOpensIt"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("noinfo")] - public string EmptyCredentials { - get { - return ((string)(this["EmptyCredentials"])); - } - set { - this["EmptyCredentials"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string DefaultUsername { - get { - return ((string)(this["DefaultUsername"])); - } - set { - this["DefaultUsername"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string DefaultPassword { - get { - return ((string)(this["DefaultPassword"])); - } - set { - this["DefaultPassword"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string DefaultDomain { - get { - return ((string)(this["DefaultDomain"])); - } - set { - this["DefaultDomain"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool UseCustomPuttyPath { - get { - return ((bool)(this["UseCustomPuttyPath"])); - } - set { - this["UseCustomPuttyPath"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool FirstStart { - get { - return ((bool)(this["FirstStart"])); - } - set { - this["FirstStart"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ShowProtocolOnTabs { - get { - return ((bool)(this["ShowProtocolOnTabs"])); - } - set { - this["ShowProtocolOnTabs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ResetPanels { - get { - return ((bool)(this["ResetPanels"])); - } - set { - this["ResetPanels"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool UpdateUseProxy { - get { - return ((bool)(this["UpdateUseProxy"])); - } - set { - this["UpdateUseProxy"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string UpdateProxyAddress { - get { - return ((string)(this["UpdateProxyAddress"])); - } - set { - this["UpdateProxyAddress"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("80")] - public int UpdateProxyPort { - get { - return ((int)(this["UpdateProxyPort"])); - } - set { - this["UpdateProxyPort"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool UpdateProxyUseAuthentication { - get { - return ((bool)(this["UpdateProxyUseAuthentication"])); - } - set { - this["UpdateProxyUseAuthentication"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string UpdateProxyAuthUser { - get { - return ((string)(this["UpdateProxyAuthUser"])); - } - set { - this["UpdateProxyAuthUser"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string UpdateProxyAuthPass { - get { - return ((string)(this["UpdateProxyAuthPass"])); - } - set { - this["UpdateProxyAuthPass"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultDescription { - get { - return ((string)(this["ConDefaultDescription"])); - } - set { - this["ConDefaultDescription"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("RDP")] - public string ConDefaultProtocol { - get { - return ((string)(this["ConDefaultProtocol"])); - } - set { - this["ConDefaultProtocol"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("Default Settings")] - public string ConDefaultPuttySession { - get { - return ((string)(this["ConDefaultPuttySession"])); - } - set { - this["ConDefaultPuttySession"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultUseConsoleSession { - get { - return ((bool)(this["ConDefaultUseConsoleSession"])); - } - set { - this["ConDefaultUseConsoleSession"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("FitToWindow")] - public string ConDefaultResolution { - get { - return ((string)(this["ConDefaultResolution"])); - } - set { - this["ConDefaultResolution"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("Colors16Bit")] - public string ConDefaultColors { - get { - return ((string)(this["ConDefaultColors"])); - } - set { - this["ConDefaultColors"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultCacheBitmaps { - get { - return ((bool)(this["ConDefaultCacheBitmaps"])); - } - set { - this["ConDefaultCacheBitmaps"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultDisplayWallpaper { - get { - return ((bool)(this["ConDefaultDisplayWallpaper"])); - } - set { - this["ConDefaultDisplayWallpaper"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultDisplayThemes { - get { - return ((bool)(this["ConDefaultDisplayThemes"])); - } - set { - this["ConDefaultDisplayThemes"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultRedirectKeys { - get { - return ((bool)(this["ConDefaultRedirectKeys"])); - } - set { - this["ConDefaultRedirectKeys"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultRedirectDiskDrives { - get { - return ((bool)(this["ConDefaultRedirectDiskDrives"])); - } - set { - this["ConDefaultRedirectDiskDrives"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultRedirectPrinters { - get { - return ((bool)(this["ConDefaultRedirectPrinters"])); - } - set { - this["ConDefaultRedirectPrinters"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultRedirectClipboard { - get { - return ((bool)(this["ConDefaultRedirectClipboard"])); - } - set { - this["ConDefaultRedirectClipboard"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultRedirectPorts { - get { - return ((bool)(this["ConDefaultRedirectPorts"])); - } - set { - this["ConDefaultRedirectPorts"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultRedirectSmartCards { - get { - return ((bool)(this["ConDefaultRedirectSmartCards"])); - } - set { - this["ConDefaultRedirectSmartCards"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("DoNotPlay")] - public string ConDefaultRedirectSound { - get { - return ((string)(this["ConDefaultRedirectSound"])); - } - set { - this["ConDefaultRedirectSound"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultRedirectAudioCapture { - get { - return ((bool)(this["ConDefaultRedirectAudioCapture"])); - } - set { - this["ConDefaultRedirectAudioCapture"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("2")] - public int MaxPuttyWaitTime { - get { - return ((int)(this["MaxPuttyWaitTime"])); - } - set { - this["MaxPuttyWaitTime"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool SingleInstance { - get { - return ((bool)(this["SingleInstance"])); - } - set { - this["SingleInstance"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool OpenConsFromLastSession { - get { - return ((bool)(this["OpenConsFromLastSession"])); - } - set { - this["OpenConsFromLastSession"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool NoReconnect { - get { - return ((bool)(this["NoReconnect"])); - } - set { - this["NoReconnect"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("0")] - public int AutoSaveEveryMinutes { - get { - return ((int)(this["AutoSaveEveryMinutes"])); - } - set { - this["AutoSaveEveryMinutes"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ExtAppsTBVisible { - get { - return ((bool)(this["ExtAppsTBVisible"])); - } - set { - this["ExtAppsTBVisible"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool ExtAppsTBShowText { - get { - return ((bool)(this["ExtAppsTBShowText"])); - } - set { - this["ExtAppsTBShowText"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] - public global::System.Drawing.Point ExtAppsTBLocation { - get { - return ((global::System.Drawing.Point)(this["ExtAppsTBLocation"])); - } - set { - this["ExtAppsTBLocation"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("Bottom")] - public string ExtAppsTBParentDock { - get { - return ((string)(this["ExtAppsTBParentDock"])); - } - set { - this["ExtAppsTBParentDock"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool QuickyTBVisible { - get { - return ((bool)(this["QuickyTBVisible"])); - } - set { - this["QuickyTBVisible"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("3, 24")] - public global::System.Drawing.Point QuickyTBLocation { - get { - return ((global::System.Drawing.Point)(this["QuickyTBLocation"])); - } - set { - this["QuickyTBLocation"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("Top")] - public string QuickyTBParentDock { - get { - return ((string)(this["QuickyTBParentDock"])); - } - set { - this["QuickyTBParentDock"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ResetToolbars { - get { - return ((bool)(this["ResetToolbars"])); - } - set { - this["ResetToolbars"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool UseSQLServer { - get { - return ((bool)(this["UseSQLServer"])); - } - set { - this["UseSQLServer"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string SQLHost { - get { - return ((string)(this["SQLHost"])); - } - set { - this["SQLHost"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string SQLUser { - get { - return ((string)(this["SQLUser"])); - } - set { - this["SQLUser"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string SQLPass { - get { - return ((string)(this["SQLPass"])); - } - set { - this["SQLPass"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultCacheBitmaps { - get { - return ((bool)(this["InhDefaultCacheBitmaps"])); - } - set { - this["InhDefaultCacheBitmaps"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultColors { - get { - return ((bool)(this["InhDefaultColors"])); - } - set { - this["InhDefaultColors"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultDescription { - get { - return ((bool)(this["InhDefaultDescription"])); - } - set { - this["InhDefaultDescription"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultDisplayThemes { - get { - return ((bool)(this["InhDefaultDisplayThemes"])); - } - set { - this["InhDefaultDisplayThemes"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultDisplayWallpaper { - get { - return ((bool)(this["InhDefaultDisplayWallpaper"])); - } - set { - this["InhDefaultDisplayWallpaper"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultDomain { - get { - return ((bool)(this["InhDefaultDomain"])); - } - set { - this["InhDefaultDomain"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultIcon { - get { - return ((bool)(this["InhDefaultIcon"])); - } - set { - this["InhDefaultIcon"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultPassword { - get { - return ((bool)(this["InhDefaultPassword"])); - } - set { - this["InhDefaultPassword"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultPort { - get { - return ((bool)(this["InhDefaultPort"])); - } - set { - this["InhDefaultPort"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultProtocol { - get { - return ((bool)(this["InhDefaultProtocol"])); - } - set { - this["InhDefaultProtocol"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultPuttySession { - get { - return ((bool)(this["InhDefaultPuttySession"])); - } - set { - this["InhDefaultPuttySession"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRedirectDiskDrives { - get { - return ((bool)(this["InhDefaultRedirectDiskDrives"])); - } - set { - this["InhDefaultRedirectDiskDrives"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRedirectKeys { - get { - return ((bool)(this["InhDefaultRedirectKeys"])); - } - set { - this["InhDefaultRedirectKeys"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRedirectPorts { - get { - return ((bool)(this["InhDefaultRedirectPorts"])); - } - set { - this["InhDefaultRedirectPorts"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRedirectPrinters { - get { - return ((bool)(this["InhDefaultRedirectPrinters"])); - } - set { - this["InhDefaultRedirectPrinters"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRedirectClipboard { - get { - return ((bool)(this["InhDefaultRedirectClipboard"])); - } - set { - this["InhDefaultRedirectClipboard"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRedirectSmartCards { - get { - return ((bool)(this["InhDefaultRedirectSmartCards"])); - } - set { - this["InhDefaultRedirectSmartCards"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRedirectSound { - get { - return ((bool)(this["InhDefaultRedirectSound"])); - } - set { - this["InhDefaultRedirectSound"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRedirectAudioCapture { - get { - return ((bool)(this["InhDefaultRedirectAudioCapture"])); - } - set { - this["InhDefaultRedirectAudioCapture"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultResolution { - get { - return ((bool)(this["InhDefaultResolution"])); - } - set { - this["InhDefaultResolution"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultUseConsoleSession { - get { - return ((bool)(this["InhDefaultUseConsoleSession"])); - } - set { - this["InhDefaultUseConsoleSession"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultUsername { - get { - return ((bool)(this["InhDefaultUsername"])); - } - set { - this["InhDefaultUsername"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultPanel { - get { - return ((bool)(this["InhDefaultPanel"])); - } - set { - this["InhDefaultPanel"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultPreExtApp { - get { - return ((string)(this["ConDefaultPreExtApp"])); - } - set { - this["ConDefaultPreExtApp"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultPostExtApp { - get { - return ((string)(this["ConDefaultPostExtApp"])); - } - set { - this["ConDefaultPostExtApp"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultPreExtApp { - get { - return ((bool)(this["InhDefaultPreExtApp"])); - } - set { - this["InhDefaultPreExtApp"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultPostExtApp { - get { - return ((bool)(this["InhDefaultPostExtApp"])); - } - set { - this["InhDefaultPostExtApp"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool SetHostnameLikeDisplayName { - get { - return ((bool)(this["SetHostnameLikeDisplayName"])); - } - set { - this["SetHostnameLikeDisplayName"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool DoubleClickOnTabClosesIt { - get { - return ((bool)(this["DoubleClickOnTabClosesIt"])); - } - set { - this["DoubleClickOnTabClosesIt"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ReconnectOnDisconnect { - get { - return ((bool)(this["ReconnectOnDisconnect"])); - } - set { - this["ReconnectOnDisconnect"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool AlwaysShowPanelSelectionDlg { - get { - return ((bool)(this["AlwaysShowPanelSelectionDlg"])); - } - set { - this["AlwaysShowPanelSelectionDlg"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("AuthVNC")] - public string ConDefaultVNCAuthMode { - get { - return ((string)(this["ConDefaultVNCAuthMode"])); - } - set { - this["ConDefaultVNCAuthMode"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("ColNormal")] - public string ConDefaultVNCColors { - get { - return ((string)(this["ConDefaultVNCColors"])); - } - set { - this["ConDefaultVNCColors"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("SmartSAspect")] - public string ConDefaultVNCSmartSizeMode { - get { - return ((string)(this["ConDefaultVNCSmartSizeMode"])); - } - set { - this["ConDefaultVNCSmartSizeMode"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultVNCViewOnly { - get { - return ((bool)(this["ConDefaultVNCViewOnly"])); - } - set { - this["ConDefaultVNCViewOnly"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("CompNone")] - public string ConDefaultVNCCompression { - get { - return ((string)(this["ConDefaultVNCCompression"])); - } - set { - this["ConDefaultVNCCompression"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("EncHextile")] - public string ConDefaultVNCEncoding { - get { - return ((string)(this["ConDefaultVNCEncoding"])); - } - set { - this["ConDefaultVNCEncoding"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultVNCProxyIP { - get { - return ((string)(this["ConDefaultVNCProxyIP"])); - } - set { - this["ConDefaultVNCProxyIP"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultVNCProxyPassword { - get { - return ((string)(this["ConDefaultVNCProxyPassword"])); - } - set { - this["ConDefaultVNCProxyPassword"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("0")] - public int ConDefaultVNCProxyPort { - get { - return ((int)(this["ConDefaultVNCProxyPort"])); - } - set { - this["ConDefaultVNCProxyPort"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("ProxyNone")] - public string ConDefaultVNCProxyType { - get { - return ((string)(this["ConDefaultVNCProxyType"])); - } - set { - this["ConDefaultVNCProxyType"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultVNCProxyUsername { - get { - return ((string)(this["ConDefaultVNCProxyUsername"])); - } - set { - this["ConDefaultVNCProxyUsername"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCAuthMode { - get { - return ((bool)(this["InhDefaultVNCAuthMode"])); - } - set { - this["InhDefaultVNCAuthMode"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCColors { - get { - return ((bool)(this["InhDefaultVNCColors"])); - } - set { - this["InhDefaultVNCColors"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCSmartSizeMode { - get { - return ((bool)(this["InhDefaultVNCSmartSizeMode"])); - } - set { - this["InhDefaultVNCSmartSizeMode"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCViewOnly { - get { - return ((bool)(this["InhDefaultVNCViewOnly"])); - } - set { - this["InhDefaultVNCViewOnly"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCCompression { - get { - return ((bool)(this["InhDefaultVNCCompression"])); - } - set { - this["InhDefaultVNCCompression"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCEncoding { - get { - return ((bool)(this["InhDefaultVNCEncoding"])); - } - set { - this["InhDefaultVNCEncoding"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCProxyIP { - get { - return ((bool)(this["InhDefaultVNCProxyIP"])); - } - set { - this["InhDefaultVNCProxyIP"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCProxyPassword { - get { - return ((bool)(this["InhDefaultVNCProxyPassword"])); - } - set { - this["InhDefaultVNCProxyPassword"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCProxyPort { - get { - return ((bool)(this["InhDefaultVNCProxyPort"])); - } - set { - this["InhDefaultVNCProxyPort"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCProxyType { - get { - return ((bool)(this["InhDefaultVNCProxyType"])); - } - set { - this["InhDefaultVNCProxyType"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVNCProxyUsername { - get { - return ((bool)(this["InhDefaultVNCProxyUsername"])); - } - set { - this["InhDefaultVNCProxyUsername"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool MinimizeToTray { - get { - return ((bool)(this["MinimizeToTray"])); - } - set { - this["MinimizeToTray"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool SingleClickSwitchesToOpenConnection { - get { - return ((bool)(this["SingleClickSwitchesToOpenConnection"])); - } - set { - this["SingleClickSwitchesToOpenConnection"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("NoAuth")] - public string ConDefaultRDPAuthenticationLevel { - get { - return ((string)(this["ConDefaultRDPAuthenticationLevel"])); - } - set { - this["ConDefaultRDPAuthenticationLevel"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRDPAuthenticationLevel { - get { - return ((bool)(this["InhDefaultRDPAuthenticationLevel"])); - } - set { - this["InhDefaultRDPAuthenticationLevel"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("5500")] - public int UVNCSCPort { - get { - return ((int)(this["UVNCSCPort"])); - } - set { - this["UVNCSCPort"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string XULRunnerPath { - get { - return ((string)(this["XULRunnerPath"])); - } - set { - this["XULRunnerPath"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRenderingEngine { - get { - return ((bool)(this["InhDefaultRenderingEngine"])); - } - set { - this["InhDefaultRenderingEngine"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultMacAddress { - get { - return ((string)(this["ConDefaultMacAddress"])); - } - set { - this["ConDefaultMacAddress"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultMacAddress { - get { - return ((bool)(this["InhDefaultMacAddress"])); - } - set { - this["InhDefaultMacAddress"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool EncryptCompleteConnectionsFile { - get { - return ((bool)(this["EncryptCompleteConnectionsFile"])); - } - set { - this["EncryptCompleteConnectionsFile"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultUserField { - get { - return ((string)(this["ConDefaultUserField"])); - } - set { - this["ConDefaultUserField"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultUserField { - get { - return ((bool)(this["InhDefaultUserField"])); - } - set { - this["InhDefaultUserField"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultExtApp { - get { - return ((string)(this["ConDefaultExtApp"])); - } - set { - this["ConDefaultExtApp"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultExtApp { - get { - return ((bool)(this["InhDefaultExtApp"])); - } - set { - this["InhDefaultExtApp"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool CheckForUpdatesAsked { - get { - return ((bool)(this["CheckForUpdatesAsked"])); - } - set { - this["CheckForUpdatesAsked"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("14")] - public int CheckForUpdatesFrequencyDays { - get { - return ((int)(this["CheckForUpdatesFrequencyDays"])); - } - set { - this["CheckForUpdatesFrequencyDays"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("1980-01-01")] - public global::System.DateTime CheckForUpdatesLastCheck { - get { - return ((global::System.DateTime)(this["CheckForUpdatesLastCheck"])); - } - set { - this["CheckForUpdatesLastCheck"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool UpdatePending { - get { - return ((bool)(this["UpdatePending"])); - } - set { - this["UpdatePending"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("Never")] - public string ConDefaultRDGatewayUsageMethod { - get { - return ((string)(this["ConDefaultRDGatewayUsageMethod"])); - } - set { - this["ConDefaultRDGatewayUsageMethod"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("Yes")] - public string ConDefaultRDGatewayUseConnectionCredentials { - get { - return ((string)(this["ConDefaultRDGatewayUseConnectionCredentials"])); - } - set { - this["ConDefaultRDGatewayUseConnectionCredentials"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("mRemoteNG")] - public string ConDefaultIcon { - get { - return ((string)(this["ConDefaultIcon"])); - } - set { - this["ConDefaultIcon"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRDGatewayUsageMethod { - get { - return ((bool)(this["InhDefaultRDGatewayUsageMethod"])); - } - set { - this["InhDefaultRDGatewayUsageMethod"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRDGatewayHostname { - get { - return ((bool)(this["InhDefaultRDGatewayHostname"])); - } - set { - this["InhDefaultRDGatewayHostname"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRDGatewayUsername { - get { - return ((bool)(this["InhDefaultRDGatewayUsername"])); - } - set { - this["InhDefaultRDGatewayUsername"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRDGatewayPassword { - get { - return ((bool)(this["InhDefaultRDGatewayPassword"])); - } - set { - this["InhDefaultRDGatewayPassword"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRDGatewayDomain { - get { - return ((bool)(this["InhDefaultRDGatewayDomain"])); - } - set { - this["InhDefaultRDGatewayDomain"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRDGatewayUseConnectionCredentials { - get { - return ((bool)(this["InhDefaultRDGatewayUseConnectionCredentials"])); - } - set { - this["InhDefaultRDGatewayUseConnectionCredentials"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("5")] - public int RdpReconnectionCount { - get { - return ((int)(this["RdpReconnectionCount"])); - } - set { - this["RdpReconnectionCount"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string OverrideUICulture { - get { - return ((string)(this["OverrideUICulture"])); - } - set { - this["OverrideUICulture"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultRDGatewayHostname { - get { - return ((string)(this["ConDefaultRDGatewayHostname"])); - } - set { - this["ConDefaultRDGatewayHostname"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultRDGatewayUsername { - get { - return ((string)(this["ConDefaultRDGatewayUsername"])); - } - set { - this["ConDefaultRDGatewayUsername"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultRDGatewayPassword { - get { - return ((string)(this["ConDefaultRDGatewayPassword"])); - } - set { - this["ConDefaultRDGatewayPassword"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultRDGatewayDomain { - get { - return ((string)(this["ConDefaultRDGatewayDomain"])); - } - set { - this["ConDefaultRDGatewayDomain"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultEnableFontSmoothing { - get { - return ((bool)(this["ConDefaultEnableFontSmoothing"])); - } - set { - this["ConDefaultEnableFontSmoothing"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultEnableFontSmoothing { - get { - return ((bool)(this["InhDefaultEnableFontSmoothing"])); - } - set { - this["InhDefaultEnableFontSmoothing"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultEnableDesktopComposition { - get { - return ((bool)(this["ConDefaultEnableDesktopComposition"])); - } - set { - this["ConDefaultEnableDesktopComposition"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultEnableDesktopComposition { - get { - return ((bool)(this["InhDefaultEnableDesktopComposition"])); - } - set { - this["InhDefaultEnableDesktopComposition"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultDisableFullWindowDrag { - get { - return ((bool)(this["InhDefaultDisableFullWindowDrag"])); - } - set { - this["InhDefaultDisableFullWindowDrag"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultDisableMenuAnimations { - get { - return ((bool)(this["InhDefaultDisableMenuAnimations"])); - } - set { - this["InhDefaultDisableMenuAnimations"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultDisableCursorShadow { - get { - return ((bool)(this["InhDefaultDisableCursorShadow"])); - } - set { - this["InhDefaultDisableCursorShadow"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultDisableCursorBlinking { - get { - return ((bool)(this["InhDefaultDisableCursorBlinking"])); - } - set { - this["InhDefaultDisableCursorBlinking"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("4")] - public int ConfirmCloseConnection { - get { - return ((int)(this["ConfirmCloseConnection"])); - } - set { - this["ConfirmCloseConnection"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - public global::System.Drawing.Size MainFormRestoreSize { - get { - return ((global::System.Drawing.Size)(this["MainFormRestoreSize"])); - } - set { - this["MainFormRestoreSize"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - public global::System.Drawing.Point MainFormRestoreLocation { - get { - return ((global::System.Drawing.Point)(this["MainFormRestoreLocation"])); - } - set { - this["MainFormRestoreLocation"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("mRemoteNG")] - public string SQLDatabaseName { - get { - return ((string)(this["SQLDatabaseName"])); - } - set { - this["SQLDatabaseName"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("10")] - [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] - public int BackupFileKeepCount { - get { - return ((int)(this["BackupFileKeepCount"])); - } - set { - this["BackupFileKeepCount"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("{0}.{1:yyyyMMdd-HHmmssffff}.backup")] - [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] - public string BackupFileNameFormat { - get { - return ((string)(this["BackupFileNameFormat"])); - } - set { - this["BackupFileNameFormat"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultUseCredSsp { - get { - return ((bool)(this["InhDefaultUseCredSsp"])); - } - set { - this["InhDefaultUseCredSsp"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool ConDefaultUseCredSsp { - get { - return ((bool)(this["ConDefaultUseCredSsp"])); - } - set { - this["ConDefaultUseCredSsp"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultUseVmId { - get { - return ((bool)(this["ConDefaultUseVmId"])); - } - set { - this["ConDefaultUseVmId"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] - public bool AlwaysShowPanelTabs { - get { - return ((bool)(this["AlwaysShowPanelTabs"])); - } - set { - this["AlwaysShowPanelTabs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] - public bool IdentifyQuickConnectTabs { - get { - return ((bool)(this["IdentifyQuickConnectTabs"])); - } - set { - this["IdentifyQuickConnectTabs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("release")] - public string UpdateChannel { - get { - return ((string)(this["UpdateChannel"])); - } - set { - this["UpdateChannel"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ThemeName { - get { - return ((string)(this["ThemeName"])); - } - set { - this["ThemeName"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool ShowConfigHelpText { - get { - return ((bool)(this["ShowConfigHelpText"])); - } - set { - this["ShowConfigHelpText"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string PuttySavedSessionsName { - get { - return ((string)(this["PuttySavedSessionsName"])); - } - set { - this["PuttySavedSessionsName"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string PuttySavedSessionsPanel { - get { - return ((string)(this["PuttySavedSessionsPanel"])); - } - set { - this["PuttySavedSessionsPanel"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool CompatibilityWarnLenovoAutoScrollUtility { - get { - return ((bool)(this["CompatibilityWarnLenovoAutoScrollUtility"])); - } - set { - this["CompatibilityWarnLenovoAutoScrollUtility"] = value; - } - } - - [global::System.Configuration.ApplicationScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("https://mremoteng.org/")] - public string UpdateAddress { - get { - return ((string)(this["UpdateAddress"])); - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultLoadBalanceInfo { - get { - return ((string)(this["ConDefaultLoadBalanceInfo"])); - } - set { - this["ConDefaultLoadBalanceInfo"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool ConDefaultAutomaticResize { - get { - return ((bool)(this["ConDefaultAutomaticResize"])); - } - set { - this["ConDefaultAutomaticResize"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultLoadBalanceInfo { - get { - return ((bool)(this["InhDefaultLoadBalanceInfo"])); - } - set { - this["InhDefaultLoadBalanceInfo"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultAutomaticResize { - get { - return ((bool)(this["InhDefaultAutomaticResize"])); - } - set { - this["InhDefaultAutomaticResize"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("RDP")] - [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] - public string QuickConnectProtocol { - get { - return ((string)(this["QuickConnectProtocol"])); - } - set { - this["QuickConnectProtocol"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("9/9, 33/8")] - [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] - public string KeysPreviousTab { - get { - return ((string)(this["KeysPreviousTab"])); - } - set { - this["KeysPreviousTab"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("9/8, 34/8")] - [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] - public string KeysNextTab { - get { - return ((string)(this["KeysNextTab"])); - } - set { - this["KeysNextTab"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ShowCompleteConsPathInTitle { - get { - return ((bool)(this["ShowCompleteConsPathInTitle"])); - } - set { - this["ShowCompleteConsPathInTitle"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("20")] - public int ConRDPOverallConnectionTimeout { - get { - return ((int)(this["ConRDPOverallConnectionTimeout"])); - } - set { - this["ConRDPOverallConnectionTimeout"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("AES")] - public global::mRemoteNG.Security.BlockCipherEngines EncryptionEngine { - get { - return ((global::mRemoteNG.Security.BlockCipherEngines)(this["EncryptionEngine"])); - } - set { - this["EncryptionEngine"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("GCM")] - public global::mRemoteNG.Security.BlockCipherModes EncryptionBlockCipherMode { - get { - return ((global::mRemoteNG.Security.BlockCipherModes)(this["EncryptionBlockCipherMode"])); - } - set { - this["EncryptionBlockCipherMode"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("10000")] - public int EncryptionKeyDerivationIterations { - get { - return ((int)(this["EncryptionKeyDerivationIterations"])); - } - set { - this["EncryptionKeyDerivationIterations"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("Dynamic")] - public string ConDefaultSoundQuality { - get { - return ((string)(this["ConDefaultSoundQuality"])); - } - set { - this["ConDefaultSoundQuality"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultSoundQuality { - get { - return ((bool)(this["InhDefaultSoundQuality"])); - } - set { - this["InhDefaultSoundQuality"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("0")] - public int ConDefaultRDPMinutesToIdleTimeout { - get { - return ((int)(this["ConDefaultRDPMinutesToIdleTimeout"])); - } - set { - this["ConDefaultRDPMinutesToIdleTimeout"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRDPMinutesToIdleTimeout { - get { - return ((bool)(this["InhDefaultRDPMinutesToIdleTimeout"])); - } - set { - this["InhDefaultRDPMinutesToIdleTimeout"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultRDPAlertIdleTimeout { - get { - return ((bool)(this["ConDefaultRDPAlertIdleTimeout"])); - } - set { - this["ConDefaultRDPAlertIdleTimeout"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRDPAlertIdleTimeout { - get { - return ((bool)(this["InhDefaultRDPAlertIdleTimeout"])); - } - set { - this["InhDefaultRDPAlertIdleTimeout"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultCredentialRecord { - get { - return ((bool)(this["InhDefaultCredentialRecord"])); - } - set { - this["InhDefaultCredentialRecord"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("00000000-0000-0000-0000-000000000000")] - public global::System.Guid ConDefaultCredentialRecord { - get { - return ((global::System.Guid)(this["ConDefaultCredentialRecord"])); - } - set { - this["ConDefaultCredentialRecord"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string LogFilePath { - get { - return ((string)(this["LogFilePath"])); - } - set { - this["LogFilePath"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool TextLogMessageWriterWriteDebugMsgs { - get { - return ((bool)(this["TextLogMessageWriterWriteDebugMsgs"])); - } - set { - this["TextLogMessageWriterWriteDebugMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool TextLogMessageWriterWriteInfoMsgs { - get { - return ((bool)(this["TextLogMessageWriterWriteInfoMsgs"])); - } - set { - this["TextLogMessageWriterWriteInfoMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool TextLogMessageWriterWriteWarningMsgs { - get { - return ((bool)(this["TextLogMessageWriterWriteWarningMsgs"])); - } - set { - this["TextLogMessageWriterWriteWarningMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool TextLogMessageWriterWriteErrorMsgs { - get { - return ((bool)(this["TextLogMessageWriterWriteErrorMsgs"])); - } - set { - this["TextLogMessageWriterWriteErrorMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool NotificationPanelWriterWriteDebugMsgs { - get { - return ((bool)(this["NotificationPanelWriterWriteDebugMsgs"])); - } - set { - this["NotificationPanelWriterWriteDebugMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool NotificationPanelWriterWriteInfoMsgs { - get { - return ((bool)(this["NotificationPanelWriterWriteInfoMsgs"])); - } - set { - this["NotificationPanelWriterWriteInfoMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool NotificationPanelWriterWriteWarningMsgs { - get { - return ((bool)(this["NotificationPanelWriterWriteWarningMsgs"])); - } - set { - this["NotificationPanelWriterWriteWarningMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool NotificationPanelWriterWriteErrorMsgs { - get { - return ((bool)(this["NotificationPanelWriterWriteErrorMsgs"])); - } - set { - this["NotificationPanelWriterWriteErrorMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool PopupMessageWriterWriteDebugMsgs { - get { - return ((bool)(this["PopupMessageWriterWriteDebugMsgs"])); - } - set { - this["PopupMessageWriterWriteDebugMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool PopupMessageWriterWriteInfoMsgs { - get { - return ((bool)(this["PopupMessageWriterWriteInfoMsgs"])); - } - set { - this["PopupMessageWriterWriteInfoMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool PopupMessageWriterWriteWarningMsgs { - get { - return ((bool)(this["PopupMessageWriterWriteWarningMsgs"])); - } - set { - this["PopupMessageWriterWriteWarningMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool PopupMessageWriterWriteErrorMsgs { - get { - return ((bool)(this["PopupMessageWriterWriteErrorMsgs"])); - } - set { - this["PopupMessageWriterWriteErrorMsgs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool LogToApplicationDirectory { - get { - return ((bool)(this["LogToApplicationDirectory"])); - } - set { - this["LogToApplicationDirectory"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool PromptUnlockCredReposOnStartup { - get { - return ((bool)(this["PromptUnlockCredReposOnStartup"])); - } - set { - this["PromptUnlockCredReposOnStartup"] = value; - } - } - - [global::System.Configuration.ApplicationScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("cs-CZ,de,el,en,en-US,es-AR,es,fr,hu,it,lt,ja-JP,ko-KR,nb-NO,nl,pt,pt-BR,pl,ru,uk," + - "tr-TR,zh-CN,zh-TW")] - public string SupportedUICultures { - get { - return ((string)(this["SupportedUICultures"])); - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool ThemingActive { - get { - return ((bool)(this["ThemingActive"])); - } - set { - this["ThemingActive"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultUsername { - get { - return ((string)(this["ConDefaultUsername"])); - } - set { - this["ConDefaultUsername"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultPassword { - get { - return ((string)(this["ConDefaultPassword"])); - } - set { - this["ConDefaultPassword"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultDomain { - get { - return ((string)(this["ConDefaultDomain"])); - } - set { - this["ConDefaultDomain"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("General")] - public string ConDefaultPanel { - get { - return ((string)(this["ConDefaultPanel"])); - } - set { - this["ConDefaultPanel"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool SaveConnectionsAfterEveryEdit { - get { - return ((bool)(this["SaveConnectionsAfterEveryEdit"])); - } - set { - this["SaveConnectionsAfterEveryEdit"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool UseFilterSearch { - get { - return ((bool)(this["UseFilterSearch"])); - } - set { - this["UseFilterSearch"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool SQLReadOnly { - get { - return ((bool)(this["SQLReadOnly"])); - } - set { - this["SQLReadOnly"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool LockToolbars { - get { - return ((bool)(this["LockToolbars"])); - } - set { - this["LockToolbars"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool RdpLoadBalanceInfoUseUtf8 { - get { - return ((bool)(this["RdpLoadBalanceInfoUseUtf8"])); - } - set { - this["RdpLoadBalanceInfoUseUtf8"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] - public global::System.Drawing.Point MultiSshToolbarLocation { - get { - return ((global::System.Drawing.Point)(this["MultiSshToolbarLocation"])); - } - set { - this["MultiSshToolbarLocation"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string MultiSshToolbarParentDock { - get { - return ((string)(this["MultiSshToolbarParentDock"])); - } - set { - this["MultiSshToolbarParentDock"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool MultiSshToolbarVisible { - get { - return ((bool)(this["MultiSshToolbarVisible"])); - } - set { - this["MultiSshToolbarVisible"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool CreateEmptyPanelOnStartUp { - get { - return ((bool)(this["CreateEmptyPanelOnStartUp"])); - } - set { - this["CreateEmptyPanelOnStartUp"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("General")] - public string StartUpPanelName { - get { - return ((string)(this["StartUpPanelName"])); - } - set { - this["StartUpPanelName"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool TrackActiveConnectionInConnectionTree { - get { - return ((bool)(this["TrackActiveConnectionInConnectionTree"])); - } - set { - this["TrackActiveConnectionInConnectionTree"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool PlaceSearchBarAboveConnectionTree { - get { - return ((bool)(this["PlaceSearchBarAboveConnectionTree"])); - } - set { - this["PlaceSearchBarAboveConnectionTree"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("True")] - public bool AlwaysShowConnectionTabs { - get { - return ((bool)(this["AlwaysShowConnectionTabs"])); - } - set { - this["AlwaysShowConnectionTabs"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool OverrideFIPSCheck { - get { - return ((bool)(this["OverrideFIPSCheck"])); - } - set { - this["OverrideFIPSCheck"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultFavorite { - get { - return ((bool)(this["ConDefaultFavorite"])); - } - set { - this["ConDefaultFavorite"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultFavorite { - get { - return ((bool)(this["InhDefaultFavorite"])); - } - set { - this["InhDefaultFavorite"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("mssql")] - public string SQLServerType { - get { - return ((string)(this["SQLServerType"])); - } - set { - this["SQLServerType"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool DoNotTrimUsername { - get { - return ((bool)(this["DoNotTrimUsername"])); - } - set { - this["DoNotTrimUsername"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultVmId { - get { - return ((string)(this["ConDefaultVmId"])); - } - set { - this["ConDefaultVmId"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultVmId { - get { - return ((bool)(this["InhDefaultVmId"])); - } - set { - this["InhDefaultVmId"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultUseVmId { - get { - return ((bool)(this["InhDefaultUseVmId"])); - } - set { - this["InhDefaultUseVmId"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("0")] - public int SaveConnectionsFrequency { - get { - return ((int)(this["SaveConnectionsFrequency"])); - } - set { - this["SaveConnectionsFrequency"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("Highest")] - public string ConDefaultRdpVersion { - get { - return ((string)(this["ConDefaultRdpVersion"])); - } - set { - this["ConDefaultRdpVersion"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultRdpVersion { - get { - return ((bool)(this["InhDefaultRdpVersion"])); - } - set { - this["InhDefaultRdpVersion"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultSSHTunnelConnectionName { - get { - return ((bool)(this["InhDefaultSSHTunnelConnectionName"])); - } - set { - this["InhDefaultSSHTunnelConnectionName"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultSSHTunnelConnectionName { - get { - return ((string)(this["ConDefaultSSHTunnelConnectionName"])); - } - set { - this["ConDefaultSSHTunnelConnectionName"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultSSHOptions { - get { - return ((bool)(this["InhDefaultSSHOptions"])); - } - set { - this["InhDefaultSSHOptions"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultSSHOptions { - get { - return ((string)(this["ConDefaultSSHOptions"])); - } - set { - this["ConDefaultSSHOptions"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool StartMinimized { - get { - return ((bool)(this["StartMinimized"])); - } - set { - this["StartMinimized"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultUseEnhancedMode { - get { - return ((bool)(this["ConDefaultUseEnhancedMode"])); - } - set { - this["ConDefaultUseEnhancedMode"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool InhDefaultUseEnhancedMode { - get { - return ((bool)(this["InhDefaultUseEnhancedMode"])); - } - set { - this["InhDefaultUseEnhancedMode"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool CloseToTray { - get { - return ((bool)(this["CloseToTray"])); - } - set { - this["CloseToTray"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool StartupComponentsCheck { - get { - return ((bool)(this["StartupComponentsCheck"])); - } - set { - this["StartupComponentsCheck"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultDisableFullWindowDrag { - get { - return ((bool)(this["ConDefaultDisableFullWindowDrag"])); - } - set { - this["ConDefaultDisableFullWindowDrag"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultDisableMenuAnimations { - get { - return ((bool)(this["ConDefaultDisableMenuAnimations"])); - } - set { - this["ConDefaultDisableMenuAnimations"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultDisableCursorShadow { - get { - return ((bool)(this["ConDefaultDisableCursorShadow"])); - } - set { - this["ConDefaultDisableCursorShadow"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ConDefaultDisableCursorBlinking { - get { - return ((bool)(this["ConDefaultDisableCursorBlinking"])); - } - set { - this["ConDefaultDisableCursorBlinking"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string ConDefaultStartProgram { - get { - return ((string)(this["ConDefaultStartProgram"])); - } - set { - this["ConDefaultStartProgram"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("EncrBasic")] - public string ConDefaultICAEncryptionStrength { - get { - return ((string)(this["ConDefaultICAEncryptionStrength"])); - } - set { - this["ConDefaultICAEncryptionStrength"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public string InhDefaultICAEncryptionStrength { - get { - return ((string)(this["InhDefaultICAEncryptionStrength"])); - } - set { - this["InhDefaultICAEncryptionStrength"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool StartFullScreen { - get { - return ((bool)(this["StartFullScreen"])); - } - set { - this["StartFullScreen"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ViewMenuMessages { - get { - return ((bool)(this["ViewMenuMessages"])); - } - set { - this["ViewMenuMessages"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ViewMenuQuickConnect { - get { - return ((bool)(this["ViewMenuQuickConnect"])); - } - set { - this["ViewMenuQuickConnect"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ViewMenuExternalTools { - get { - return ((bool)(this["ViewMenuExternalTools"])); - } - set { - this["ViewMenuExternalTools"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool ViewMenuMultiSSH { - get { - return ((bool)(this["ViewMenuMultiSSH"])); - } - set { - this["ViewMenuMultiSSH"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("EdgeChromium")] - public string ConDefaultRenderingEngine { - get { - return ((string)(this["ConDefaultRenderingEngine"])); - } - set { - this["ConDefaultRenderingEngine"] = value; - } - } - - [global::System.Configuration.UserScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("")] - public string OpeningCommand { - get { - return ((string)(this["OpeningCommand"])); - } - set { - this["OpeningCommand"] = value; - } - } - } -} +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace mRemoteNG.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.0.3.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] + public global::System.Drawing.Point MainFormLocation { + get { + return ((global::System.Drawing.Point)(this["MainFormLocation"])); + } + set { + this["MainFormLocation"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] + public global::System.Drawing.Size MainFormSize { + get { + return ((global::System.Drawing.Size)(this["MainFormSize"])); + } + set { + this["MainFormSize"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Normal")] + public global::System.Windows.Forms.FormWindowState MainFormState { + get { + return ((global::System.Windows.Forms.FormWindowState)(this["MainFormState"])); + } + set { + this["MainFormState"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool MainFormKiosk { + get { + return ((bool)(this["MainFormKiosk"])); + } + set { + this["MainFormKiosk"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool DoUpgrade { + get { + return ((bool)(this["DoUpgrade"])); + } + set { + this["DoUpgrade"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string CustomPuttyPath { + get { + return ((string)(this["CustomPuttyPath"])); + } + set { + this["CustomPuttyPath"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool SwitchToMCOnInformation { + get { + return ((bool)(this["SwitchToMCOnInformation"])); + } + set { + this["SwitchToMCOnInformation"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool SwitchToMCOnWarning { + get { + return ((bool)(this["SwitchToMCOnWarning"])); + } + set { + this["SwitchToMCOnWarning"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool SwitchToMCOnError { + get { + return ((bool)(this["SwitchToMCOnError"])); + } + set { + this["SwitchToMCOnError"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool LoadConsFromCustomLocation { + get { + return ((bool)(this["LoadConsFromCustomLocation"])); + } + set { + this["LoadConsFromCustomLocation"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string CustomConsPath { + get { + return ((string)(this["CustomConsPath"])); + } + set { + this["CustomConsPath"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool SaveConsOnExit { + get { + return ((bool)(this["SaveConsOnExit"])); + } + set { + this["SaveConsOnExit"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool CheckForUpdatesOnStartup { + get { + return ((bool)(this["CheckForUpdatesOnStartup"])); + } + set { + this["CheckForUpdatesOnStartup"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ShowDescriptionTooltipsInTree { + get { + return ((bool)(this["ShowDescriptionTooltipsInTree"])); + } + set { + this["ShowDescriptionTooltipsInTree"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ShowSystemTrayIcon { + get { + return ((bool)(this["ShowSystemTrayIcon"])); + } + set { + this["ShowSystemTrayIcon"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool OpenTabsRightOfSelected { + get { + return ((bool)(this["OpenTabsRightOfSelected"])); + } + set { + this["OpenTabsRightOfSelected"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ShowLogonInfoOnTabs { + get { + return ((bool)(this["ShowLogonInfoOnTabs"])); + } + set { + this["ShowLogonInfoOnTabs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool SingleClickOnConnectionOpensIt { + get { + return ((bool)(this["SingleClickOnConnectionOpensIt"])); + } + set { + this["SingleClickOnConnectionOpensIt"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("noinfo")] + public string EmptyCredentials { + get { + return ((string)(this["EmptyCredentials"])); + } + set { + this["EmptyCredentials"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string DefaultUsername { + get { + return ((string)(this["DefaultUsername"])); + } + set { + this["DefaultUsername"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string DefaultPassword { + get { + return ((string)(this["DefaultPassword"])); + } + set { + this["DefaultPassword"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string DefaultDomain { + get { + return ((string)(this["DefaultDomain"])); + } + set { + this["DefaultDomain"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool UseCustomPuttyPath { + get { + return ((bool)(this["UseCustomPuttyPath"])); + } + set { + this["UseCustomPuttyPath"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool FirstStart { + get { + return ((bool)(this["FirstStart"])); + } + set { + this["FirstStart"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ShowProtocolOnTabs { + get { + return ((bool)(this["ShowProtocolOnTabs"])); + } + set { + this["ShowProtocolOnTabs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ResetPanels { + get { + return ((bool)(this["ResetPanels"])); + } + set { + this["ResetPanels"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool UpdateUseProxy { + get { + return ((bool)(this["UpdateUseProxy"])); + } + set { + this["UpdateUseProxy"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string UpdateProxyAddress { + get { + return ((string)(this["UpdateProxyAddress"])); + } + set { + this["UpdateProxyAddress"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("80")] + public int UpdateProxyPort { + get { + return ((int)(this["UpdateProxyPort"])); + } + set { + this["UpdateProxyPort"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool UpdateProxyUseAuthentication { + get { + return ((bool)(this["UpdateProxyUseAuthentication"])); + } + set { + this["UpdateProxyUseAuthentication"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string UpdateProxyAuthUser { + get { + return ((string)(this["UpdateProxyAuthUser"])); + } + set { + this["UpdateProxyAuthUser"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string UpdateProxyAuthPass { + get { + return ((string)(this["UpdateProxyAuthPass"])); + } + set { + this["UpdateProxyAuthPass"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultDescription { + get { + return ((string)(this["ConDefaultDescription"])); + } + set { + this["ConDefaultDescription"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("RDP")] + public string ConDefaultProtocol { + get { + return ((string)(this["ConDefaultProtocol"])); + } + set { + this["ConDefaultProtocol"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Default Settings")] + public string ConDefaultPuttySession { + get { + return ((string)(this["ConDefaultPuttySession"])); + } + set { + this["ConDefaultPuttySession"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultUseConsoleSession { + get { + return ((bool)(this["ConDefaultUseConsoleSession"])); + } + set { + this["ConDefaultUseConsoleSession"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("FitToWindow")] + public string ConDefaultResolution { + get { + return ((string)(this["ConDefaultResolution"])); + } + set { + this["ConDefaultResolution"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Colors16Bit")] + public string ConDefaultColors { + get { + return ((string)(this["ConDefaultColors"])); + } + set { + this["ConDefaultColors"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultCacheBitmaps { + get { + return ((bool)(this["ConDefaultCacheBitmaps"])); + } + set { + this["ConDefaultCacheBitmaps"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultDisplayWallpaper { + get { + return ((bool)(this["ConDefaultDisplayWallpaper"])); + } + set { + this["ConDefaultDisplayWallpaper"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultDisplayThemes { + get { + return ((bool)(this["ConDefaultDisplayThemes"])); + } + set { + this["ConDefaultDisplayThemes"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultRedirectKeys { + get { + return ((bool)(this["ConDefaultRedirectKeys"])); + } + set { + this["ConDefaultRedirectKeys"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultRedirectDiskDrives { + get { + return ((bool)(this["ConDefaultRedirectDiskDrives"])); + } + set { + this["ConDefaultRedirectDiskDrives"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultRedirectPrinters { + get { + return ((bool)(this["ConDefaultRedirectPrinters"])); + } + set { + this["ConDefaultRedirectPrinters"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultRedirectClipboard { + get { + return ((bool)(this["ConDefaultRedirectClipboard"])); + } + set { + this["ConDefaultRedirectClipboard"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultRedirectPorts { + get { + return ((bool)(this["ConDefaultRedirectPorts"])); + } + set { + this["ConDefaultRedirectPorts"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultRedirectSmartCards { + get { + return ((bool)(this["ConDefaultRedirectSmartCards"])); + } + set { + this["ConDefaultRedirectSmartCards"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("DoNotPlay")] + public string ConDefaultRedirectSound { + get { + return ((string)(this["ConDefaultRedirectSound"])); + } + set { + this["ConDefaultRedirectSound"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultRedirectAudioCapture { + get { + return ((bool)(this["ConDefaultRedirectAudioCapture"])); + } + set { + this["ConDefaultRedirectAudioCapture"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("2")] + public int MaxPuttyWaitTime { + get { + return ((int)(this["MaxPuttyWaitTime"])); + } + set { + this["MaxPuttyWaitTime"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool SingleInstance { + get { + return ((bool)(this["SingleInstance"])); + } + set { + this["SingleInstance"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool OpenConsFromLastSession { + get { + return ((bool)(this["OpenConsFromLastSession"])); + } + set { + this["OpenConsFromLastSession"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool NoReconnect { + get { + return ((bool)(this["NoReconnect"])); + } + set { + this["NoReconnect"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0")] + public int AutoSaveEveryMinutes { + get { + return ((int)(this["AutoSaveEveryMinutes"])); + } + set { + this["AutoSaveEveryMinutes"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ExtAppsTBVisible { + get { + return ((bool)(this["ExtAppsTBVisible"])); + } + set { + this["ExtAppsTBVisible"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool ExtAppsTBShowText { + get { + return ((bool)(this["ExtAppsTBShowText"])); + } + set { + this["ExtAppsTBShowText"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] + public global::System.Drawing.Point ExtAppsTBLocation { + get { + return ((global::System.Drawing.Point)(this["ExtAppsTBLocation"])); + } + set { + this["ExtAppsTBLocation"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Bottom")] + public string ExtAppsTBParentDock { + get { + return ((string)(this["ExtAppsTBParentDock"])); + } + set { + this["ExtAppsTBParentDock"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool QuickyTBVisible { + get { + return ((bool)(this["QuickyTBVisible"])); + } + set { + this["QuickyTBVisible"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("3, 24")] + public global::System.Drawing.Point QuickyTBLocation { + get { + return ((global::System.Drawing.Point)(this["QuickyTBLocation"])); + } + set { + this["QuickyTBLocation"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Top")] + public string QuickyTBParentDock { + get { + return ((string)(this["QuickyTBParentDock"])); + } + set { + this["QuickyTBParentDock"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ResetToolbars { + get { + return ((bool)(this["ResetToolbars"])); + } + set { + this["ResetToolbars"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool UseSQLServer { + get { + return ((bool)(this["UseSQLServer"])); + } + set { + this["UseSQLServer"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string SQLHost { + get { + return ((string)(this["SQLHost"])); + } + set { + this["SQLHost"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string SQLUser { + get { + return ((string)(this["SQLUser"])); + } + set { + this["SQLUser"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string SQLPass { + get { + return ((string)(this["SQLPass"])); + } + set { + this["SQLPass"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultCacheBitmaps { + get { + return ((bool)(this["InhDefaultCacheBitmaps"])); + } + set { + this["InhDefaultCacheBitmaps"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultColors { + get { + return ((bool)(this["InhDefaultColors"])); + } + set { + this["InhDefaultColors"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultDescription { + get { + return ((bool)(this["InhDefaultDescription"])); + } + set { + this["InhDefaultDescription"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultDisplayThemes { + get { + return ((bool)(this["InhDefaultDisplayThemes"])); + } + set { + this["InhDefaultDisplayThemes"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultDisplayWallpaper { + get { + return ((bool)(this["InhDefaultDisplayWallpaper"])); + } + set { + this["InhDefaultDisplayWallpaper"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultDomain { + get { + return ((bool)(this["InhDefaultDomain"])); + } + set { + this["InhDefaultDomain"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultIcon { + get { + return ((bool)(this["InhDefaultIcon"])); + } + set { + this["InhDefaultIcon"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultPassword { + get { + return ((bool)(this["InhDefaultPassword"])); + } + set { + this["InhDefaultPassword"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultPort { + get { + return ((bool)(this["InhDefaultPort"])); + } + set { + this["InhDefaultPort"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultProtocol { + get { + return ((bool)(this["InhDefaultProtocol"])); + } + set { + this["InhDefaultProtocol"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultPuttySession { + get { + return ((bool)(this["InhDefaultPuttySession"])); + } + set { + this["InhDefaultPuttySession"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRedirectDiskDrives { + get { + return ((bool)(this["InhDefaultRedirectDiskDrives"])); + } + set { + this["InhDefaultRedirectDiskDrives"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRedirectKeys { + get { + return ((bool)(this["InhDefaultRedirectKeys"])); + } + set { + this["InhDefaultRedirectKeys"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRedirectPorts { + get { + return ((bool)(this["InhDefaultRedirectPorts"])); + } + set { + this["InhDefaultRedirectPorts"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRedirectPrinters { + get { + return ((bool)(this["InhDefaultRedirectPrinters"])); + } + set { + this["InhDefaultRedirectPrinters"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRedirectClipboard { + get { + return ((bool)(this["InhDefaultRedirectClipboard"])); + } + set { + this["InhDefaultRedirectClipboard"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRedirectSmartCards { + get { + return ((bool)(this["InhDefaultRedirectSmartCards"])); + } + set { + this["InhDefaultRedirectSmartCards"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRedirectSound { + get { + return ((bool)(this["InhDefaultRedirectSound"])); + } + set { + this["InhDefaultRedirectSound"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRedirectAudioCapture { + get { + return ((bool)(this["InhDefaultRedirectAudioCapture"])); + } + set { + this["InhDefaultRedirectAudioCapture"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultResolution { + get { + return ((bool)(this["InhDefaultResolution"])); + } + set { + this["InhDefaultResolution"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultUseConsoleSession { + get { + return ((bool)(this["InhDefaultUseConsoleSession"])); + } + set { + this["InhDefaultUseConsoleSession"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultUsername { + get { + return ((bool)(this["InhDefaultUsername"])); + } + set { + this["InhDefaultUsername"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultPanel { + get { + return ((bool)(this["InhDefaultPanel"])); + } + set { + this["InhDefaultPanel"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultPreExtApp { + get { + return ((string)(this["ConDefaultPreExtApp"])); + } + set { + this["ConDefaultPreExtApp"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultPostExtApp { + get { + return ((string)(this["ConDefaultPostExtApp"])); + } + set { + this["ConDefaultPostExtApp"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultPreExtApp { + get { + return ((bool)(this["InhDefaultPreExtApp"])); + } + set { + this["InhDefaultPreExtApp"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultPostExtApp { + get { + return ((bool)(this["InhDefaultPostExtApp"])); + } + set { + this["InhDefaultPostExtApp"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool SetHostnameLikeDisplayName { + get { + return ((bool)(this["SetHostnameLikeDisplayName"])); + } + set { + this["SetHostnameLikeDisplayName"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool DoubleClickOnTabClosesIt { + get { + return ((bool)(this["DoubleClickOnTabClosesIt"])); + } + set { + this["DoubleClickOnTabClosesIt"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ReconnectOnDisconnect { + get { + return ((bool)(this["ReconnectOnDisconnect"])); + } + set { + this["ReconnectOnDisconnect"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool AlwaysShowPanelSelectionDlg { + get { + return ((bool)(this["AlwaysShowPanelSelectionDlg"])); + } + set { + this["AlwaysShowPanelSelectionDlg"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("AuthVNC")] + public string ConDefaultVNCAuthMode { + get { + return ((string)(this["ConDefaultVNCAuthMode"])); + } + set { + this["ConDefaultVNCAuthMode"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("ColNormal")] + public string ConDefaultVNCColors { + get { + return ((string)(this["ConDefaultVNCColors"])); + } + set { + this["ConDefaultVNCColors"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("SmartSAspect")] + public string ConDefaultVNCSmartSizeMode { + get { + return ((string)(this["ConDefaultVNCSmartSizeMode"])); + } + set { + this["ConDefaultVNCSmartSizeMode"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultVNCViewOnly { + get { + return ((bool)(this["ConDefaultVNCViewOnly"])); + } + set { + this["ConDefaultVNCViewOnly"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("CompNone")] + public string ConDefaultVNCCompression { + get { + return ((string)(this["ConDefaultVNCCompression"])); + } + set { + this["ConDefaultVNCCompression"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("EncHextile")] + public string ConDefaultVNCEncoding { + get { + return ((string)(this["ConDefaultVNCEncoding"])); + } + set { + this["ConDefaultVNCEncoding"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultVNCProxyIP { + get { + return ((string)(this["ConDefaultVNCProxyIP"])); + } + set { + this["ConDefaultVNCProxyIP"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultVNCProxyPassword { + get { + return ((string)(this["ConDefaultVNCProxyPassword"])); + } + set { + this["ConDefaultVNCProxyPassword"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0")] + public int ConDefaultVNCProxyPort { + get { + return ((int)(this["ConDefaultVNCProxyPort"])); + } + set { + this["ConDefaultVNCProxyPort"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("ProxyNone")] + public string ConDefaultVNCProxyType { + get { + return ((string)(this["ConDefaultVNCProxyType"])); + } + set { + this["ConDefaultVNCProxyType"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultVNCProxyUsername { + get { + return ((string)(this["ConDefaultVNCProxyUsername"])); + } + set { + this["ConDefaultVNCProxyUsername"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCAuthMode { + get { + return ((bool)(this["InhDefaultVNCAuthMode"])); + } + set { + this["InhDefaultVNCAuthMode"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCColors { + get { + return ((bool)(this["InhDefaultVNCColors"])); + } + set { + this["InhDefaultVNCColors"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCSmartSizeMode { + get { + return ((bool)(this["InhDefaultVNCSmartSizeMode"])); + } + set { + this["InhDefaultVNCSmartSizeMode"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCViewOnly { + get { + return ((bool)(this["InhDefaultVNCViewOnly"])); + } + set { + this["InhDefaultVNCViewOnly"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCCompression { + get { + return ((bool)(this["InhDefaultVNCCompression"])); + } + set { + this["InhDefaultVNCCompression"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCEncoding { + get { + return ((bool)(this["InhDefaultVNCEncoding"])); + } + set { + this["InhDefaultVNCEncoding"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCProxyIP { + get { + return ((bool)(this["InhDefaultVNCProxyIP"])); + } + set { + this["InhDefaultVNCProxyIP"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCProxyPassword { + get { + return ((bool)(this["InhDefaultVNCProxyPassword"])); + } + set { + this["InhDefaultVNCProxyPassword"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCProxyPort { + get { + return ((bool)(this["InhDefaultVNCProxyPort"])); + } + set { + this["InhDefaultVNCProxyPort"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCProxyType { + get { + return ((bool)(this["InhDefaultVNCProxyType"])); + } + set { + this["InhDefaultVNCProxyType"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVNCProxyUsername { + get { + return ((bool)(this["InhDefaultVNCProxyUsername"])); + } + set { + this["InhDefaultVNCProxyUsername"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool MinimizeToTray { + get { + return ((bool)(this["MinimizeToTray"])); + } + set { + this["MinimizeToTray"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool SingleClickSwitchesToOpenConnection { + get { + return ((bool)(this["SingleClickSwitchesToOpenConnection"])); + } + set { + this["SingleClickSwitchesToOpenConnection"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("NoAuth")] + public string ConDefaultRDPAuthenticationLevel { + get { + return ((string)(this["ConDefaultRDPAuthenticationLevel"])); + } + set { + this["ConDefaultRDPAuthenticationLevel"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRDPAuthenticationLevel { + get { + return ((bool)(this["InhDefaultRDPAuthenticationLevel"])); + } + set { + this["InhDefaultRDPAuthenticationLevel"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("5500")] + public int UVNCSCPort { + get { + return ((int)(this["UVNCSCPort"])); + } + set { + this["UVNCSCPort"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string XULRunnerPath { + get { + return ((string)(this["XULRunnerPath"])); + } + set { + this["XULRunnerPath"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRenderingEngine { + get { + return ((bool)(this["InhDefaultRenderingEngine"])); + } + set { + this["InhDefaultRenderingEngine"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultMacAddress { + get { + return ((string)(this["ConDefaultMacAddress"])); + } + set { + this["ConDefaultMacAddress"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultMacAddress { + get { + return ((bool)(this["InhDefaultMacAddress"])); + } + set { + this["InhDefaultMacAddress"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool EncryptCompleteConnectionsFile { + get { + return ((bool)(this["EncryptCompleteConnectionsFile"])); + } + set { + this["EncryptCompleteConnectionsFile"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultUserField { + get { + return ((string)(this["ConDefaultUserField"])); + } + set { + this["ConDefaultUserField"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultUserField { + get { + return ((bool)(this["InhDefaultUserField"])); + } + set { + this["InhDefaultUserField"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultExtApp { + get { + return ((string)(this["ConDefaultExtApp"])); + } + set { + this["ConDefaultExtApp"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultExtApp { + get { + return ((bool)(this["InhDefaultExtApp"])); + } + set { + this["InhDefaultExtApp"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool CheckForUpdatesAsked { + get { + return ((bool)(this["CheckForUpdatesAsked"])); + } + set { + this["CheckForUpdatesAsked"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("14")] + public int CheckForUpdatesFrequencyDays { + get { + return ((int)(this["CheckForUpdatesFrequencyDays"])); + } + set { + this["CheckForUpdatesFrequencyDays"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("1980-01-01")] + public global::System.DateTime CheckForUpdatesLastCheck { + get { + return ((global::System.DateTime)(this["CheckForUpdatesLastCheck"])); + } + set { + this["CheckForUpdatesLastCheck"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool UpdatePending { + get { + return ((bool)(this["UpdatePending"])); + } + set { + this["UpdatePending"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Never")] + public string ConDefaultRDGatewayUsageMethod { + get { + return ((string)(this["ConDefaultRDGatewayUsageMethod"])); + } + set { + this["ConDefaultRDGatewayUsageMethod"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Yes")] + public string ConDefaultRDGatewayUseConnectionCredentials { + get { + return ((string)(this["ConDefaultRDGatewayUseConnectionCredentials"])); + } + set { + this["ConDefaultRDGatewayUseConnectionCredentials"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("mRemoteNG")] + public string ConDefaultIcon { + get { + return ((string)(this["ConDefaultIcon"])); + } + set { + this["ConDefaultIcon"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRDGatewayUsageMethod { + get { + return ((bool)(this["InhDefaultRDGatewayUsageMethod"])); + } + set { + this["InhDefaultRDGatewayUsageMethod"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRDGatewayHostname { + get { + return ((bool)(this["InhDefaultRDGatewayHostname"])); + } + set { + this["InhDefaultRDGatewayHostname"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRDGatewayUsername { + get { + return ((bool)(this["InhDefaultRDGatewayUsername"])); + } + set { + this["InhDefaultRDGatewayUsername"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRDGatewayPassword { + get { + return ((bool)(this["InhDefaultRDGatewayPassword"])); + } + set { + this["InhDefaultRDGatewayPassword"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRDGatewayDomain { + get { + return ((bool)(this["InhDefaultRDGatewayDomain"])); + } + set { + this["InhDefaultRDGatewayDomain"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRDGatewayUseConnectionCredentials { + get { + return ((bool)(this["InhDefaultRDGatewayUseConnectionCredentials"])); + } + set { + this["InhDefaultRDGatewayUseConnectionCredentials"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("5")] + public int RdpReconnectionCount { + get { + return ((int)(this["RdpReconnectionCount"])); + } + set { + this["RdpReconnectionCount"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string OverrideUICulture { + get { + return ((string)(this["OverrideUICulture"])); + } + set { + this["OverrideUICulture"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultRDGatewayHostname { + get { + return ((string)(this["ConDefaultRDGatewayHostname"])); + } + set { + this["ConDefaultRDGatewayHostname"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultRDGatewayUsername { + get { + return ((string)(this["ConDefaultRDGatewayUsername"])); + } + set { + this["ConDefaultRDGatewayUsername"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultRDGatewayPassword { + get { + return ((string)(this["ConDefaultRDGatewayPassword"])); + } + set { + this["ConDefaultRDGatewayPassword"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultRDGatewayDomain { + get { + return ((string)(this["ConDefaultRDGatewayDomain"])); + } + set { + this["ConDefaultRDGatewayDomain"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultEnableFontSmoothing { + get { + return ((bool)(this["ConDefaultEnableFontSmoothing"])); + } + set { + this["ConDefaultEnableFontSmoothing"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultEnableFontSmoothing { + get { + return ((bool)(this["InhDefaultEnableFontSmoothing"])); + } + set { + this["InhDefaultEnableFontSmoothing"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultEnableDesktopComposition { + get { + return ((bool)(this["ConDefaultEnableDesktopComposition"])); + } + set { + this["ConDefaultEnableDesktopComposition"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultEnableDesktopComposition { + get { + return ((bool)(this["InhDefaultEnableDesktopComposition"])); + } + set { + this["InhDefaultEnableDesktopComposition"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultDisableFullWindowDrag { + get { + return ((bool)(this["InhDefaultDisableFullWindowDrag"])); + } + set { + this["InhDefaultDisableFullWindowDrag"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultDisableMenuAnimations { + get { + return ((bool)(this["InhDefaultDisableMenuAnimations"])); + } + set { + this["InhDefaultDisableMenuAnimations"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultDisableCursorShadow { + get { + return ((bool)(this["InhDefaultDisableCursorShadow"])); + } + set { + this["InhDefaultDisableCursorShadow"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultDisableCursorBlinking { + get { + return ((bool)(this["InhDefaultDisableCursorBlinking"])); + } + set { + this["InhDefaultDisableCursorBlinking"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("4")] + public int ConfirmCloseConnection { + get { + return ((int)(this["ConfirmCloseConnection"])); + } + set { + this["ConfirmCloseConnection"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Drawing.Size MainFormRestoreSize { + get { + return ((global::System.Drawing.Size)(this["MainFormRestoreSize"])); + } + set { + this["MainFormRestoreSize"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + public global::System.Drawing.Point MainFormRestoreLocation { + get { + return ((global::System.Drawing.Point)(this["MainFormRestoreLocation"])); + } + set { + this["MainFormRestoreLocation"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("mRemoteNG")] + public string SQLDatabaseName { + get { + return ((string)(this["SQLDatabaseName"])); + } + set { + this["SQLDatabaseName"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("10")] + [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] + public int BackupFileKeepCount { + get { + return ((int)(this["BackupFileKeepCount"])); + } + set { + this["BackupFileKeepCount"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("{0}.{1:yyyyMMdd-HHmmssffff}.backup")] + [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] + public string BackupFileNameFormat { + get { + return ((string)(this["BackupFileNameFormat"])); + } + set { + this["BackupFileNameFormat"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultUseCredSsp { + get { + return ((bool)(this["InhDefaultUseCredSsp"])); + } + set { + this["InhDefaultUseCredSsp"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool ConDefaultUseCredSsp { + get { + return ((bool)(this["ConDefaultUseCredSsp"])); + } + set { + this["ConDefaultUseCredSsp"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultUseVmId { + get { + return ((bool)(this["ConDefaultUseVmId"])); + } + set { + this["ConDefaultUseVmId"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] + public bool AlwaysShowPanelTabs { + get { + return ((bool)(this["AlwaysShowPanelTabs"])); + } + set { + this["AlwaysShowPanelTabs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] + public bool IdentifyQuickConnectTabs { + get { + return ((bool)(this["IdentifyQuickConnectTabs"])); + } + set { + this["IdentifyQuickConnectTabs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("release")] + public string UpdateChannel { + get { + return ((string)(this["UpdateChannel"])); + } + set { + this["UpdateChannel"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ThemeName { + get { + return ((string)(this["ThemeName"])); + } + set { + this["ThemeName"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool ShowConfigHelpText { + get { + return ((bool)(this["ShowConfigHelpText"])); + } + set { + this["ShowConfigHelpText"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string PuttySavedSessionsName { + get { + return ((string)(this["PuttySavedSessionsName"])); + } + set { + this["PuttySavedSessionsName"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string PuttySavedSessionsPanel { + get { + return ((string)(this["PuttySavedSessionsPanel"])); + } + set { + this["PuttySavedSessionsPanel"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool CompatibilityWarnLenovoAutoScrollUtility { + get { + return ((bool)(this["CompatibilityWarnLenovoAutoScrollUtility"])); + } + set { + this["CompatibilityWarnLenovoAutoScrollUtility"] = value; + } + } + + [global::System.Configuration.ApplicationScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("https://mremoteng.org/")] + public string UpdateAddress { + get { + return ((string)(this["UpdateAddress"])); + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultLoadBalanceInfo { + get { + return ((string)(this["ConDefaultLoadBalanceInfo"])); + } + set { + this["ConDefaultLoadBalanceInfo"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool ConDefaultAutomaticResize { + get { + return ((bool)(this["ConDefaultAutomaticResize"])); + } + set { + this["ConDefaultAutomaticResize"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultLoadBalanceInfo { + get { + return ((bool)(this["InhDefaultLoadBalanceInfo"])); + } + set { + this["InhDefaultLoadBalanceInfo"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultAutomaticResize { + get { + return ((bool)(this["InhDefaultAutomaticResize"])); + } + set { + this["InhDefaultAutomaticResize"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("RDP")] + [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] + public string QuickConnectProtocol { + get { + return ((string)(this["QuickConnectProtocol"])); + } + set { + this["QuickConnectProtocol"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("9/9, 33/8")] + [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] + public string KeysPreviousTab { + get { + return ((string)(this["KeysPreviousTab"])); + } + set { + this["KeysPreviousTab"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("9/8, 34/8")] + [global::System.Configuration.SettingsManageabilityAttribute(global::System.Configuration.SettingsManageability.Roaming)] + public string KeysNextTab { + get { + return ((string)(this["KeysNextTab"])); + } + set { + this["KeysNextTab"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ShowCompleteConsPathInTitle { + get { + return ((bool)(this["ShowCompleteConsPathInTitle"])); + } + set { + this["ShowCompleteConsPathInTitle"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("20")] + public int ConRDPOverallConnectionTimeout { + get { + return ((int)(this["ConRDPOverallConnectionTimeout"])); + } + set { + this["ConRDPOverallConnectionTimeout"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("AES")] + public global::mRemoteNG.Security.BlockCipherEngines EncryptionEngine { + get { + return ((global::mRemoteNG.Security.BlockCipherEngines)(this["EncryptionEngine"])); + } + set { + this["EncryptionEngine"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("GCM")] + public global::mRemoteNG.Security.BlockCipherModes EncryptionBlockCipherMode { + get { + return ((global::mRemoteNG.Security.BlockCipherModes)(this["EncryptionBlockCipherMode"])); + } + set { + this["EncryptionBlockCipherMode"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("10000")] + public int EncryptionKeyDerivationIterations { + get { + return ((int)(this["EncryptionKeyDerivationIterations"])); + } + set { + this["EncryptionKeyDerivationIterations"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Dynamic")] + public string ConDefaultSoundQuality { + get { + return ((string)(this["ConDefaultSoundQuality"])); + } + set { + this["ConDefaultSoundQuality"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultSoundQuality { + get { + return ((bool)(this["InhDefaultSoundQuality"])); + } + set { + this["InhDefaultSoundQuality"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0")] + public int ConDefaultRDPMinutesToIdleTimeout { + get { + return ((int)(this["ConDefaultRDPMinutesToIdleTimeout"])); + } + set { + this["ConDefaultRDPMinutesToIdleTimeout"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRDPMinutesToIdleTimeout { + get { + return ((bool)(this["InhDefaultRDPMinutesToIdleTimeout"])); + } + set { + this["InhDefaultRDPMinutesToIdleTimeout"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultRDPAlertIdleTimeout { + get { + return ((bool)(this["ConDefaultRDPAlertIdleTimeout"])); + } + set { + this["ConDefaultRDPAlertIdleTimeout"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRDPAlertIdleTimeout { + get { + return ((bool)(this["InhDefaultRDPAlertIdleTimeout"])); + } + set { + this["InhDefaultRDPAlertIdleTimeout"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultCredentialRecord { + get { + return ((bool)(this["InhDefaultCredentialRecord"])); + } + set { + this["InhDefaultCredentialRecord"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("00000000-0000-0000-0000-000000000000")] + public global::System.Guid ConDefaultCredentialRecord { + get { + return ((global::System.Guid)(this["ConDefaultCredentialRecord"])); + } + set { + this["ConDefaultCredentialRecord"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string LogFilePath { + get { + return ((string)(this["LogFilePath"])); + } + set { + this["LogFilePath"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool TextLogMessageWriterWriteDebugMsgs { + get { + return ((bool)(this["TextLogMessageWriterWriteDebugMsgs"])); + } + set { + this["TextLogMessageWriterWriteDebugMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool TextLogMessageWriterWriteInfoMsgs { + get { + return ((bool)(this["TextLogMessageWriterWriteInfoMsgs"])); + } + set { + this["TextLogMessageWriterWriteInfoMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool TextLogMessageWriterWriteWarningMsgs { + get { + return ((bool)(this["TextLogMessageWriterWriteWarningMsgs"])); + } + set { + this["TextLogMessageWriterWriteWarningMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool TextLogMessageWriterWriteErrorMsgs { + get { + return ((bool)(this["TextLogMessageWriterWriteErrorMsgs"])); + } + set { + this["TextLogMessageWriterWriteErrorMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool NotificationPanelWriterWriteDebugMsgs { + get { + return ((bool)(this["NotificationPanelWriterWriteDebugMsgs"])); + } + set { + this["NotificationPanelWriterWriteDebugMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool NotificationPanelWriterWriteInfoMsgs { + get { + return ((bool)(this["NotificationPanelWriterWriteInfoMsgs"])); + } + set { + this["NotificationPanelWriterWriteInfoMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool NotificationPanelWriterWriteWarningMsgs { + get { + return ((bool)(this["NotificationPanelWriterWriteWarningMsgs"])); + } + set { + this["NotificationPanelWriterWriteWarningMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool NotificationPanelWriterWriteErrorMsgs { + get { + return ((bool)(this["NotificationPanelWriterWriteErrorMsgs"])); + } + set { + this["NotificationPanelWriterWriteErrorMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool PopupMessageWriterWriteDebugMsgs { + get { + return ((bool)(this["PopupMessageWriterWriteDebugMsgs"])); + } + set { + this["PopupMessageWriterWriteDebugMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool PopupMessageWriterWriteInfoMsgs { + get { + return ((bool)(this["PopupMessageWriterWriteInfoMsgs"])); + } + set { + this["PopupMessageWriterWriteInfoMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool PopupMessageWriterWriteWarningMsgs { + get { + return ((bool)(this["PopupMessageWriterWriteWarningMsgs"])); + } + set { + this["PopupMessageWriterWriteWarningMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool PopupMessageWriterWriteErrorMsgs { + get { + return ((bool)(this["PopupMessageWriterWriteErrorMsgs"])); + } + set { + this["PopupMessageWriterWriteErrorMsgs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool LogToApplicationDirectory { + get { + return ((bool)(this["LogToApplicationDirectory"])); + } + set { + this["LogToApplicationDirectory"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool PromptUnlockCredReposOnStartup { + get { + return ((bool)(this["PromptUnlockCredReposOnStartup"])); + } + set { + this["PromptUnlockCredReposOnStartup"] = value; + } + } + + [global::System.Configuration.ApplicationScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("cs-CZ,de,el,en,en-US,es-AR,es,fr,hu,it,lt,ja-JP,ko-KR,nb-NO,nl,pt,pt-BR,pl,ru,uk," + + "tr-TR,zh-CN,zh-TW")] + public string SupportedUICultures { + get { + return ((string)(this["SupportedUICultures"])); + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool ThemingActive { + get { + return ((bool)(this["ThemingActive"])); + } + set { + this["ThemingActive"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultUsername { + get { + return ((string)(this["ConDefaultUsername"])); + } + set { + this["ConDefaultUsername"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultPassword { + get { + return ((string)(this["ConDefaultPassword"])); + } + set { + this["ConDefaultPassword"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultDomain { + get { + return ((string)(this["ConDefaultDomain"])); + } + set { + this["ConDefaultDomain"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("General")] + public string ConDefaultPanel { + get { + return ((string)(this["ConDefaultPanel"])); + } + set { + this["ConDefaultPanel"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool SaveConnectionsAfterEveryEdit { + get { + return ((bool)(this["SaveConnectionsAfterEveryEdit"])); + } + set { + this["SaveConnectionsAfterEveryEdit"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool UseFilterSearch { + get { + return ((bool)(this["UseFilterSearch"])); + } + set { + this["UseFilterSearch"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool SQLReadOnly { + get { + return ((bool)(this["SQLReadOnly"])); + } + set { + this["SQLReadOnly"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool LockToolbars { + get { + return ((bool)(this["LockToolbars"])); + } + set { + this["LockToolbars"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool RdpLoadBalanceInfoUseUtf8 { + get { + return ((bool)(this["RdpLoadBalanceInfoUseUtf8"])); + } + set { + this["RdpLoadBalanceInfoUseUtf8"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0, 0")] + public global::System.Drawing.Point MultiSshToolbarLocation { + get { + return ((global::System.Drawing.Point)(this["MultiSshToolbarLocation"])); + } + set { + this["MultiSshToolbarLocation"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string MultiSshToolbarParentDock { + get { + return ((string)(this["MultiSshToolbarParentDock"])); + } + set { + this["MultiSshToolbarParentDock"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool MultiSshToolbarVisible { + get { + return ((bool)(this["MultiSshToolbarVisible"])); + } + set { + this["MultiSshToolbarVisible"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool CreateEmptyPanelOnStartUp { + get { + return ((bool)(this["CreateEmptyPanelOnStartUp"])); + } + set { + this["CreateEmptyPanelOnStartUp"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("General")] + public string StartUpPanelName { + get { + return ((string)(this["StartUpPanelName"])); + } + set { + this["StartUpPanelName"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool TrackActiveConnectionInConnectionTree { + get { + return ((bool)(this["TrackActiveConnectionInConnectionTree"])); + } + set { + this["TrackActiveConnectionInConnectionTree"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool PlaceSearchBarAboveConnectionTree { + get { + return ((bool)(this["PlaceSearchBarAboveConnectionTree"])); + } + set { + this["PlaceSearchBarAboveConnectionTree"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool AlwaysShowConnectionTabs { + get { + return ((bool)(this["AlwaysShowConnectionTabs"])); + } + set { + this["AlwaysShowConnectionTabs"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool OverrideFIPSCheck { + get { + return ((bool)(this["OverrideFIPSCheck"])); + } + set { + this["OverrideFIPSCheck"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultFavorite { + get { + return ((bool)(this["ConDefaultFavorite"])); + } + set { + this["ConDefaultFavorite"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultFavorite { + get { + return ((bool)(this["InhDefaultFavorite"])); + } + set { + this["InhDefaultFavorite"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("mssql")] + public string SQLServerType { + get { + return ((string)(this["SQLServerType"])); + } + set { + this["SQLServerType"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool DoNotTrimUsername { + get { + return ((bool)(this["DoNotTrimUsername"])); + } + set { + this["DoNotTrimUsername"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultVmId { + get { + return ((string)(this["ConDefaultVmId"])); + } + set { + this["ConDefaultVmId"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultVmId { + get { + return ((bool)(this["InhDefaultVmId"])); + } + set { + this["InhDefaultVmId"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultUseVmId { + get { + return ((bool)(this["InhDefaultUseVmId"])); + } + set { + this["InhDefaultUseVmId"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("0")] + public int SaveConnectionsFrequency { + get { + return ((int)(this["SaveConnectionsFrequency"])); + } + set { + this["SaveConnectionsFrequency"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Highest")] + public string ConDefaultRdpVersion { + get { + return ((string)(this["ConDefaultRdpVersion"])); + } + set { + this["ConDefaultRdpVersion"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultRdpVersion { + get { + return ((bool)(this["InhDefaultRdpVersion"])); + } + set { + this["InhDefaultRdpVersion"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultSSHTunnelConnectionName { + get { + return ((bool)(this["InhDefaultSSHTunnelConnectionName"])); + } + set { + this["InhDefaultSSHTunnelConnectionName"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultSSHTunnelConnectionName { + get { + return ((string)(this["ConDefaultSSHTunnelConnectionName"])); + } + set { + this["ConDefaultSSHTunnelConnectionName"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultSSHOptions { + get { + return ((bool)(this["InhDefaultSSHOptions"])); + } + set { + this["InhDefaultSSHOptions"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultSSHOptions { + get { + return ((string)(this["ConDefaultSSHOptions"])); + } + set { + this["ConDefaultSSHOptions"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool StartMinimized { + get { + return ((bool)(this["StartMinimized"])); + } + set { + this["StartMinimized"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultUseEnhancedMode { + get { + return ((bool)(this["ConDefaultUseEnhancedMode"])); + } + set { + this["ConDefaultUseEnhancedMode"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool InhDefaultUseEnhancedMode { + get { + return ((bool)(this["InhDefaultUseEnhancedMode"])); + } + set { + this["InhDefaultUseEnhancedMode"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool CloseToTray { + get { + return ((bool)(this["CloseToTray"])); + } + set { + this["CloseToTray"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool StartupComponentsCheck { + get { + return ((bool)(this["StartupComponentsCheck"])); + } + set { + this["StartupComponentsCheck"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultDisableFullWindowDrag { + get { + return ((bool)(this["ConDefaultDisableFullWindowDrag"])); + } + set { + this["ConDefaultDisableFullWindowDrag"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultDisableMenuAnimations { + get { + return ((bool)(this["ConDefaultDisableMenuAnimations"])); + } + set { + this["ConDefaultDisableMenuAnimations"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultDisableCursorShadow { + get { + return ((bool)(this["ConDefaultDisableCursorShadow"])); + } + set { + this["ConDefaultDisableCursorShadow"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConDefaultDisableCursorBlinking { + get { + return ((bool)(this["ConDefaultDisableCursorBlinking"])); + } + set { + this["ConDefaultDisableCursorBlinking"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ConDefaultStartProgram { + get { + return ((string)(this["ConDefaultStartProgram"])); + } + set { + this["ConDefaultStartProgram"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("EncrBasic")] + public string ConDefaultICAEncryptionStrength { + get { + return ((string)(this["ConDefaultICAEncryptionStrength"])); + } + set { + this["ConDefaultICAEncryptionStrength"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public string InhDefaultICAEncryptionStrength { + get { + return ((string)(this["InhDefaultICAEncryptionStrength"])); + } + set { + this["InhDefaultICAEncryptionStrength"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool StartFullScreen { + get { + return ((bool)(this["StartFullScreen"])); + } + set { + this["StartFullScreen"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ViewMenuMessages { + get { + return ((bool)(this["ViewMenuMessages"])); + } + set { + this["ViewMenuMessages"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ViewMenuQuickConnect { + get { + return ((bool)(this["ViewMenuQuickConnect"])); + } + set { + this["ViewMenuQuickConnect"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ViewMenuExternalTools { + get { + return ((bool)(this["ViewMenuExternalTools"])); + } + set { + this["ViewMenuExternalTools"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ViewMenuMultiSSH { + get { + return ((bool)(this["ViewMenuMultiSSH"])); + } + set { + this["ViewMenuMultiSSH"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("EdgeChromium")] + public string ConDefaultRenderingEngine { + get { + return ((string)(this["ConDefaultRenderingEngine"])); + } + set { + this["ConDefaultRenderingEngine"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string OpeningCommand { + get { + return ((string)(this["OpeningCommand"])); + } + set { + this["OpeningCommand"] = value; + } + } + } +} diff --git a/mRemoteNG/Properties/Settings.settings b/mRemoteNG/Properties/Settings.settings index 590c8a56d..cb74c10ef 100644 --- a/mRemoteNG/Properties/Settings.settings +++ b/mRemoteNG/Properties/Settings.settings @@ -1,805 +1,805 @@ - - - - - - 0, 0 - - - 0, 0 - - - Normal - - - False - - - True - - - - - - True - - - True - - - True - - - False - - - - - - True - - - True - - - False - - - False - - - True - - - False - - - False - - - noinfo - - - - - - - - - - - - False - - - True - - - False - - - False - - - False - - - - - - 80 - - - False - - - - - - - - - - - - RDP - - - Default Settings - - - False - - - FitToWindow - - - Colors16Bit - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - DoNotPlay - - - False - - - 2 - - - False - - - False - - - False - - - 0 - - - False - - - True - - - 0, 0 - - - Bottom - - - True - - - 3, 24 - - - Top - - - False - - - False - - - - - - - - - - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - - - - - - - False - - - False - - - False - - - True - - - False - - - False - - - AuthVNC - - - ColNormal - - - SmartSAspect - - - False - - - CompNone - - - EncHextile - - - - - - - - - 0 - - - ProxyNone - - - - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - NoAuth - - - False - - - 5500 - - - - - - False - - - - - - False - - - False - - - - - - False - - - - - - False - - - False - - - 14 - - - 1980-01-01 - - - False - - - Never - - - Yes - - - mRemoteNG - - - False - - - False - - - False - - - False - - - False - - - False - - - 5 - - - - - - - - - - - - - - - - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - 4 - - - - - - - - - mRemoteNG - - - 10 - - - {0}.{1:yyyyMMdd-HHmmssffff}.backup - - - False - - - True - - - False - - - False - - - False - - - release - - - - - - True - - - - - - - - - True - - - https://mremoteng.org/ - - - - - - True - - - False - - - False - - - RDP - - - 9/9, 33/8 - - - 9/8, 34/8 - - - False - - - 20 - - - AES - - - GCM - - - 10000 - - - Dynamic - - - False - - - 0 - - - False - - - False - - - False - - - False - - - 00000000-0000-0000-0000-000000000000 - - - - - - False - - - True - - - True - - - True - - - False - - - False - - - True - - - True - - - False - - - False - - - False - - - False - - - True - - - True - - - cs-CZ,de,el,en,en-US,es-AR,es,fr,hu,it,lt,ja-JP,ko-KR,nb-NO,nl,pt,pt-BR,pl,ru,uk,tr-TR,zh-CN,zh-TW - - - True - - - - - - - - - - - - General - - - True - - - False - - - False - - - False - - - False - - - 0, 0 - - - - - - False - - - False - - - General - - - False - - - True - - - True - - - False - - - False - - - False - - - mssql - - - False - - - - - - False - - - False - - - 0 - - - Highest - - - False - - - False - - - - - - False - - - - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - - - - EncrBasic - - - False - - - False - - - False - - - False - - - False - - - False - - - EdgeChromium - - - - - - + + + + + + 0, 0 + + + 0, 0 + + + Normal + + + False + + + True + + + + + + True + + + True + + + True + + + False + + + + + + True + + + True + + + False + + + False + + + True + + + False + + + False + + + noinfo + + + + + + + + + + + + False + + + True + + + False + + + False + + + False + + + + + + 80 + + + False + + + + + + + + + + + + RDP + + + Default Settings + + + False + + + FitToWindow + + + Colors16Bit + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + DoNotPlay + + + False + + + 2 + + + False + + + False + + + False + + + 0 + + + False + + + True + + + 0, 0 + + + Bottom + + + True + + + 3, 24 + + + Top + + + False + + + False + + + + + + + + + + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + + + + + + + False + + + False + + + False + + + True + + + False + + + False + + + AuthVNC + + + ColNormal + + + SmartSAspect + + + False + + + CompNone + + + EncHextile + + + + + + + + + 0 + + + ProxyNone + + + + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + NoAuth + + + False + + + 5500 + + + + + + False + + + + + + False + + + False + + + + + + False + + + + + + False + + + False + + + 14 + + + 1980-01-01 + + + False + + + Never + + + Yes + + + mRemoteNG + + + False + + + False + + + False + + + False + + + False + + + False + + + 5 + + + + + + + + + + + + + + + + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + 4 + + + + + + + + + mRemoteNG + + + 10 + + + {0}.{1:yyyyMMdd-HHmmssffff}.backup + + + False + + + True + + + False + + + False + + + False + + + release + + + + + + True + + + + + + + + + True + + + https://mremoteng.org/ + + + + + + True + + + False + + + False + + + RDP + + + 9/9, 33/8 + + + 9/8, 34/8 + + + False + + + 20 + + + AES + + + GCM + + + 10000 + + + Dynamic + + + False + + + 0 + + + False + + + False + + + False + + + False + + + 00000000-0000-0000-0000-000000000000 + + + + + + False + + + True + + + True + + + True + + + False + + + False + + + True + + + True + + + False + + + False + + + False + + + False + + + True + + + True + + + cs-CZ,de,el,en,en-US,es-AR,es,fr,hu,it,lt,ja-JP,ko-KR,nb-NO,nl,pt,pt-BR,pl,ru,uk,tr-TR,zh-CN,zh-TW + + + True + + + + + + + + + + + + General + + + True + + + False + + + False + + + False + + + False + + + 0, 0 + + + + + + False + + + False + + + General + + + False + + + True + + + True + + + False + + + False + + + False + + + mssql + + + False + + + + + + False + + + False + + + 0 + + + Highest + + + False + + + False + + + + + + False + + + + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + + + + EncrBasic + + + False + + + False + + + False + + + False + + + False + + + False + + + EdgeChromium + + + + + + \ No newline at end of file diff --git a/mRemoteNG/Schemas/mremoteng_confcons_v2_7.xsd b/mRemoteNG/Schemas/mremoteng_confcons_v2_7.xsd index 41221e8a7..a94f9248c 100644 --- a/mRemoteNG/Schemas/mremoteng_confcons_v2_7.xsd +++ b/mRemoteNG/Schemas/mremoteng_confcons_v2_7.xsd @@ -8,167 +8,168 @@ xmlns:xs="http://www.w3.org/2001/XMLSchema"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mRemoteNG/app.config b/mRemoteNG/app.config index c3d8a4e7e..d9d62c1d9 100644 --- a/mRemoteNG/app.config +++ b/mRemoteNG/app.config @@ -1,831 +1,831 @@ - - - -
- -
- - -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0, 0 - - - 0, 0 - - - Normal - - - False - - - True - - - - - - True - - - True - - - True - - - False - - - - - - True - - - True - - - False - - - False - - - True - - - False - - - False - - - noinfo - - - - - - - - - - - - False - - - True - - - False - - - False - - - False - - - - - - 80 - - - False - - - - - - - - - - - - RDP - - - Default Settings - - - False - - - FitToWindow - - - Colors16Bit - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - DoNotPlay - - - False - - - 2 - - - False - - - False - - - False - - - 0 - - - False - - - True - - - 0, 0 - - - Bottom - - - True - - - 3, 24 - - - Top - - - False - - - False - - - - - - - - - - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - - - - - - - False - - - False - - - False - - - True - - - False - - - False - - - AuthVNC - - - ColNormal - - - SmartSAspect - - - False - - - CompNone - - - EncHextile - - - - - - - - - 0 - - - ProxyNone - - - - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - NoAuth - - - False - - - 5500 - - - - - - False - - - - - - False - - - False - - - - - - False - - - - - - False - - - False - - - 14 - - - 1980-01-01 - - - False - - - Never - - - Yes - - - mRemoteNG - - - False - - - False - - - False - - - False - - - False - - - False - - - 5 - - - - - - - - - - - - - - - - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - 4 - - - mRemoteNG - - - 10 - - - {0}.{1:yyyyMMdd-HHmmssffff}.backup - - - False - - - True - - - False - - - False - - - False - - - release - - - - - - True - - - - - - - - - True - - - - - - True - - - False - - - False - - - RDP - - - 9/9, 33/8 - - - 9/8, 34/8 - - - False - - - 20 - - - 10000 - - - Dynamic - - - False - - - 0 - - - False - - - False - - - False - - - False - - - 00000000-0000-0000-0000-000000000000 - - - - - - False - - - True - - - True - - - True - - - False - - - False - - - True - - - True - - - False - - - False - - - False - - - False - - - True - - - True - - - True - - - - - - - - - - - - General - - - True - - - False - - - False - - - False - - - False - - - 0, 0 - - - - - - False - - - False - - - General - - - False - - - True - - - True - - - False - - - False - - - False - - - mssql - - - False - - - - - - False - - - False - - - 0 - - - Highest - - - False - - - False - - - - - - False - - - - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - False - - - - - - EncrBasic - - - False - - - False - - - False - - - False - - - False - - - False - - - EdgeChromium - - - - - - - https://mremoteng.org/ - - - cs-CZ,de,el,en,en-US,es-AR,es,fr,hu,it,lt,ja-JP,ko-KR,nb-NO,nl,pt,pt-BR,pl,ru,uk,tr-TR,zh-CN,zh-TW - - - - - - + + + +
+ +
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0, 0 + + + 0, 0 + + + Normal + + + False + + + True + + + + + + True + + + True + + + True + + + False + + + + + + True + + + True + + + False + + + False + + + True + + + False + + + False + + + noinfo + + + + + + + + + + + + False + + + True + + + False + + + False + + + False + + + + + + 80 + + + False + + + + + + + + + + + + RDP + + + Default Settings + + + False + + + FitToWindow + + + Colors16Bit + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + DoNotPlay + + + False + + + 2 + + + False + + + False + + + False + + + 0 + + + False + + + True + + + 0, 0 + + + Bottom + + + True + + + 3, 24 + + + Top + + + False + + + False + + + + + + + + + + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + + + + + + + False + + + False + + + False + + + True + + + False + + + False + + + AuthVNC + + + ColNormal + + + SmartSAspect + + + False + + + CompNone + + + EncHextile + + + + + + + + + 0 + + + ProxyNone + + + + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + NoAuth + + + False + + + 5500 + + + + + + False + + + + + + False + + + False + + + + + + False + + + + + + False + + + False + + + 14 + + + 1980-01-01 + + + False + + + Never + + + Yes + + + mRemoteNG + + + False + + + False + + + False + + + False + + + False + + + False + + + 5 + + + + + + + + + + + + + + + + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + 4 + + + mRemoteNG + + + 10 + + + {0}.{1:yyyyMMdd-HHmmssffff}.backup + + + False + + + True + + + False + + + False + + + False + + + release + + + + + + True + + + + + + + + + True + + + + + + True + + + False + + + False + + + RDP + + + 9/9, 33/8 + + + 9/8, 34/8 + + + False + + + 20 + + + 10000 + + + Dynamic + + + False + + + 0 + + + False + + + False + + + False + + + False + + + 00000000-0000-0000-0000-000000000000 + + + + + + False + + + True + + + True + + + True + + + False + + + False + + + True + + + True + + + False + + + False + + + False + + + False + + + True + + + True + + + True + + + + + + + + + + + + General + + + True + + + False + + + False + + + False + + + False + + + 0, 0 + + + + + + False + + + False + + + General + + + False + + + True + + + True + + + False + + + False + + + False + + + mssql + + + False + + + + + + False + + + False + + + 0 + + + Highest + + + False + + + False + + + + + + False + + + + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + False + + + + + + EncrBasic + + + False + + + False + + + False + + + False + + + False + + + False + + + EdgeChromium + + + + + + + https://mremoteng.org/ + + + cs-CZ,de,el,en,en-US,es-AR,es,fr,hu,it,lt,ja-JP,ko-KR,nb-NO,nl,pt,pt-BR,pl,ru,uk,tr-TR,zh-CN,zh-TW + + + + + + \ No newline at end of file diff --git a/mRemoteNGDocumentation/mssql_db_setup.sql b/mRemoteNGDocumentation/mssql_db_setup.sql index 1e252575b..b599f811b 100644 --- a/mRemoteNGDocumentation/mssql_db_setup.sql +++ b/mRemoteNGDocumentation/mssql_db_setup.sql @@ -157,7 +157,9 @@ CREATE TABLE [dbo].[tblCons] ( [InheritVNCProxyUsername] bit NOT NULL, [InheritVNCSmartSizeMode] bit NOT NULL, [InheritVNCViewOnly] bit NOT NULL, - [InheritVmId] bit + [InheritVmId] bit, + [StartProgram] varchar(512), + [StartProgramWorkDir] varchar(512) ) ON [PRIMARY] GO @@ -165,7 +167,7 @@ CREATE TABLE [dbo].[tblRoot] ( [Name] [varchar] (2048) NOT NULL , [Export] [bit] NOT NULL , [Protected] [varchar] (4048) NOT NULL , - [ConfVersion] [float] NOT NULL + [ConfVersion] [varchar] (15) NOT NULL ) ON [PRIMARY] GO diff --git a/mRemoteNGDocumentation/mysql_db_setup.sql b/mRemoteNGDocumentation/mysql_db_setup.sql index 58241f345..c88e2f396 100644 --- a/mRemoteNGDocumentation/mysql_db_setup.sql +++ b/mRemoteNGDocumentation/mysql_db_setup.sql @@ -161,6 +161,8 @@ CREATE TABLE `tblCons` ( `InheritVNCSmartSizeMode` tinyint(1) NOT NULL, `InheritVNCViewOnly` tinyint(1) NOT NULL, `InheritVmId` tinyint(1) DEFAULT NULL, + `StartProgram` varchar(512) DEFAULT NULL, + `StartProgramWorkDir` varchar(512) DEFAULT NULL, PRIMARY KEY (`ConstantID`), UNIQUE (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=3324 DEFAULT CHARSET=latin1; @@ -177,7 +179,7 @@ CREATE TABLE `tblRoot` ( `Name` varchar(2048) NOT NULL, `Export` tinyint(1) NOT NULL, `Protected` varchar(4048) NOT NULL, - `ConfVersion` double NOT NULL + `ConfVersion` varchar(15) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */;