Merge pull request #1772 from mRemoteNG/missing_rdp_settings

Missing RDP settings
This commit is contained in:
Faryan Rezagholi
2020-05-28 12:10:44 +02:00
committed by GitHub
39 changed files with 1702 additions and 1300 deletions

View File

@@ -5,9 +5,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## [Unreleased]
### Added
- #1770: Added missing RDP performance settings
- #545: Option to minimize to system tray on closing
- #283: Support for native PowerShell remoting as new protocol
- #420: SSH tunneling implemented
- #283: Support for native PowerShell remoting as new protocol
### Changed
- #1767: Turned about window into a simple popup form
- #1766: Converted components check page into options page

View File

@@ -109,6 +109,10 @@ namespace mRemoteNGTests.Config.Serializers.ConnectionSerializers.Csv
DisplayThemes = true,
EnableFontSmoothing = true,
EnableDesktopComposition = true,
DisableFullWindowDrag = false,
DisableMenuAnimations = false,
DisableCursorShadow = false,
DisableCursorBlinking = false,
CacheBitmaps = true,
RedirectDiskDrives = true,
RedirectPorts = true,

View File

@@ -37,6 +37,10 @@
public TType DisplayThemes { get; set; }
public TType EnableFontSmoothing { get; set; }
public TType EnableDesktopComposition { get; set; }
public TType DisableFullWindowDrag { get; set; }
public TType DisableMenuAnimations { get; set; }
public TType DisableCursorShadow { get; set; }
public TType DisableCursorBlinking { get; set; }
public TType RedirectKeys { get; set; }
public TType RedirectDiskDrives { get; set; }
public TType RedirectPrinters { get; set; }

View File

@@ -282,6 +282,10 @@ namespace mRemoteNGTests.UI.Window.ConfigWindowTests
nameof(ConnectionInfo.DisplayThemes),
nameof(ConnectionInfo.EnableFontSmoothing),
nameof(ConnectionInfo.EnableDesktopComposition),
nameof(ConnectionInfo.DisableFullWindowDrag),
nameof(ConnectionInfo.DisableMenuAnimations),
nameof(ConnectionInfo.DisableCursorShadow),
nameof(ConnectionInfo.DisableCursorBlinking),
nameof(ConnectionInfo.RedirectKeys),
nameof(ConnectionInfo.RedirectDiskDrives),
nameof(ConnectionInfo.RedirectPrinters),

View File

@@ -86,302 +86,344 @@ namespace mRemoteNG.Config.Serializers.Csv
? new ConnectionInfo(nodeId)
: new ContainerInfo(nodeId);
connectionRecord.Name = headers.Contains("Name") ? connectionCsv[headers.IndexOf("Name")] : "";
connectionRecord.Description =
headers.Contains("Description") ? connectionCsv[headers.IndexOf("Description")] : "";
connectionRecord.Icon = headers.Contains("Icon") ? connectionCsv[headers.IndexOf("Icon")] : "";
connectionRecord.Panel = headers.Contains("Panel") ? connectionCsv[headers.IndexOf("Panel")] : "";
connectionRecord.Username = headers.Contains("Username") ? connectionCsv[headers.IndexOf("Username")] : "";
connectionRecord.Password = headers.Contains("Password") ? connectionCsv[headers.IndexOf("Password")] : "";
connectionRecord.Domain = headers.Contains("Domain") ? connectionCsv[headers.IndexOf("Domain")] : "";
connectionRecord.Hostname = headers.Contains("Hostname") ? connectionCsv[headers.IndexOf("Hostname")] : "";
connectionRecord.VmId = headers.Contains("VmId") ? connectionCsv[headers.IndexOf("VmId")] : "";
connectionRecord.SSHOptions =
headers.Contains("SSHOptions") ? connectionCsv[headers.IndexOf("SSHOptions")] : "";
connectionRecord.SSHTunnelConnectionName =
headers.Contains("SSHTunnelConnectionName") ? connectionCsv[headers.IndexOf("SSHTunnelConnectionName")] : "";
connectionRecord.PuttySession = headers.Contains("PuttySession") ? connectionCsv[headers.IndexOf("PuttySession")] : "";
connectionRecord.Name = headers.Contains("Name")
? connectionCsv[headers.IndexOf("Name")]
: "";
connectionRecord.Description = headers.Contains("Description")
? connectionCsv[headers.IndexOf("Description")]
: "";
connectionRecord.Icon = headers.Contains("Icon")
? connectionCsv[headers.IndexOf("Icon")]
: "";
connectionRecord.Panel = headers.Contains("Panel")
? connectionCsv[headers.IndexOf("Panel")]
: "";
connectionRecord.Username = headers.Contains("Username")
? connectionCsv[headers.IndexOf("Username")]
: "";
connectionRecord.Password = headers.Contains("Password")
? connectionCsv[headers.IndexOf("Password")]
: "";
connectionRecord.Domain = headers.Contains("Domain")
? connectionCsv[headers.IndexOf("Domain")]
: "";
connectionRecord.Hostname = headers.Contains("Hostname")
? connectionCsv[headers.IndexOf("Hostname")]
: "";
connectionRecord.VmId = headers.Contains("VmId")
? connectionCsv[headers.IndexOf("VmId")] : "";
connectionRecord.SSHOptions =headers.Contains("SSHOptions")
? connectionCsv[headers.IndexOf("SSHOptions")]
: "";
connectionRecord.SSHTunnelConnectionName = headers.Contains("SSHTunnelConnectionName")
? connectionCsv[headers.IndexOf("SSHTunnelConnectionName")]
: "";
connectionRecord.PuttySession = headers.Contains("PuttySession")
? connectionCsv[headers.IndexOf("PuttySession")]
: "";
connectionRecord.LoadBalanceInfo = headers.Contains("LoadBalanceInfo")
? connectionCsv[headers.IndexOf("LoadBalanceInfo")]
: "";
connectionRecord.PreExtApp = headers.Contains("PreExtApp") ? connectionCsv[headers.IndexOf("PreExtApp")] : "";
connectionRecord.PreExtApp = headers.Contains("PreExtApp")
? connectionCsv[headers.IndexOf("PreExtApp")]
: "";
connectionRecord.PostExtApp =
headers.Contains("PostExtApp") ? connectionCsv[headers.IndexOf("PostExtApp")] : "";
headers.Contains("PostExtApp")
? connectionCsv[headers.IndexOf("PostExtApp")]
: "";
connectionRecord.MacAddress =
headers.Contains("MacAddress") ? connectionCsv[headers.IndexOf("MacAddress")] : "";
headers.Contains("MacAddress")
? connectionCsv[headers.IndexOf("MacAddress")]
: "";
connectionRecord.UserField =
headers.Contains("UserField") ? connectionCsv[headers.IndexOf("UserField")] : "";
connectionRecord.ExtApp = headers.Contains("ExtApp") ? connectionCsv[headers.IndexOf("ExtApp")] : "";
headers.Contains("UserField")
? connectionCsv[headers.IndexOf("UserField")]
: "";
connectionRecord.ExtApp = headers.Contains("ExtApp")
? connectionCsv[headers.IndexOf("ExtApp")] : "";
connectionRecord.VNCProxyUsername = headers.Contains("VNCProxyUsername")
? connectionCsv[headers.IndexOf("VNCProxyUsername")]
: "";
connectionRecord.VNCProxyPassword = headers.Contains("VNCProxyPassword")
? connectionCsv[headers.IndexOf("VNCProxyPassword")]
: "";
connectionRecord.RDGatewayUsername = headers.Contains("RDGatewayUsername")
? connectionCsv[headers.IndexOf("RDGatewayUsername")]
: "";
connectionRecord.RDGatewayPassword = headers.Contains("RDGatewayPassword")
? connectionCsv[headers.IndexOf("RDGatewayPassword")]
: "";
connectionRecord.RDGatewayDomain = headers.Contains("RDGatewayDomain")
? connectionCsv[headers.IndexOf("RDGatewayDomain")]
: "";
connectionRecord.VNCProxyIP =
headers.Contains("VNCProxyIP") ? connectionCsv[headers.IndexOf("VNCProxyIP")] : "";
connectionRecord.VNCProxyIP = headers.Contains("VNCProxyIP")
? connectionCsv[headers.IndexOf("VNCProxyIP")]
: "";
connectionRecord.RDGatewayHostname = headers.Contains("RDGatewayHostname")
? connectionCsv[headers.IndexOf("RDGatewayHostname")]
: "";
if (headers.Contains("Protocol"))
{
ProtocolType protocolType;
if (Enum.TryParse(connectionCsv[headers.IndexOf("Protocol")], out protocolType))
if (Enum.TryParse(connectionCsv[headers.IndexOf("Protocol")], out ProtocolType protocolType))
connectionRecord.Protocol = protocolType;
}
if (headers.Contains("Port"))
{
int port;
if (int.TryParse(connectionCsv[headers.IndexOf("Port")], out port))
if (int.TryParse(connectionCsv[headers.IndexOf("Port")], out int port))
connectionRecord.Port = port;
}
if (headers.Contains("ConnectToConsole"))
{
bool useConsoleSession;
if (bool.TryParse(connectionCsv[headers.IndexOf("ConnectToConsole")], out useConsoleSession))
if (bool.TryParse(connectionCsv[headers.IndexOf("ConnectToConsole")], out bool useConsoleSession))
connectionRecord.UseConsoleSession = useConsoleSession;
}
if (headers.Contains("UseCredSsp"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("UseCredSsp")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("UseCredSsp")], out bool value))
connectionRecord.UseCredSsp = value;
}
if (headers.Contains("UseVmId"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("UseVmId")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("UseVmId")], out bool value))
connectionRecord.UseVmId = value;
}
if (headers.Contains("UseEnhancedMode"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("UseEnhancedMode")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("UseEnhancedMode")], out bool value))
connectionRecord.UseEnhancedMode = value;
}
if (headers.Contains("RenderingEngine"))
{
HTTPBase.RenderingEngine value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("RenderingEngine")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("RenderingEngine")], out HTTPBase.RenderingEngine value))
connectionRecord.RenderingEngine = value;
}
if (headers.Contains("ICAEncryptionStrength"))
{
IcaProtocol.EncryptionStrength value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("ICAEncryptionStrength")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("ICAEncryptionStrength")], out IcaProtocol.EncryptionStrength value))
connectionRecord.ICAEncryptionStrength = value;
}
if (headers.Contains("RDPAuthenticationLevel"))
{
AuthenticationLevel value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("RDPAuthenticationLevel")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("RDPAuthenticationLevel")], out AuthenticationLevel value))
connectionRecord.RDPAuthenticationLevel = value;
}
if (headers.Contains("Colors"))
{
RDPColors value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("Colors")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("Colors")], out RDPColors value))
connectionRecord.Colors = value;
}
if (headers.Contains("Resolution"))
{
RDPResolutions value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("Resolution")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("Resolution")], out RDPResolutions value))
connectionRecord.Resolution = value;
}
if (headers.Contains("AutomaticResize"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("AutomaticResize")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("AutomaticResize")], out bool value))
connectionRecord.AutomaticResize = value;
}
if (headers.Contains("DisplayWallpaper"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("DisplayWallpaper")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("DisplayWallpaper")], out bool value))
connectionRecord.DisplayWallpaper = value;
}
if (headers.Contains("DisplayThemes"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("DisplayThemes")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("DisplayThemes")], out bool value))
connectionRecord.DisplayThemes = value;
}
if (headers.Contains("EnableFontSmoothing"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("EnableFontSmoothing")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("EnableFontSmoothing")], out bool value))
connectionRecord.EnableFontSmoothing = value;
}
if (headers.Contains("EnableDesktopComposition"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("EnableDesktopComposition")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("EnableDesktopComposition")], out bool value))
connectionRecord.EnableDesktopComposition = value;
}
if (headers.Contains("DisableFullWindowDrag"))
{
if (bool.TryParse(connectionCsv[headers.IndexOf("DisableFullWindowDrag")], out bool value))
connectionRecord.DisableFullWindowDrag = value;
}
if (headers.Contains("DisableMenuAnimations"))
{
if (bool.TryParse(connectionCsv[headers.IndexOf("DisableMenuAnimations")], out bool value))
connectionRecord.DisableMenuAnimations = value;
}
if (headers.Contains("DisableCursorShadow"))
{
if (bool.TryParse(connectionCsv[headers.IndexOf("DisableCursorShadow")], out bool value))
connectionRecord.DisableCursorShadow = value;
}
if (headers.Contains("DisableCursorBlinking"))
{
if (bool.TryParse(connectionCsv[headers.IndexOf("DisableCursorBlinking")], out bool value))
connectionRecord.DisableCursorBlinking = value;
}
if (headers.Contains("CacheBitmaps"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("CacheBitmaps")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("CacheBitmaps")], out bool value))
connectionRecord.CacheBitmaps = value;
}
if (headers.Contains("RedirectDiskDrives"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectDiskDrives")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectDiskDrives")], out bool value))
connectionRecord.RedirectDiskDrives = value;
}
if (headers.Contains("RedirectPorts"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectPorts")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectPorts")], out bool value))
connectionRecord.RedirectPorts = value;
}
if (headers.Contains("RedirectPrinters"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectPrinters")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectPrinters")], out bool value))
connectionRecord.RedirectPrinters = value;
}
if (headers.Contains("RedirectClipboard"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectClipboard")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectClipboard")], out bool value))
connectionRecord.RedirectClipboard = value;
}
if (headers.Contains("RedirectSmartCards"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectSmartCards")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectSmartCards")], out bool value))
connectionRecord.RedirectSmartCards = value;
}
if (headers.Contains("RedirectSound"))
{
RDPSounds value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("RedirectSound")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("RedirectSound")], out RDPSounds value))
connectionRecord.RedirectSound = value;
}
if (headers.Contains("RedirectAudioCapture"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectAudioCapture")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectAudioCapture")], out bool value))
connectionRecord.RedirectAudioCapture = value;
}
if (headers.Contains("RedirectKeys"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectKeys")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("RedirectKeys")], out bool value))
connectionRecord.RedirectKeys = value;
}
if (headers.Contains("VNCCompression"))
{
ProtocolVNC.Compression value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCCompression")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCCompression")], out ProtocolVNC.Compression value))
connectionRecord.VNCCompression = value;
}
if (headers.Contains("VNCEncoding"))
{
ProtocolVNC.Encoding value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCEncoding")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCEncoding")], out ProtocolVNC.Encoding value))
connectionRecord.VNCEncoding = value;
}
if (headers.Contains("VNCAuthMode"))
{
ProtocolVNC.AuthMode value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCAuthMode")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCAuthMode")], out ProtocolVNC.AuthMode value))
connectionRecord.VNCAuthMode = value;
}
if (headers.Contains("VNCProxyType"))
{
ProtocolVNC.ProxyType value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCProxyType")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCProxyType")], out ProtocolVNC.ProxyType value))
connectionRecord.VNCProxyType = value;
}
if (headers.Contains("VNCProxyPort"))
{
int value;
if (int.TryParse(connectionCsv[headers.IndexOf("VNCProxyPort")], out value))
if (int.TryParse(connectionCsv[headers.IndexOf("VNCProxyPort")], out int value))
connectionRecord.VNCProxyPort = value;
}
if (headers.Contains("VNCColors"))
{
ProtocolVNC.Colors value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCColors")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCColors")], out ProtocolVNC.Colors value))
connectionRecord.VNCColors = value;
}
if (headers.Contains("VNCSmartSizeMode"))
{
ProtocolVNC.SmartSizeMode value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCSmartSizeMode")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("VNCSmartSizeMode")], out ProtocolVNC.SmartSizeMode value))
connectionRecord.VNCSmartSizeMode = value;
}
if (headers.Contains("VNCViewOnly"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("VNCViewOnly")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("VNCViewOnly")], out bool value))
connectionRecord.VNCViewOnly = value;
}
if (headers.Contains("RDGatewayUsageMethod"))
{
RDGatewayUsageMethod value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("RDGatewayUsageMethod")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("RDGatewayUsageMethod")], out RDGatewayUsageMethod value))
connectionRecord.RDGatewayUsageMethod = value;
}
if (headers.Contains("RDGatewayUseConnectionCredentials"))
{
RDGatewayUseConnectionCredentials value;
if (Enum.TryParse(connectionCsv[headers.IndexOf("RDGatewayUseConnectionCredentials")], out value))
if (Enum.TryParse(connectionCsv[headers.IndexOf("RDGatewayUseConnectionCredentials")], out RDGatewayUseConnectionCredentials value))
connectionRecord.RDGatewayUseConnectionCredentials = value;
}
if (headers.Contains("Favorite"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("Favorite")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("Favorite")], out bool value))
connectionRecord.Favorite = value;
}
@@ -395,443 +437,404 @@ namespace mRemoteNG.Config.Serializers.Csv
if (headers.Contains("InheritCacheBitmaps"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritCacheBitmaps")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritCacheBitmaps")], out bool value))
connectionRecord.Inheritance.CacheBitmaps = value;
}
if (headers.Contains("InheritColors"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritColors")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritColors")], out bool value))
connectionRecord.Inheritance.Colors = value;
}
if (headers.Contains("InheritDescription"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDescription")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDescription")], out bool value))
connectionRecord.Inheritance.Description = value;
}
if (headers.Contains("InheritDisplayThemes"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDisplayThemes")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDisplayThemes")], out bool value))
connectionRecord.Inheritance.DisplayThemes = value;
}
if (headers.Contains("InheritDisplayWallpaper"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDisplayWallpaper")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDisplayWallpaper")], out bool value))
connectionRecord.Inheritance.DisplayWallpaper = value;
}
if (headers.Contains("InheritEnableFontSmoothing"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritEnableFontSmoothing")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritEnableFontSmoothing")], out bool value))
connectionRecord.Inheritance.EnableFontSmoothing = value;
}
if (headers.Contains("InheritEnableDesktopComposition"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritEnableDesktopComposition")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritEnableDesktopComposition")], out bool value))
connectionRecord.Inheritance.EnableDesktopComposition = value;
}
if (headers.Contains("InheritDisableFullWindowDrag"))
{
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDisableFullWindowDrag")], out bool value))
connectionRecord.Inheritance.DisableFullWindowDrag = value;
}
if (headers.Contains("InheritDisableMenuAnimations"))
{
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDisableMenuAnimations")], out bool value))
connectionRecord.Inheritance.DisableMenuAnimations = value;
}
if (headers.Contains("InheritDisableCursorShadow"))
{
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDisableCursorShadow")], out bool value))
connectionRecord.Inheritance.DisableCursorShadow = value;
}
if (headers.Contains("InheritDisableCursorBlinking"))
{
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDisableCursorBlinking")], out bool value))
connectionRecord.Inheritance.DisableCursorBlinking = value;
}
if (headers.Contains("InheritDomain"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDomain")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritDomain")], out bool value))
connectionRecord.Inheritance.Domain = value;
}
if (headers.Contains("InheritIcon"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritIcon")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritIcon")], out bool value))
connectionRecord.Inheritance.Icon = value;
}
if (headers.Contains("InheritPanel"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPanel")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPanel")], out bool value))
connectionRecord.Inheritance.Panel = value;
}
if (headers.Contains("InheritPassword"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPassword")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPassword")], out bool value))
connectionRecord.Inheritance.Password = value;
}
if (headers.Contains("InheritPort"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPort")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPort")], out bool value))
connectionRecord.Inheritance.Port = value;
}
if (headers.Contains("InheritProtocol"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritProtocol")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritProtocol")], out bool value))
connectionRecord.Inheritance.Protocol = value;
}
if (headers.Contains("InheritSSHTunnelConnectionName"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritSSHTunnelConnectionName")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritSSHTunnelConnectionName")], out bool value))
connectionRecord.Inheritance.SSHTunnelConnectionName = value;
}
if (headers.Contains("InheritSSHOptions"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritSSHOptions")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritSSHOptions")], out bool value))
connectionRecord.Inheritance.SSHOptions = value;
}
if (headers.Contains("InheritPuttySession"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPuttySession")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPuttySession")], out bool value))
connectionRecord.Inheritance.PuttySession = value;
}
if (headers.Contains("InheritRedirectDiskDrives"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectDiskDrives")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectDiskDrives")], out bool value))
connectionRecord.Inheritance.RedirectDiskDrives = value;
}
if (headers.Contains("InheritRedirectKeys"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectKeys")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectKeys")], out bool value))
connectionRecord.Inheritance.RedirectKeys = value;
}
if (headers.Contains("InheritRedirectPorts"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectPorts")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectPorts")], out bool value))
connectionRecord.Inheritance.RedirectPorts = value;
}
if (headers.Contains("InheritRedirectPrinters"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectPrinters")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectPrinters")], out bool value))
connectionRecord.Inheritance.RedirectPrinters = value;
}
if (headers.Contains("InheritRedirectClipboard"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectClipboard")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectClipboard")], out bool value))
connectionRecord.Inheritance.RedirectClipboard = value;
}
if (headers.Contains("InheritRedirectSmartCards"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectSmartCards")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectSmartCards")], out bool value))
connectionRecord.Inheritance.RedirectSmartCards = value;
}
if (headers.Contains("InheritRedirectSound"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectSound")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectSound")], out bool value))
connectionRecord.Inheritance.RedirectSound = value;
}
if (headers.Contains("InheritResolution"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritResolution")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritResolution")], out bool value))
connectionRecord.Inheritance.Resolution = value;
}
if (headers.Contains("InheritAutomaticResize"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritAutomaticResize")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritAutomaticResize")], out bool value))
connectionRecord.Inheritance.AutomaticResize = value;
}
if (headers.Contains("InheritUseConsoleSession"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUseConsoleSession")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUseConsoleSession")], out bool value))
connectionRecord.Inheritance.UseConsoleSession = value;
}
if (headers.Contains("InheritUseCredSsp"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUseCredSsp")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUseCredSsp")], out bool value))
connectionRecord.Inheritance.UseCredSsp = value;
}
if (headers.Contains("InheritUseVmId"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUseVmId")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUseVmId")], out bool value))
connectionRecord.Inheritance.UseVmId = value;
}
if (headers.Contains("InheritUseEnhancedMode"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUseEnhancedMode")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUseEnhancedMode")], out bool value))
connectionRecord.Inheritance.UseEnhancedMode = value;
}
if (headers.Contains("InheritRenderingEngine"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRenderingEngine")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRenderingEngine")], out bool value))
connectionRecord.Inheritance.RenderingEngine = value;
}
if (headers.Contains("InheritUsername"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUsername")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUsername")], out bool value))
connectionRecord.Inheritance.Username = value;
}
if (headers.Contains("InheritVmId"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVmId")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVmId")], out bool value))
connectionRecord.Inheritance.VmId = value;
}
if (headers.Contains("InheritICAEncryptionStrength"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritICAEncryptionStrength")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritICAEncryptionStrength")], out bool value))
connectionRecord.Inheritance.ICAEncryptionStrength = value;
}
if (headers.Contains("InheritRDPAuthenticationLevel"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDPAuthenticationLevel")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDPAuthenticationLevel")], out bool value))
connectionRecord.Inheritance.RDPAuthenticationLevel = value;
}
if (headers.Contains("InheritLoadBalanceInfo"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritLoadBalanceInfo")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritLoadBalanceInfo")], out bool value))
connectionRecord.Inheritance.LoadBalanceInfo = value;
}
if (headers.Contains("InheritPreExtApp"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPreExtApp")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPreExtApp")], out bool value))
connectionRecord.Inheritance.PreExtApp = value;
}
if (headers.Contains("InheritPostExtApp"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPostExtApp")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritPostExtApp")], out bool value))
connectionRecord.Inheritance.PostExtApp = value;
}
if (headers.Contains("InheritMacAddress"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritMacAddress")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritMacAddress")], out bool value))
connectionRecord.Inheritance.MacAddress = value;
}
if (headers.Contains("InheritUserField"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUserField")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritUserField")], out bool value))
connectionRecord.Inheritance.UserField = value;
}
if (headers.Contains("InheritFavorite"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritFavorite")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritFavorite")], out bool value))
connectionRecord.Inheritance.Favorite = value;
}
if (headers.Contains("InheritExtApp"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritExtApp")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritExtApp")], out bool value))
connectionRecord.Inheritance.ExtApp = value;
}
if (headers.Contains("InheritVNCCompression"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCCompression")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCCompression")], out bool value))
connectionRecord.Inheritance.VNCCompression = value;
}
if (headers.Contains("InheritVNCEncoding"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCEncoding")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCEncoding")], out bool value))
connectionRecord.Inheritance.VNCEncoding = value;
}
if (headers.Contains("InheritVNCAuthMode"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCAuthMode")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCAuthMode")], out bool value))
connectionRecord.Inheritance.VNCAuthMode = value;
}
if (headers.Contains("InheritVNCProxyType"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyType")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyType")], out bool value))
connectionRecord.Inheritance.VNCProxyType = value;
}
if (headers.Contains("InheritVNCProxyIP"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyIP")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyIP")], out bool value))
connectionRecord.Inheritance.VNCProxyIP = value;
}
if (headers.Contains("InheritVNCProxyPort"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyPort")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyPort")], out bool value))
connectionRecord.Inheritance.VNCProxyPort = value;
}
if (headers.Contains("InheritVNCProxyUsername"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyUsername")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyUsername")], out bool value))
connectionRecord.Inheritance.VNCProxyUsername = value;
}
if (headers.Contains("InheritVNCProxyPassword"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyPassword")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCProxyPassword")], out bool value))
connectionRecord.Inheritance.VNCProxyPassword = value;
}
if (headers.Contains("InheritVNCColors"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCColors")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCColors")], out bool value))
connectionRecord.Inheritance.VNCColors = value;
}
if (headers.Contains("InheritVNCSmartSizeMode"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCSmartSizeMode")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCSmartSizeMode")], out bool value))
connectionRecord.Inheritance.VNCSmartSizeMode = value;
}
if (headers.Contains("InheritVNCViewOnly"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCViewOnly")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritVNCViewOnly")], out bool value))
connectionRecord.Inheritance.VNCViewOnly = value;
}
if (headers.Contains("InheritRDGatewayUsageMethod"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayUsageMethod")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayUsageMethod")], out bool value))
connectionRecord.Inheritance.RDGatewayUsageMethod = value;
}
if (headers.Contains("InheritRDGatewayHostname"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayHostname")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayHostname")], out bool value))
connectionRecord.Inheritance.RDGatewayHostname = value;
}
if (headers.Contains("InheritRDGatewayUseConnectionCredentials"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayUseConnectionCredentials")],
out value))
out bool value))
connectionRecord.Inheritance.RDGatewayUseConnectionCredentials = value;
}
if (headers.Contains("InheritRDGatewayUsername"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayUsername")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayUsername")], out bool value))
connectionRecord.Inheritance.RDGatewayUsername = value;
}
if (headers.Contains("InheritRDGatewayPassword"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayPassword")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayPassword")], out bool value))
connectionRecord.Inheritance.RDGatewayPassword = value;
}
if (headers.Contains("InheritRDGatewayDomain"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayDomain")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDGatewayDomain")], out bool value))
connectionRecord.Inheritance.RDGatewayDomain = value;
}
if (headers.Contains("InheritRDPAlertIdleTimeout"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDPAlertIdleTimeout")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDPAlertIdleTimeout")], out bool value))
connectionRecord.Inheritance.RDPAlertIdleTimeout = value;
}
if (headers.Contains("InheritRDPMinutesToIdleTimeout"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDPMinutesToIdleTimeout")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRDPMinutesToIdleTimeout")], out bool value))
connectionRecord.Inheritance.RDPMinutesToIdleTimeout = value;
}
if (headers.Contains("InheritSoundQuality"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritSoundQuality")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritSoundQuality")], out bool value))
connectionRecord.Inheritance.SoundQuality = value;
}
if (headers.Contains("InheritRedirectAudioCapture"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectAudioCapture")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRedirectAudioCapture")], out bool value))
connectionRecord.Inheritance.RedirectAudioCapture = value;
}
if (headers.Contains("InheritRdpVersion"))
{
bool value;
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRdpVersion")], out value))
if (bool.TryParse(connectionCsv[headers.IndexOf("InheritRdpVersion")], out bool value))
connectionRecord.Inheritance.RdpVersion = value;
}

View File

@@ -57,7 +57,7 @@ namespace mRemoteNG.Config.Serializers.Csv
sb.Append("Domain;");
sb.Append("Hostname;Port;VmId;Protocol;SSHTunnelConnectionName;SSHOptions;PuttySession;ConnectToConsole;UseCredSsp;UseVmId;UseEnhancedMode;RenderingEngine;ICAEncryptionStrength;RDPAuthenticationLevel;" +
"LoadBalanceInfo;Colors;Resolution;AutomaticResize;DisplayWallpaper;DisplayThemes;EnableFontSmoothing;EnableDesktopComposition;" +
"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;" +
@@ -65,7 +65,7 @@ namespace mRemoteNG.Config.Serializers.Csv
if (_saveFilter.SaveInheritance)
sb.Append("InheritCacheBitmaps;InheritColors;InheritDescription;InheritDisplayThemes;InheritDisplayWallpaper;" +
"InheritEnableFontSmoothing;InheritEnableDesktopComposition;InheritDomain;InheritIcon;InheritPanel;InheritPassword;InheritPort;" +
"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;InheritICAEncryptionStrength;" +
@@ -137,6 +137,10 @@ namespace mRemoteNG.Config.Serializers.Csv
.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))
@@ -182,6 +186,10 @@ namespace mRemoteNG.Config.Serializers.Csv
.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))

View File

@@ -119,6 +119,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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"];
@@ -177,6 +181,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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"];

View File

@@ -125,6 +125,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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));
@@ -164,6 +168,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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));
@@ -297,6 +305,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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) &&
@@ -343,6 +355,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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) &&
@@ -406,6 +422,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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) &&
@@ -522,6 +542,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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;
@@ -568,6 +592,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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;
@@ -633,6 +661,10 @@ namespace mRemoteNG.Config.Serializers.MsSql
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;

View File

@@ -101,6 +101,14 @@ namespace mRemoteNG.Config.Serializers.Xml
connectionInfo.EnableFontSmoothing.ToString().ToLowerInvariant()));
element.Add(new XAttribute("EnableDesktopComposition",
connectionInfo.EnableDesktopComposition.ToString().ToLowerInvariant()));
element.Add(new XAttribute("DisableFullWindowDrag",
connectionInfo.DisableFullWindowDrag.ToString().ToLowerInvariant()));
element.Add(new XAttribute("DisableMenuAnimations",
connectionInfo.DisableMenuAnimations.ToString().ToLowerInvariant()));
element.Add(new XAttribute("DisableCursorShadow",
connectionInfo.DisableCursorShadow.ToString().ToLowerInvariant()));
element.Add(new XAttribute("DisableCursorBlinking",
connectionInfo.DisableCursorBlinking.ToString().ToLowerInvariant()));
element.Add(new XAttribute("CacheBitmaps", connectionInfo.CacheBitmaps.ToString().ToLowerInvariant()));
element.Add(new XAttribute("RedirectDiskDrives",
connectionInfo.RedirectDiskDrives.ToString().ToLowerInvariant()));
@@ -183,6 +191,18 @@ namespace mRemoteNG.Config.Serializers.Xml
element.Add(new XAttribute("InheritEnableDesktopComposition",
connectionInfo
.Inheritance.EnableDesktopComposition.ToString().ToLowerInvariant()));
element.Add(new XAttribute("InheritDisableFullWindowDrag",
connectionInfo
.Inheritance.DisableFullWindowDrag.ToString().ToLowerInvariant()));
element.Add(new XAttribute("InheritDisableMenuAnimations",
connectionInfo
.Inheritance.DisableMenuAnimations.ToString().ToLowerInvariant()));
element.Add(new XAttribute("InheritDisableCursorShadow",
connectionInfo
.Inheritance.DisableCursorShadow.ToString().ToLowerInvariant()));
element.Add(new XAttribute("InheritDisableCursorBlinking",
connectionInfo
.Inheritance.DisableCursorBlinking.ToString().ToLowerInvariant()));
element.Add(new XAttribute("InheritDomain",
connectionInfo.Inheritance.Domain.ToString().ToLowerInvariant()));
element.Add(
@@ -316,6 +336,10 @@ namespace mRemoteNG.Config.Serializers.Xml
element.Add(new XAttribute("InheritDisplayWallpaper", falseString));
element.Add(new XAttribute("InheritEnableFontSmoothing", falseString));
element.Add(new XAttribute("InheritEnableDesktopComposition", falseString));
element.Add(new XAttribute("InheritDisableFullWindowDrag", falseString));
element.Add(new XAttribute("InheritDisableMenuAnimations", falseString));
element.Add(new XAttribute("InheritDisableCursorShadow", falseString));
element.Add(new XAttribute("InheritDisableCursorBlinking", falseString));
element.Add(new XAttribute("InheritDomain", falseString));
element.Add(new XAttribute("InheritIcon", falseString));
element.Add(new XAttribute("InheritPanel", falseString));

View File

@@ -545,6 +545,10 @@ namespace mRemoteNG.Config.Serializers.Xml
connectionInfo.RdpVersion = xmlnode.GetAttributeAsEnum("RdpVersion", RdpVersion.Highest);
connectionInfo.SSHTunnelConnectionName = xmlnode.GetAttributeAsString("SSHTunnelConnectionName");
connectionInfo.SSHOptions = xmlnode.GetAttributeAsString("SSHOptions");
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");
@@ -553,6 +557,10 @@ namespace mRemoteNG.Config.Serializers.Xml
connectionInfo.Inheritance.UseEnhancedMode = xmlnode.GetAttributeAsBool("InheritUseEnhancedMode");
connectionInfo.Inheritance.SSHTunnelConnectionName = xmlnode.GetAttributeAsBool("InheritSSHTunnelConnectionName");
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)

View File

@@ -59,6 +59,10 @@ namespace mRemoteNG.Connection
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;
@@ -536,6 +540,49 @@ namespace mRemoteNG.Connection
set => SetField(ref _enableDesktopComposition, value, "EnableDesktopComposition");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDisableFullWindowDrag)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDisableFullWindowDrag)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
UsedInProtocol(ProtocolType.RDP)]
public bool DisableFullWindowDrag
{
get => GetPropertyValue("DisableFullWindowDrag", _disableFullWindowDrag);
set => SetField(ref _disableFullWindowDrag, value, "DisableFullWindowDrag");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDisableMenuAnimations)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDisableMenuAnimations)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
UsedInProtocol(ProtocolType.RDP)]
public bool DisableMenuAnimations
{
get => GetPropertyValue("DisableMenuAnimations", _disableMenuAnimations);
set => SetField(ref _disableMenuAnimations, value, "DisableMenuAnimations");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDisableCursorShadow)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDisableCursorShadow)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
UsedInProtocol(ProtocolType.RDP)]
public bool DisableCursorShadow
{
get => GetPropertyValue("DisableCursorShadow", _disableCursorShadow);
set => SetField(ref _disableCursorShadow, value, "DisableCursorShadow");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDisableCursorShadow)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDisableCursorShadow)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
UsedInProtocol(ProtocolType.RDP)]
public bool DisableCursorBlinking
{
get => GetPropertyValue("DisableCursorBlinking", _disableCursorBlinking);
set => SetField(ref _disableCursorBlinking, value, "DisableCursorBlinking");
}
#endregion
#region Redirect

View File

@@ -300,16 +300,13 @@ namespace mRemoteNG.Connection
ExtApp = Settings.Default.ConDefaultExtApp;
Port = 0;
PuttySession = Settings.Default.ConDefaultPuttySession;
ICAEncryptionStrength = (IcaProtocol.EncryptionStrength)Enum.Parse(
typeof(IcaProtocol.EncryptionStrength), Settings.Default.ConDefaultICAEncryptionStrength);
ICAEncryptionStrength = (IcaProtocol.EncryptionStrength)Enum.Parse(typeof(IcaProtocol.EncryptionStrength), Settings.Default.ConDefaultICAEncryptionStrength);
UseConsoleSession = Settings.Default.ConDefaultUseConsoleSession;
RDPAuthenticationLevel = (AuthenticationLevel)Enum.Parse(
typeof(AuthenticationLevel), Settings.Default.ConDefaultRDPAuthenticationLevel);
RDPAuthenticationLevel = (AuthenticationLevel)Enum.Parse(typeof(AuthenticationLevel), Settings.Default.ConDefaultRDPAuthenticationLevel);
RDPMinutesToIdleTimeout = Settings.Default.ConDefaultRDPMinutesToIdleTimeout;
RDPAlertIdleTimeout = Settings.Default.ConDefaultRDPAlertIdleTimeout;
LoadBalanceInfo = Settings.Default.ConDefaultLoadBalanceInfo;
RenderingEngine = (HTTPBase.RenderingEngine)Enum.Parse(typeof(HTTPBase.RenderingEngine),
Settings.Default.ConDefaultRenderingEngine);
RenderingEngine = (HTTPBase.RenderingEngine)Enum.Parse(typeof(HTTPBase.RenderingEngine), Settings.Default.ConDefaultRenderingEngine);
UseCredSsp = Settings.Default.ConDefaultUseCredSsp;
UseVmId = Settings.Default.ConDefaultUseVmId;
UseEnhancedMode = Settings.Default.ConDefaultUseEnhancedMode;
@@ -317,11 +314,9 @@ namespace mRemoteNG.Connection
private void SetRdGatewayDefaults()
{
RDGatewayUsageMethod = (RDGatewayUsageMethod)Enum.Parse(
typeof(RDGatewayUsageMethod), Settings.Default.ConDefaultRDGatewayUsageMethod);
RDGatewayUsageMethod = (RDGatewayUsageMethod)Enum.Parse(typeof(RDGatewayUsageMethod), Settings.Default.ConDefaultRDGatewayUsageMethod);
RDGatewayHostname = Settings.Default.ConDefaultRDGatewayHostname;
RDGatewayUseConnectionCredentials = (RDGatewayUseConnectionCredentials)Enum.Parse(
typeof(RDGatewayUseConnectionCredentials), Settings.Default.ConDefaultRDGatewayUseConnectionCredentials);
RDGatewayUseConnectionCredentials = (RDGatewayUseConnectionCredentials)Enum.Parse(typeof(RDGatewayUseConnectionCredentials), Settings.Default.ConDefaultRDGatewayUseConnectionCredentials);
RDGatewayUsername = Settings.Default.ConDefaultRDGatewayUsername;
RDGatewayPassword = Settings.Default.ConDefaultRDGatewayPassword;
RDGatewayDomain = Settings.Default.ConDefaultRDGatewayDomain;
@@ -329,8 +324,7 @@ namespace mRemoteNG.Connection
private void SetAppearanceDefaults()
{
Resolution = (RDPResolutions)Enum.Parse(
typeof(RDPResolutions), Settings.Default.ConDefaultResolution);
Resolution = (RDPResolutions)Enum.Parse(typeof(RDPResolutions), Settings.Default.ConDefaultResolution);
AutomaticResize = Settings.Default.ConDefaultAutomaticResize;
Colors = (RDPColors)Enum.Parse(typeof(RDPColors), Settings.Default.ConDefaultColors);
CacheBitmaps = Settings.Default.ConDefaultCacheBitmaps;
@@ -338,6 +332,10 @@ namespace mRemoteNG.Connection
DisplayThemes = Settings.Default.ConDefaultDisplayThemes;
EnableFontSmoothing = Settings.Default.ConDefaultEnableFontSmoothing;
EnableDesktopComposition = Settings.Default.ConDefaultEnableDesktopComposition;
DisableFullWindowDrag = Settings.Default.ConDefaultDisableFullWindowDrag;
DisableMenuAnimations = Settings.Default.ConDefaultDisableMenuAnimations;
DisableCursorShadow = Settings.Default.ConDefaultDisableCursorShadow;
DisableCursorBlinking = Settings.Default.ConDefaultDisableCursorBlinking;
}
private void SetRedirectDefaults()
@@ -364,20 +362,16 @@ namespace mRemoteNG.Connection
private void SetVncDefaults()
{
VNCCompression = (ProtocolVNC.Compression)Enum.Parse(typeof(ProtocolVNC.Compression),
Settings.Default.ConDefaultVNCCompression);
VNCCompression = (ProtocolVNC.Compression)Enum.Parse(typeof(ProtocolVNC.Compression), Settings.Default.ConDefaultVNCCompression);
VNCEncoding = (ProtocolVNC.Encoding)Enum.Parse(typeof(ProtocolVNC.Encoding), Settings.Default.ConDefaultVNCEncoding);
VNCAuthMode = (ProtocolVNC.AuthMode)Enum.Parse(typeof(ProtocolVNC.AuthMode), Settings.Default.ConDefaultVNCAuthMode);
VNCProxyType = (ProtocolVNC.ProxyType)Enum.Parse(typeof(ProtocolVNC.ProxyType),
Settings.Default.ConDefaultVNCProxyType);
VNCProxyType = (ProtocolVNC.ProxyType)Enum.Parse(typeof(ProtocolVNC.ProxyType), Settings.Default.ConDefaultVNCProxyType);
VNCProxyIP = Settings.Default.ConDefaultVNCProxyIP;
VNCProxyPort = Settings.Default.ConDefaultVNCProxyPort;
VNCProxyUsername = Settings.Default.ConDefaultVNCProxyUsername;
VNCProxyPassword = Settings.Default.ConDefaultVNCProxyPassword;
VNCColors = (ProtocolVNC.Colors)Enum.Parse(typeof(ProtocolVNC.Colors),
Settings.Default.ConDefaultVNCColors);
VNCSmartSizeMode = (ProtocolVNC.SmartSizeMode)Enum.Parse(typeof(ProtocolVNC.SmartSizeMode),
Settings.Default.ConDefaultVNCSmartSizeMode);
VNCColors = (ProtocolVNC.Colors)Enum.Parse(typeof(ProtocolVNC.Colors), Settings.Default.ConDefaultVNCColors);
VNCSmartSizeMode = (ProtocolVNC.SmartSizeMode)Enum.Parse(typeof(ProtocolVNC.SmartSizeMode), Settings.Default.ConDefaultVNCSmartSizeMode);
VNCViewOnly = Settings.Default.ConDefaultVNCViewOnly;
}
@@ -390,8 +384,7 @@ namespace mRemoteNG.Connection
private void SetNewOpenConnectionList()
{
OpenConnections = new ProtocolList();
OpenConnections.CollectionChanged += (sender, args) =>
RaisePropertyChangedEvent(this, new PropertyChangedEventArgs("OpenConnections"));
OpenConnections.CollectionChanged += (sender, args) => RaisePropertyChangedEvent(this, new PropertyChangedEventArgs("OpenConnections"));
}
#endregion

View File

@@ -277,6 +277,30 @@ namespace mRemoteNG.Connection
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool EnableDesktopComposition { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameDisableFullWindowDrag)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionDisableFullWindowDrag)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool DisableFullWindowDrag { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameDisableMenuAnimations)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionDisableMenuAnimations)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool DisableMenuAnimations { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameDisableCursorShadow)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionDisableCursorShadow)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool DisableCursorShadow { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameDisableCursorBlinking)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionDisableCursorBlinking)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool DisableCursorBlinking { get; set; }
#endregion
#region Redirect

View File

@@ -7,25 +7,25 @@ namespace mRemoteNG.Connection.Protocol.RDP
[Description("strRDPDisableWallpaper")]
DisableWallpaper = 0x1,
// [Description("strRDPDisableFullWindowdrag")]
// DisableFullWindowDrag = 0x2,
// [Description("strRDPDisableMenuAnimations")]
// DisableMenuAnimations = 0x4,
[Description("strRDPDisableFullWindowdrag")]
DisableFullWindowDrag = 0x2,
[Description("strRDPDisableMenuAnimations")]
DisableMenuAnimations = 0x4,
[Description("strRDPDisableThemes")]
DisableThemes = 0x8,
// [Description("strRDPDisableCursorShadow")]
// DisableCursorShadow = 0x20,
[Description("strRDPDisableCursorShadow")]
DisableCursorShadow = 0x20,
// [Description("strRDPDisableCursorblinking")]
// DisableCursorBlinking = 0x40,
[Description("strRDPDisableCursorblinking")]
DisableCursorBlinking = 0x40,
[Description("strRDPEnableFontSmoothing")]
EnableFontSmoothing = 0x80,
[Description("strRDPEnableDesktopComposition")]
EnableDesktopComposition = 0x100
EnableDesktopComposition = 0x100,
}
}

View File

@@ -603,25 +603,29 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
var pFlags = 0;
if (connectionInfo.DisplayThemes == false)
{
pFlags += (int)RDPPerformanceFlags.DisableThemes;
}
if (connectionInfo.DisplayWallpaper == false)
{
pFlags += (int)RDPPerformanceFlags.DisableWallpaper;
}
if (connectionInfo.EnableFontSmoothing)
{
pFlags += (int)RDPPerformanceFlags.EnableFontSmoothing;
}
if (connectionInfo.EnableDesktopComposition)
{
pFlags += (int)RDPPerformanceFlags.EnableDesktopComposition;
}
if (connectionInfo.DisableFullWindowDrag)
pFlags += (int)RDPPerformanceFlags.DisableFullWindowDrag;
if (connectionInfo.DisableMenuAnimations)
pFlags += (int)RDPPerformanceFlags.DisableMenuAnimations;
if (connectionInfo.DisableCursorShadow)
pFlags += (int)RDPPerformanceFlags.DisableCursorShadow;
if (connectionInfo.DisableCursorBlinking)
pFlags += (int)RDPPerformanceFlags.DisableCursorBlinking;
_rdpClient.AdvancedSettings2.PerformanceFlags = pFlags;
}
catch (Exception ex)

View File

@@ -45,6 +45,13 @@ CREATE TABLE [dbo].[tblCons] (
DisplayThemes bit NOT NULL,
EnableFontSmoothing bit NOT NULL,
EnableDesktopComposition bit NOT NULL,
DisableFullWindowDrag bit NOT NULL,
DisableMenuAnimations bit NOT NULL,
DisableCursorShadow bit NOT NULL,
DisableCursorBlinking bit NOT NULL,
CacheBitmaps bit NOT NULL,
RedirectDiskDrives bit NOT NULL,
RedirectPorts bit NOT NULL,

View File

@@ -50,6 +50,10 @@ CREATE TABLE `tblCons` (
`DisplayThemes` tinyint(1) NOT NULL,
`EnableFontSmoothing` tinyint(1) NOT NULL,
`EnableDesktopComposition` tinyint(1) NOT NULL,
`DisableFullWindowDrag` tinyint(1) NOT NULL,
`DisableMenuAnimations` tinyint(1) NOT NULL,
`DisableCursorShadow` tinyint(1) NOT NULL,
`DisableCursorBlinking` tinyint(1) NOT NULL,
`CacheBitmaps` tinyint(1) NOT NULL,
`RedirectDiskDrives` tinyint(1) NOT NULL,
`RedirectPorts` tinyint(1) NOT NULL,

View File

@@ -12,7 +12,7 @@ namespace mRemoteNG {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.7.0.0")]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.6.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
@@ -1931,6 +1931,54 @@ namespace mRemoteNG {
}
}
[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")]
@@ -2998,5 +3046,65 @@ namespace mRemoteNG {
this["CloseToTray"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public string StartupComponentsCheck {
get {
return ((string)(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;
}
}
}
}

View File

@@ -479,6 +479,18 @@
<Setting Name="InhDefaultEnableDesktopComposition" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultDisableFullWindowDrag" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultDisableMenuAnimations" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultDisableCursorShadow" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultDisableCursorBlinking" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConfirmCloseConnection" Type="System.Int32" Scope="User">
<Value Profile="(Default)">4</Value>
</Setting>
@@ -746,5 +758,20 @@
<Setting Name="CloseToTray" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="StartupComponentsCheck" Type="System.String" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultDisableFullWindowDrag" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultDisableMenuAnimations" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultDisableCursorShadow" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultDisableCursorBlinking" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -4800,6 +4800,42 @@ namespace mRemoteNG {
}
}
/// <summary>
/// Looks up a localized string similar to Determines whether cursor flashes should be disabled..
/// </summary>
internal static string strPropertyDescriptionDisableCursorBlinking {
get {
return ResourceManager.GetString("strPropertyDescriptionDisableCursorBlinking", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Determines whether a mouse shadow should be visible..
/// </summary>
internal static string strPropertyDescriptionDisableCursorShadow {
get {
return ResourceManager.GetString("strPropertyDescriptionDisableCursorShadow", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Determines whether window content is displayed when you drag the window to a new location..
/// </summary>
internal static string strPropertyDescriptionDisableFullWindowDrag {
get {
return ResourceManager.GetString("strPropertyDescriptionDisableFullWindowDrag", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Determines whether menus and windows can be displayed with animation effects in the remote session..
/// </summary>
internal static string strPropertyDescriptionDisableMenuAnimations {
get {
return ResourceManager.GetString("strPropertyDescriptionDisableMenuAnimations", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Select yes if the theme of the remote host should be displayed..
/// </summary>
@@ -5403,6 +5439,42 @@ namespace mRemoteNG {
}
}
/// <summary>
/// Looks up a localized string similar to Disable Cursor blinking.
/// </summary>
internal static string strPropertyNameDisableCursorBlinking {
get {
return ResourceManager.GetString("strPropertyNameDisableCursorBlinking", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Disable Cursor Shadow.
/// </summary>
internal static string strPropertyNameDisableCursorShadow {
get {
return ResourceManager.GetString("strPropertyNameDisableCursorShadow", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Disable Full Window drag.
/// </summary>
internal static string strPropertyNameDisableFullWindowDrag {
get {
return ResourceManager.GetString("strPropertyNameDisableFullWindowDrag", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Disable Menu Animations.
/// </summary>
internal static string strPropertyNameDisableMenuAnimations {
get {
return ResourceManager.GetString("strPropertyNameDisableMenuAnimations", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Display Themes.
/// </summary>
@@ -6268,42 +6340,6 @@ namespace mRemoteNG {
}
}
/// <summary>
/// Looks up a localized string similar to Disable Cursor blinking.
/// </summary>
internal static string strRDPDisableCursorblinking {
get {
return ResourceManager.GetString("strRDPDisableCursorblinking", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Disable Cursor Shadow.
/// </summary>
internal static string strRDPDisableCursorShadow {
get {
return ResourceManager.GetString("strRDPDisableCursorShadow", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Disable Full Window drag.
/// </summary>
internal static string strRDPDisableFullWindowdrag {
get {
return ResourceManager.GetString("strRDPDisableFullWindowdrag", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Disable Menu Animations.
/// </summary>
internal static string strRDPDisableMenuAnimations {
get {
return ResourceManager.GetString("strRDPDisableMenuAnimations", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Disable Themes.
/// </summary>

View File

@@ -1786,16 +1786,16 @@ Zpráva:
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Nebylo možné aktivovat ovládací prvek okna RDP, prosím zkontrolujte požadavky mRemoteNG na prerekvizity.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Vypnout blikání kurzoru</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Vypnout stín kurzoru</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Vypnout přetahování celého okna (Full Window)</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Vypnout animace menu</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1609,16 +1609,16 @@ Wenn Sie Fehler feststellen, dann sollten Sie eine neue Verbindungsdatei erstell
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Konte das RDP-Plugin nicht einbinden, bitte prüfen Sie die mRemoteNG-Voraussetzungen.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Cursor-Blinken abschalten</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Cursorschatten deaktivieren</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Fensterinhalt beim Ziehen nicht anzeigen</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Menüanimationen deaktivieren</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">
@@ -2714,4 +2714,16 @@ Development umfasst Alphas, Betas und Release Candidates.</value>
<data name="strLicense" xml:space="preserve">
<value>Lizenz</value>
</data>
<data name="strPropertyDescriptionDisableCursorBlinking" xml:space="preserve">
<value>Legt fest, ob das Blinken des Cursors deaktiviert werden soll.</value>
</data>
<data name="strPropertyDescriptionDisableCursorShadow" xml:space="preserve">
<value>Legt fest, ob ein Mausschatten sichtbar sein soll.</value>
</data>
<data name="strPropertyDescriptionDisableMenuAnimations" xml:space="preserve">
<value>Legt fest, ob Menüs und Fenster mit Animationseffekten in der Remote-Sitzung angezeigt werden können.</value>
</data>
<data name="strPropertyDescriptionDisableFullWindowDrag" xml:space="preserve">
<value>Legt fest, ob der Fensterinhalt angezeigt wird, wenn Sie das Fenster an eine neue Position ziehen.</value>
</data>
</root>

View File

@@ -1584,16 +1584,16 @@ Mensaje:
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>No se pudo crear el control RDP, por favor verifique los requerimientos de mRemoteNG.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Desactivar Parpadeo del Cursor</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Desactivar Sombra del Cursor</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Desactivar Mostar Ventana al arrastrar</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Desactivar Animaciones de Menús</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1592,16 +1592,16 @@ Message:
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Impossible de lancer une connexion RDP, vérifiez les prérequis mRemoteNG.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Désactiver le curseur clignotant</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Désactiver l'Ombre du pointeur</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Désactiver le glissement de fenêtre complet</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Désactiver les animations du menu</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1591,16 +1591,16 @@ Messaggio:
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Impossibile creare il controllo RDP, per favore controlla i requisiti di mRemoteNG.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Disattiva il lampeggio del cursore</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Disattiva l'ombra del cursore</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Disattiva il trascinamento finestra intera</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Disattiva le animazioni dei menu</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1808,16 +1808,16 @@ Message:
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Couldn't create RDP control, please check mRemoteNG requirements.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Disable Cursor blinking</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Disable Cursor Shadow</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Disable Full Window drag</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>メニューのアニメーションを無効にする</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1923,16 +1923,16 @@ VncSharp 제어 버전 {0}</value>
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>RDP 컨트롤을 만들 수 없습니다. mRemoteNG 요구 사항을 확인하십시오.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>커서 깜박임 해제</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>커서 그림자 해제</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>전체 창 끌기 해제</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>메뉴 애니메이션 해제</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1607,16 +1607,16 @@ Starter med ny tilkoblingsfil.</value>
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Kunne ikke opprette RDP-kontroll, vennligst kontroller mRemoteNGs systemkrav.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Deaktiver blinkende markør</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Deaktiver markørskygge</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Deaktiver fullvindudragning</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Deaktiver menyanimasjoner</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1610,16 +1610,16 @@ Bericht:
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Kan geen RDP controle aanmaken, controleer mRemoteNG systeemeisen.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Cursor Knipperen Uitschakelen</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Cursor Schaduw Uitschakelen</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Slepen van volledig venster uitschakelen</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Menu Animaties Uitschakelen</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
@@ -210,7 +210,7 @@
<data name="strButtonIcon" xml:space="preserve">
<value>Ikona</value>
</data>
<data name="strButtonImport" xml:space="preserve">
<data name="strButtonImport" xml:space="preserve">
<value>&amp;Importuj</value>
</data>
<data name="strButtonInheritance" xml:space="preserve">
@@ -219,7 +219,7 @@
<data name="strButtonLaunch" xml:space="preserve">
<value>Uruchom</value>
</data>
<data name="strButtonLaunchPutty" xml:space="preserve">
<data name="strButtonLaunchPutty" xml:space="preserve">
<value>Uruchom PuTTY</value>
</data>
<data name="strButtonNew" xml:space="preserve">
@@ -413,7 +413,7 @@ Proszę upewnić się, że albo masz Putty.exe w katalogu mRemoteNG (domyślnie:
<data name="strCommandTryAgain" xml:space="preserve">
<value>Spróbuj ponownie</value>
</data>
<data name="strCompatibilityProblemDetected" xml:space="preserve">
<data name="strCompatibilityProblemDetected" xml:space="preserve">
<value>Wykryto problem z kompatybilnością</value>
</data>
<data name="strComponentsCheck" xml:space="preserve">
@@ -516,7 +516,7 @@ Załadowano nowy plik połączeń.</value>
<data name="strConnectNoCredentials" xml:space="preserve">
<value>Połącz się bez uwierzytelnienia</value>
</data>
<data name="strConnectToConsoleSession" xml:space="preserve">
<data name="strConnectToConsoleSession" xml:space="preserve">
<value>Połącz się z sesją konsoli</value>
</data>
<data name="strConnectWithOptions" xml:space="preserve">
@@ -573,7 +573,7 @@ Załadowano nowy plik połączeń.</value>
<data name="strEnc56Bit" xml:space="preserve">
<value>56-bitowe</value>
</data>
<data name="strEncBasic" xml:space="preserve">
<data name="strEncBasic" xml:space="preserve">
<value>Podstawowe</value>
</data>
<data name="strEncryptCompleteConnectionFile" xml:space="preserve">
@@ -606,7 +606,7 @@ Załadowano nowy plik połączeń.</value>
<data name="strErrorCouldNotLaunchPutty" xml:space="preserve">
<value>Nie udało się uruchomić PuTTY.</value>
</data>
<data name="strErrorDecryptionFailed" xml:space="preserve">
<data name="strErrorDecryptionFailed" xml:space="preserve">
<value>Odszyfrowywanie nie powiodło się. {0}</value>
</data>
<data name="strErrorEncryptionFailed" xml:space="preserve">
@@ -636,7 +636,7 @@ Załadowano nowy plik połączeń.</value>
<data name="strExportFile" xml:space="preserve">
<value>Eksportuj do pliku</value>
</data>
<data name="strExportmRemoteXML" xml:space="preserve">
<data name="strExportmRemoteXML" xml:space="preserve">
<value>Eksport mRemote/mRemoteNG XML</value>
</data>
<data name="strExtApp" xml:space="preserve">
@@ -645,7 +645,7 @@ Załadowano nowy plik połączeń.</value>
<data name="strExternalToolDefaultName" xml:space="preserve">
<value>Nowe narzędzie zewnętrzne</value>
</data>
<data name="strFAMFAMFAMAttribution" xml:space="preserve">
<data name="strFAMFAMFAMAttribution" xml:space="preserve">
<value>Zawiera ikony ze strony [FAMFAMFAM]</value>
</data>
<data name="strFilterAll" xml:space="preserve">
@@ -1002,7 +1002,7 @@ Załadowano nowy plik połączeń.</value>
<data name="strMenuResetLayout" xml:space="preserve">
<value>Przywróć domyślny layout</value>
</data>
<data name="strMenuSaveConnectionFile" xml:space="preserve">
<data name="strMenuSaveConnectionFile" xml:space="preserve">
<value>Zapisz plik połączeń</value>
</data>
<data name="strMenuSaveConnectionFileAs" xml:space="preserve">
@@ -1131,7 +1131,7 @@ Załadowano nowy plik połączeń.</value>
<data name="strPasswordProtect" xml:space="preserve">
<value>Zabezpiecz hasłem</value>
</data>
<data name="strPleaseFillAllFields" xml:space="preserve">
<data name="strPleaseFillAllFields" xml:space="preserve">
<value>Wypełnij wszystkie pola</value>
</data>
<data name="strPortScanCouldNotLoadPanel" xml:space="preserve">
@@ -1161,7 +1161,7 @@ Załadowano nowy plik połączeń.</value>
<data name="strPropertyDescriptionName" xml:space="preserve">
<value>To jest nazwa, która będzie wyświetlana na drzewie połączeń.</value>
</data>
<data name="strPropertyDescriptionDomain" xml:space="preserve">
<data name="strPropertyDescriptionDomain" xml:space="preserve">
<value>Podaj domenę.</value>
</data>
<data name="strPropertyDescriptionPassword" xml:space="preserve">
@@ -1410,7 +1410,7 @@ Załadowano nowy plik połączeń.</value>
<data name="strRadioCloseWarnNever" xml:space="preserve">
<value>Nie ostrzegaj przed zamknięciem połączeń</value>
</data>
<data name="strRAW" xml:space="preserve">
<data name="strRAW" xml:space="preserve">
<value>RAW</value>
</data>
<data name="strRDP" xml:space="preserve">
@@ -1443,13 +1443,13 @@ Załadowano nowy plik połączeń.</value>
<data name="strRdpCloseConnectionFailed" xml:space="preserve">
<value>Nie udało się zamknąć połączenia RDP!</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Wyłącz miganie kursora</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Wyłącz cień kursora</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Wyłącz animacje menu</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1575,16 +1575,16 @@ Descrição do erro: {1}</value>
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Impossível criar controlo RDP, por favor verifique os requisitos mRemoteNG.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Desativar o piscar do Cursor</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Desativar a sombra do o Cursor</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Desativar o arrastar completo da janela</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Desabilitar as animações do Menu</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1796,16 +1796,16 @@ If you run into such an error, please create a new connection file!</value>
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Couldn't create RDP control, please check mRemoteNG requirements.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Disable Cursor blinking</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Disable Cursor Shadow</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Disable Full Window drag</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Disable Menu Animations</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">
@@ -2876,4 +2876,16 @@ Development Channel includes Alphas, Betas &amp; Release Candidates.</value>
<data name="strLicense" xml:space="preserve">
<value>License</value>
</data>
<data name="strPropertyDescriptionDisableCursorBlinking" xml:space="preserve">
<value>Determines whether cursor flashes should be disabled.</value>
</data>
<data name="strPropertyDescriptionDisableCursorShadow" xml:space="preserve">
<value>Determines whether a mouse shadow should be visible.</value>
</data>
<data name="strPropertyDescriptionDisableFullWindowDrag" xml:space="preserve">
<value>Determines whether window content is displayed when you drag the window to a new location.</value>
</data>
<data name="strPropertyDescriptionDisableMenuAnimations" xml:space="preserve">
<value>Determines whether menus and windows can be displayed with animation effects in the remote session.</value>
</data>
</root>

View File

@@ -1616,16 +1616,16 @@ VncSharp Control Version {0}</value>
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>Не удается создать RDP подключение, пожалуйста, проверьте настройки mRemoteNG.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>Отключить мигание курсора </value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>Отключить тень курсора</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Отключить отображение окна при перетаскивании</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Отключить Анимацию</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1923,16 +1923,16 @@ Mesaj:
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>RDP kontrolü oluşturulamadı, lütfen mRemoteNG gereksinimlerini kontrol edin.</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>İmleci yanıp sönme özelliğini devre dışı bırak</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>İmleç Gölgesini Devre Dışı Bırak</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>Tam Pencere sürüklemeyi devre dışı bırak</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>Menü Animasyonlarını Devre Dışı Bırak</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

File diff suppressed because it is too large Load Diff

View File

@@ -1799,16 +1799,16 @@ VncSharp 版本 {0}</value>
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>无法创建 RDP 控制,请检查 mRemoteNG 的安装需求是否满足。</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>禁用光标闪烁</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>禁用光标阴影</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>禁用全窗口拖动</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>禁用菜单动画功能</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -1577,16 +1577,16 @@ VncSharp Control 版本 {0}</value>
<data name="strRdpControlCreationFailed" xml:space="preserve">
<value>無法建立 RDP 控制,請檢查 mRemoteNG 需求。</value>
</data>
<data name="strRDPDisableCursorblinking" xml:space="preserve">
<data name="strPropertyNameDisableCursorBlinking" xml:space="preserve">
<value>停用游標閃爍</value>
</data>
<data name="strRDPDisableCursorShadow" xml:space="preserve">
<data name="strPropertyNameDisableCursorShadow" xml:space="preserve">
<value>停用游標陰影</value>
</data>
<data name="strRDPDisableFullWindowdrag" xml:space="preserve">
<data name="strPropertyNameDisableFullWindowDrag" xml:space="preserve">
<value>停用完整視窗拖曳</value>
</data>
<data name="strRDPDisableMenuAnimations" xml:space="preserve">
<data name="strPropertyNameDisableMenuAnimations" xml:space="preserve">
<value>停用功能表動畫</value>
</data>
<data name="strRDPDisableThemes" xml:space="preserve">

View File

@@ -64,6 +64,10 @@
<xs:attribute name="DisplayThemes" type="xs:boolean" use="required" />
<xs:attribute name="EnableFontSmoothing" type="xs:boolean" use="required" />
<xs:attribute name="EnableDesktopComposition" type="xs:boolean" use="required" />
<xs:attribute name="DisableFullWindowDrag" type="xs:boolean" use="required" />
<xs:attribute name="DisableMenuAnimations" type="xs:boolean" use="required" />
<xs:attribute name="DisableCursorShadow" type="xs:boolean" use="required" />
<xs:attribute name="DisableCursorBlinking" type="xs:boolean" use="required" />
<xs:attribute name="CacheBitmaps" type="xs:boolean" use="required" />
<xs:attribute name="RedirectDiskDrives" type="xs:boolean" use="required" />
<xs:attribute name="RedirectPorts" type="xs:boolean" use="required" />
@@ -106,6 +110,10 @@
<xs:attribute name="InheritDisplayWallpaper" type="xs:boolean" use="optional" />
<xs:attribute name="InheritEnableFontSmoothing" type="xs:boolean" use="optional" />
<xs:attribute name="InheritEnableDesktopComposition" type="xs:boolean" use="optional" />
<xs:attribute name="InheritDisableFullWindowDrag" type="xs:boolean" use="optional" />
<xs:attribute name="InheritDisableMenuAnimations" type="xs:boolean" use="optional" />
<xs:attribute name="InheritDisableCursorShadow" type="xs:boolean" use="optional" />
<xs:attribute name="InheritDisableCursorBlinking" type="xs:boolean" use="optional" />
<xs:attribute name="InheritDomain" type="xs:boolean" use="optional" />
<xs:attribute name="InheritIcon" type="xs:boolean" use="optional" />
<xs:attribute name="InheritPanel" type="xs:boolean" use="optional" />

View File

@@ -417,9 +417,6 @@
<setting name="UVNCSCPort" serializeAs="String">
<value>5500</value>
</setting>
<setting name="StartupComponentsCheck" serializeAs="String">
<value>False</value>
</setting>
<setting name="XULRunnerPath" serializeAs="String">
<value />
</setting>
@@ -774,6 +771,33 @@
<setting name="CloseToTray" serializeAs="String">
<value>False</value>
</setting>
<setting name="StartupComponentsCheck" serializeAs="String">
<value>False</value>
</setting>
<setting name="ConDefaultDisableFullWindowDrag" serializeAs="String">
<value>False</value>
</setting>
<setting name="InhDefaultDisableFullWindowDrag" serializeAs="String">
<value>False</value>
</setting>
<setting name="ConDefaultDisableMenuAnimations" serializeAs="String">
<value>False</value>
</setting>
<setting name="ConDefaultDisableCursorShadow" serializeAs="String">
<value>False</value>
</setting>
<setting name="ConDefaultDisableCursorBlinking" serializeAs="String">
<value>False</value>
</setting>
<setting name="ConDefaultDisableMenuAnimations" serializeAs="String">
<value>False</value>
</setting>
<setting name="ConDefaultDisableCursorShadow" serializeAs="String">
<value>False</value>
</setting>
<setting name="ConDefaultDisableCursorBlinking" serializeAs="String">
<value>False</value>
</setting>
</mRemoteNG.Settings>
</userSettings>
<applicationSettings>