merged develop into removecitrix

This commit is contained in:
Faryan Rezagholi
2020-05-31 19:14:14 +02:00
193 changed files with 19501 additions and 30645 deletions

View File

@@ -6,15 +6,18 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## [Unreleased]
### Added
- #1770: Added missing RDP performance settings
- #1332: Added option to hide menu strip container
- #545: Option to minimize to system tray on closing
- #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
- #1460: Updated GeckoFX to v60
- #1690: Replaced GeckoFX (Firefox) with CefSharp (Chromium)
- #1325: Language resource files cleanup
### Fixed
- #1773: Connection issue with mysql - Missing fields in tblCons
- #1720: Show configuration file name in title of password prompt form
- #1713: Sound redirection does not work if Clipboard redirection is set to No
- #1632: 1.77.1 breaks RDP drive and sound redirection
- #1610: Menu bar changes to english when cancelling options form

View File

@@ -94,16 +94,17 @@ Copyright © 2004 Marc Merritt
Copyright © 2008 Felix Deimel
http://www.codeproject.com/KB/selection/ADPickerCtrl.aspx
CefSharp
Copyright © The CefSharp Authors
MIT License
https://github.com/cefsharp/CefSharp
DockPanel Suite
Copyright © 2018 @roken and @lextm (formerly Weifen Luo)
MIT License
https://github.com/dockpanelsuite/dockpanelsuite
GeckoFX
Copyright © 2016 Tom Hindle
Mozilla Public License
https://bitbucket.org/geckofx/
log4net
Copyright © 2001-2015 The Apache Software Foundation
Apache License Version 2.0

View File

@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\SpecFlow.NUnit.3.1.97\build\SpecFlow.NUnit.props" Condition="Exists('..\packages\SpecFlow.NUnit.3.1.97\build\SpecFlow.NUnit.props')" />
<Import Project="..\packages\NUnit3TestAdapter.3.16.1\build\net35\NUnit3TestAdapter.props" Condition="Exists('..\packages\NUnit3TestAdapter.3.16.1\build\net35\NUnit3TestAdapter.props')" />
<Import Project="..\packages\NUnit.3.12.0\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.12.0\build\NUnit.props')" />
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -40,23 +37,7 @@
<Reference Include="System" />
<Reference Include="System.ComponentModel.Composition" />
<Reference Include="System.Core" />
<Reference Include="System.IO, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.IO.4.3.0\lib\net462\System.IO.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Net.Http, Version=4.1.1.3, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Net.Http.4.3.4\lib\net46\System.Net.Http.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Security.Cryptography.Encoding, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Security.Cryptography.Primitives, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
@@ -81,7 +62,7 @@
<Compile Include="Utilities\XmlCredentialRepoBuilder.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
<None Include="app.config" />
<None Include="Features\CredentialRepository.feature">
<Generator>SpecFlowSingleFileGenerator</Generator>
<LastGenOutput>CredentialRepository.feature.cs</LastGenOutput>
@@ -90,7 +71,6 @@
<Generator>SpecFlowSingleFileGenerator</Generator>
<LastGenOutput>CredentialRepositoryList.feature.cs</LastGenOutput>
</None>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
@@ -101,20 +81,62 @@
<Name>mRemoteV1</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup />
<ItemGroup>
<PackageReference Include="BouncyCastle">
<Version>1.8.6.1</Version>
</PackageReference>
<PackageReference Include="Cucumber.Messages">
<Version>6.0.2</Version>
</PackageReference>
<PackageReference Include="Google.Protobuf">
<Version>3.12.1</Version>
</PackageReference>
<PackageReference Include="Newtonsoft.Json">
<Version>12.0.3</Version>
</PackageReference>
<PackageReference Include="NUnit">
<Version>3.12.0</Version>
</PackageReference>
<PackageReference Include="NUnit.Runners">
<Version>3.11.1</Version>
</PackageReference>
<PackageReference Include="NUnit3TestAdapter">
<Version>3.16.1</Version>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="SpecFlow.NUnit.Runners">
<Version>3.1.97</Version>
</PackageReference>
<PackageReference Include="System.Memory">
<Version>4.5.4</Version>
</PackageReference>
<PackageReference Include="System.Reflection.Emit">
<Version>4.7.0</Version>
</PackageReference>
<PackageReference Include="System.Reflection.Emit.Lightweight">
<Version>4.7.0</Version>
</PackageReference>
<PackageReference Include="System.Runtime">
<Version>4.3.1</Version>
</PackageReference>
<PackageReference Include="System.Runtime.CompilerServices.Unsafe">
<Version>4.7.1</Version>
</PackageReference>
<PackageReference Include="System.Security.Cryptography.Algorithms">
<Version>4.3.1</Version>
</PackageReference>
<PackageReference Include="System.Security.Cryptography.X509Certificates">
<Version>4.3.2</Version>
</PackageReference>
<PackageReference Include="System.Threading.Tasks.Extensions">
<Version>4.5.4</Version>
</PackageReference>
<PackageReference Include="System.ValueTuple">
<Version>4.5.0</Version>
</PackageReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\NUnit.3.12.0\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.12.0\build\NUnit.props'))" />
<Error Condition="!Exists('..\packages\NUnit3TestAdapter.3.16.1\build\net35\NUnit3TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit3TestAdapter.3.16.1\build\net35\NUnit3TestAdapter.props'))" />
<Error Condition="!Exists('..\packages\SpecFlow.3.1.97\build\SpecFlow.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\SpecFlow.3.1.97\build\SpecFlow.targets'))" />
<Error Condition="!Exists('..\packages\SpecFlow.NUnit.3.1.97\build\SpecFlow.NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\SpecFlow.NUnit.3.1.97\build\SpecFlow.NUnit.props'))" />
<Error Condition="!Exists('..\packages\SpecFlow.NUnit.3.1.97\build\SpecFlow.NUnit.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\SpecFlow.NUnit.3.1.97\build\SpecFlow.NUnit.targets'))" />
</Target>
<Import Project="..\packages\SpecFlow.3.1.97\build\SpecFlow.targets" Condition="Exists('..\packages\SpecFlow.3.1.97\build\SpecFlow.targets')" />
<Import Project="..\packages\SpecFlow.NUnit.3.1.97\build\SpecFlow.NUnit.targets" Condition="Exists('..\packages\SpecFlow.NUnit.3.1.97\build\SpecFlow.NUnit.targets')" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">

View File

@@ -1,34 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="BoDi" version="1.4.1" targetFramework="net472" />
<package id="Cucumber.Messages" version="6.0.2" targetFramework="net472" />
<package id="Gherkin" version="6.0.0" targetFramework="net472" />
<package id="Google.Protobuf" version="3.12.1" targetFramework="net472" />
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net472" />
<package id="NUnit" version="3.12.0" targetFramework="net472" />
<package id="NUnit.Console" version="3.11.1" targetFramework="net472" />
<package id="NUnit.ConsoleRunner" version="3.11.1" targetFramework="net472" />
<package id="NUnit.Extension.NUnitProjectLoader" version="3.6.0" targetFramework="net472" />
<package id="NUnit.Extension.NUnitV2Driver" version="3.8.0" targetFramework="net472" />
<package id="NUnit.Extension.NUnitV2ResultWriter" version="3.6.0" targetFramework="net472" />
<package id="NUnit.Extension.TeamCityEventListener" version="1.0.7" targetFramework="net472" />
<package id="NUnit.Extension.VSProjectLoader" version="3.8.0" targetFramework="net472" />
<package id="NUnit.Runners" version="3.11.1" targetFramework="net472" />
<package id="NUnit3TestAdapter" version="3.16.1" targetFramework="net472" developmentDependency="true" />
<package id="SpecFlow" version="3.1.97" targetFramework="net472" />
<package id="SpecFlow.NUnit" version="3.1.97" targetFramework="net472" />
<package id="SpecFlow.NUnit.Runners" version="3.1.97" targetFramework="net472" />
<package id="System.Buffers" version="4.5.1" targetFramework="net472" />
<package id="System.IO" version="4.3.0" targetFramework="net472" />
<package id="System.Memory" version="4.5.4" targetFramework="net472" />
<package id="System.Net.Http" version="4.3.4" targetFramework="net472" />
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net472" />
<package id="System.Reflection.Emit" version="4.7.0" targetFramework="net472" />
<package id="System.Reflection.Emit.Lightweight" version="4.7.0" targetFramework="net472" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.7.1" targetFramework="net472" />
<package id="System.Security.Cryptography.Encoding" version="4.3.0" targetFramework="net472" />
<package id="System.Security.Cryptography.Primitives" version="4.3.0" targetFramework="net472" />
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net472" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net472" />
<package id="Utf8Json" version="1.3.7" targetFramework="net472" />
</packages>

View File

@@ -98,7 +98,7 @@ namespace mRemoteNGTests.Config.Serializers.ConnectionSerializers.Csv
UseCredSsp = true,
UseVmId = false,
UseEnhancedMode = false,
RenderingEngine = HTTPBase.RenderingEngine.Gecko,
RenderingEngine = HTTPBase.RenderingEngine.CEF,
RDPAuthenticationLevel = AuthenticationLevel.WarnOnFailedAuth,
Colors = RDPColors.Colors16Bit,
Resolution = RDPResolutions.Res1366x768,

View File

@@ -173,7 +173,7 @@ namespace mRemoteNGTests.Connection
{
var wasCalled = false;
_testAbstractConnectionInfoData.PropertyChanged += (sender, args) => wasCalled = true;
_testAbstractConnectionInfoData.RenderingEngine = HTTPBase.RenderingEngine.Gecko;
_testAbstractConnectionInfoData.RenderingEngine = HTTPBase.RenderingEngine.CEF;
Assert.That(wasCalled, Is.True);
}

View File

@@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\packages\ReportGenerator.4.5.8\build\netstandard2.0\ReportGenerator.props" Condition="Exists('..\packages\ReportGenerator.4.5.8\build\netstandard2.0\ReportGenerator.props')" />
<Import Project="..\packages\NUnit3TestAdapter.3.16.1\build\net35\NUnit3TestAdapter.props" Condition="Exists('..\packages\NUnit3TestAdapter.3.16.1\build\net35\NUnit3TestAdapter.props')" />
<Import Project="..\packages\NUnit.3.12.0\build\NUnit.props" Condition="Exists('..\packages\NUnit.3.12.0\build\NUnit.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -60,45 +57,18 @@
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
<ItemGroup>
<Reference Include="BouncyCastle.Crypto, Version=1.8.6.0, Culture=neutral, PublicKeyToken=0e99375e54769942">
<HintPath>..\packages\BouncyCastle.1.8.6.1\lib\BouncyCastle.Crypto.dll</HintPath>
</Reference>
<Reference Include="Castle.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
<HintPath>..\packages\Castle.Core.4.4.1\lib\net45\Castle.Core.dll</HintPath>
</Reference>
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="NSubstitute, Version=4.2.0.0, Culture=neutral, PublicKeyToken=92dd2e9066daa5ca, processorArchitecture=MSIL">
<HintPath>..\packages\NSubstitute.4.2.1\lib\net46\NSubstitute.dll</HintPath>
</Reference>
<Reference Include="nunit.framework, Version=3.12.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\packages\NUnit.3.12.0\lib\net45\nunit.framework.dll</HintPath>
</Reference>
<Reference Include="NUnitForms">
<HintPath>nUnitForms\bin\NUnitForms.dll</HintPath>
</Reference>
<Reference Include="ObjectListView, Version=2.9.1.1072, Culture=neutral, PublicKeyToken=b1c5bf581481bcd4, processorArchitecture=MSIL">
<HintPath>..\packages\ObjectListView.Official.2.9.1\lib\net20\ObjectListView.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.DirectoryServices" />
<Reference Include="System.Drawing" />
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.7.1\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="System.Xml.Linq" />
<Reference Include="WeifenLuo.WinFormsUI.Docking, Version=3.0.6.0, Culture=neutral, PublicKeyToken=5cded1a1a0a7b481, processorArchitecture=MSIL">
<HintPath>..\packages\DockPanelSuite.3.0.6\lib\net40\WeifenLuo.WinFormsUI.Docking.dll</HintPath>
</Reference>
<Reference Include="WindowsBase" />
</ItemGroup>
<Choose>
@@ -271,7 +241,6 @@
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
<None Include="Resources\confCons_v2_5.xml" />
<None Include="Resources\test_puttyConnectionManager_database.dat" />
<None Include="Resources\test_rdcman_badVersionNumber.rdg" />
@@ -319,6 +288,49 @@
<Name>mRemoteV1</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<PackageReference Include="BouncyCastle">
<Version>1.8.6.1</Version>
</PackageReference>
<PackageReference Include="Castle.Core">
<Version>4.4.1</Version>
</PackageReference>
<PackageReference Include="DockPanelSuite">
<Version>3.0.6</Version>
</PackageReference>
<PackageReference Include="log4net">
<Version>2.0.8</Version>
</PackageReference>
<PackageReference Include="NSubstitute">
<Version>4.2.1</Version>
</PackageReference>
<PackageReference Include="NUnit">
<Version>3.12.0</Version>
</PackageReference>
<PackageReference Include="NUnit.Console">
<Version>3.11.1</Version>
</PackageReference>
<PackageReference Include="NUnit3TestAdapter">
<Version>3.16.1</Version>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="ObjectListView.Official">
<Version>2.9.1</Version>
</PackageReference>
<PackageReference Include="OpenCover">
<Version>4.7.922</Version>
</PackageReference>
<PackageReference Include="ReportGenerator">
<Version>4.5.8</Version>
</PackageReference>
<PackageReference Include="System.Runtime.CompilerServices.Unsafe">
<Version>4.7.1</Version>
</PackageReference>
<PackageReference Include="System.Threading.Tasks.Extensions">
<Version>4.5.4</Version>
</PackageReference>
</ItemGroup>
<Choose>
<When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'">
<ItemGroup>
@@ -339,14 +351,6 @@
</Choose>
<Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\NUnit.3.12.0\build\NUnit.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit.3.12.0\build\NUnit.props'))" />
<Error Condition="!Exists('..\packages\NUnit3TestAdapter.3.16.1\build\net35\NUnit3TestAdapter.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\NUnit3TestAdapter.3.16.1\build\net35\NUnit3TestAdapter.props'))" />
<Error Condition="!Exists('..\packages\ReportGenerator.4.5.8\build\netstandard2.0\ReportGenerator.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\ReportGenerator.4.5.8\build\netstandard2.0\ReportGenerator.props'))" />
</Target>
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">

View File

@@ -1,22 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="BouncyCastle" version="1.8.6.1" targetFramework="net472" />
<package id="Castle.Core" version="4.4.1" targetFramework="net472" />
<package id="DockPanelSuite" version="3.0.6" targetFramework="net472" />
<package id="log4net" version="2.0.8" targetFramework="net472" />
<package id="NSubstitute" version="4.2.1" targetFramework="net472" />
<package id="NUnit" version="3.12.0" targetFramework="net472" />
<package id="NUnit.Console" version="3.11.1" targetFramework="net472" />
<package id="NUnit.ConsoleRunner" version="3.11.1" targetFramework="net472" />
<package id="NUnit.Extension.NUnitProjectLoader" version="3.6.0" targetFramework="net472" />
<package id="NUnit.Extension.NUnitV2Driver" version="3.8.0" targetFramework="net472" />
<package id="NUnit.Extension.NUnitV2ResultWriter" version="3.6.0" targetFramework="net472" />
<package id="NUnit.Extension.TeamCityEventListener" version="1.0.7" targetFramework="net472" />
<package id="NUnit.Extension.VSProjectLoader" version="3.8.0" targetFramework="net472" />
<package id="NUnit3TestAdapter" version="3.16.1" targetFramework="net472" developmentDependency="true" />
<package id="ObjectListView.Official" version="2.9.1" targetFramework="net472" />
<package id="OpenCover" version="4.7.922" targetFramework="net472" />
<package id="ReportGenerator" version="4.5.8" targetFramework="net472" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.7.1" targetFramework="net472" />
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net472" />
</packages>

View File

@@ -29,16 +29,16 @@ namespace mRemoteNG.App
messageCollector.AddMessage(MessageClass.InformationMsg, "Checking FIPS Policy...", true);
if (!FipsPolicyEnabledForServer2003() && !FipsPolicyEnabledForServer2008AndNewer()) return;
var errorText = string.Format(Language.strErrorFipsPolicyIncompatible, GeneralAppInfo.ProductName);
var errorText = string.Format(Language.ErrorFipsPolicyIncompatible, GeneralAppInfo.ProductName);
messageCollector.AddMessage(MessageClass.ErrorMsg, errorText, true);
//About to pop up a message, let's not block it...
FrmSplashScreen.getInstance().Close();
var ShouldIStayOrShouldIGo = CTaskDialog.MessageBox(Application.ProductName,
Language.strCompatibilityProblemDetected, errorText, "",
Language.CompatibilityProblemDetected, errorText, "",
"",
Language.strCheckboxDoNotShowThisMessageAgain,
Language.CheckboxDoNotShowThisMessageAgain,
ETaskDialogButtons.OkCancel, ESysIcons.Warning,
ESysIcons.Warning);
if (CTaskDialog.VerificationChecked && ShouldIStayOrShouldIGo == DialogResult.OK)
@@ -87,10 +87,10 @@ namespace mRemoteNG.App
}
if (proccesses.Length <= 0) return;
CTaskDialog.MessageBox(Application.ProductName, Language.strCompatibilityProblemDetected,
string.Format(Language.strCompatibilityLenovoAutoScrollUtilityDetected,
CTaskDialog.MessageBox(Application.ProductName, Language.CompatibilityProblemDetected,
string.Format(Language.CompatibilityLenovoAutoScrollUtilityDetected,
Application.ProductName), "",
"", Language.strCheckboxDoNotShowThisMessageAgain, ETaskDialogButtons.Ok,
"", Language.CheckboxDoNotShowThisMessageAgain, ETaskDialogButtons.Ok,
ESysIcons.Warning,
ESysIcons.Warning);
if (CTaskDialog.VerificationChecked)

View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Collections.Generic;
using System.IO;
using System.Windows.Forms;
@@ -23,13 +23,13 @@ namespace mRemoteNG.App
openFileDialog.Multiselect = true;
var fileTypes = new List<string>();
fileTypes.AddRange(new[] {Language.strFilterAllImportable, "*.xml;*.rdp;*.rdg;*.dat;*.csv"});
fileTypes.AddRange(new[] {Language.strFiltermRemoteXML, "*.xml"});
fileTypes.AddRange(new[] {Language.strFiltermRemoteCSV, "*.csv"});
fileTypes.AddRange(new[] {Language.strFilterRDP, "*.rdp"});
fileTypes.AddRange(new[] {Language.strFilterRdgFiles, "*.rdg"});
fileTypes.AddRange(new[] {Language.strFilterPuttyConnectionManager, "*.dat"});
fileTypes.AddRange(new[] {Language.strFilterAll, "*.*"});
fileTypes.AddRange(new[] {Language.FilterAllImportable, "*.xml;*.rdp;*.rdg;*.dat;*.csv"});
fileTypes.AddRange(new[] {Language.FiltermRemoteXML, "*.xml"});
fileTypes.AddRange(new[] {Language.FiltermRemoteCSV, "*.csv"});
fileTypes.AddRange(new[] {Language.FilterRDP, "*.rdp"});
fileTypes.AddRange(new[] {Language.FilterRdgFiles, "*.rdg"});
fileTypes.AddRange(new[] {Language.FilterPuttyConnectionManager, "*.dat"});
fileTypes.AddRange(new[] {Language.FilterAll, "*.*"});
openFileDialog.Filter = string.Join("|", fileTypes.ToArray());
@@ -40,7 +40,7 @@ namespace mRemoteNG.App
openFileDialog.FileNames,
importDestinationContainer,
Runtime.ConnectionsService,
fileName => MessageBox.Show(string.Format(Language.strImportFileFailedContent, fileName), Language.strImportFileFailedMainInstruction,
fileName => MessageBox.Show(string.Format(Language.ImportFileFailedContent, fileName), Language.AskUpdatesMainInstruction,
MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1));
}
}

View File

@@ -96,7 +96,7 @@ namespace mRemoteNG.App.Initialization
{
var data = $"{Application.ProductName} {Application.ProductVersion}";
if (Runtime.IsPortableEdition)
data += $" {Language.strLabelPortableEdition}";
data += $" {Language.PortableEdition}";
data += " starting.";
_messageCollector.AddMessage(MessageClass.InformationMsg, data, true);
}

View File

@@ -58,7 +58,7 @@ namespace mRemoteNG.App
private static string GetLogPathNormalEdition()
{
return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData),
return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData),
Application.ProductName);
}

View File

@@ -8,7 +8,7 @@ namespace mRemoteNG.App
{
public static class ProgramRoot
{
private static Mutex mutex;
private static Mutex _mutex;
/// <summary>
/// The main entry point for the application.
@@ -34,14 +34,13 @@ namespace mRemoteNG.App
public static void CloseSingletonInstanceMutex()
{
mutex?.Close();
_mutex?.Close();
}
private static void StartApplicationAsSingleInstance()
{
const string mutexID = "mRemoteNG_SingleInstanceMutex";
bool newInstanceCreated;
mutex = new Mutex(false, mutexID, out newInstanceCreated);
_mutex = new Mutex(false, mutexID, out var newInstanceCreated);
if (!newInstanceCreated)
{
SwitchToCurrentInstance();
@@ -49,7 +48,7 @@ namespace mRemoteNG.App
}
StartApplication();
GC.KeepAlive(mutex);
GC.KeepAlive(_mutex);
}
private static void SwitchToCurrentInstance()

View File

@@ -1,4 +1,4 @@
using mRemoteNG.App.Info;
using mRemoteNG.App.Info;
using mRemoteNG.Config.Putty;
using mRemoteNG.Connection;
using mRemoteNG.Credential;
@@ -111,13 +111,13 @@ namespace mRemoteNG.App
if (Settings.Default.UseSQLServer)
{
MessageCollector.AddExceptionMessage(Language.strLoadFromSqlFailed, ex);
var commandButtons = string.Join("|", Language.strCommandTryAgain,
Language.strCommandOpenConnectionFile,
string.Format(Language.strCommandExitProgram,
MessageCollector.AddExceptionMessage(Language.LoadFromSqlFailed, ex);
var commandButtons = string.Join("|", Language._TryAgain,
Language.CommandOpenConnectionFile,
string.Format(Language.CommandExitProgram,
Application.ProductName));
CTaskDialog.ShowCommandBox(Application.ProductName, Language.strLoadFromSqlFailed,
Language.strLoadFromSqlFailedContent,
CTaskDialog.ShowCommandBox(Application.ProductName, Language.LoadFromSqlFailed,
Language.LoadFromSqlFailedContent,
MiscTools.GetExceptionMessageRecursive(ex), "", "",
commandButtons, false, ESysIcons.Error, ESysIcons.Error);
switch (CTaskDialog.CommandButtonResult)
@@ -138,7 +138,7 @@ namespace mRemoteNG.App
if (ex is FileNotFoundException && !withDialog)
{
MessageCollector.AddExceptionMessage(
string.Format(Language.strConnectionsFileCouldNotBeLoadedNew,
string.Format(Language.ConnectionsFileCouldNotBeLoadedNew,
connectionFileName), ex,
MessageClass.InformationMsg);
@@ -147,7 +147,7 @@ namespace mRemoteNG.App
Language.ConfigurationCreateNew,
Language.ConfigurationCustomPath,
Language.ConfigurationImportFile,
Language.strMenuExit
Language.Exit
};
var answered = false;
@@ -189,7 +189,7 @@ namespace mRemoteNG.App
{
MessageCollector.AddExceptionMessage(
string
.Format(Language.strConnectionsFileCouldNotBeLoadedNew,
.Format(Language.ConnectionsFileCouldNotBeLoadedNew,
connectionFileName), exc,
MessageClass.InformationMsg);
}
@@ -199,7 +199,7 @@ namespace mRemoteNG.App
}
MessageCollector.AddExceptionStackTrace(
string.Format(Language.strConnectionsFileCouldNotBeLoaded,
string.Format(Language.ConnectionsFileCouldNotBeLoaded,
connectionFileName), ex);
if (connectionFileName != ConnectionsService.GetStartupConnectionFileName())
{
@@ -208,7 +208,7 @@ namespace mRemoteNG.App
else
{
MessageBox.Show(FrmMain.Default,
string.Format(Language.strErrorStartupConnectionFileLoad, Environment.NewLine,
string.Format(Language.ErrorStartupConnectionFileLoad, Environment.NewLine,
Application.ProductName,
ConnectionsService.GetStartupConnectionFileName(),
MiscTools.GetExceptionMessageRecursive(ex)),

View File

@@ -41,7 +41,7 @@ namespace mRemoteNG.App
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strSettingsCouldNotBeSavedOrTrayDispose, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.SettingsCouldNotBeSavedOrTrayDispose, ex);
}
}

View File

@@ -68,7 +68,7 @@ namespace mRemoteNG.Config.Connections
if (!databaseVersionVerifier.VerifyDatabaseVersion(metaData.ConfVersion))
{
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg,
Language.strErrorConnectionListSaveFailed);
Language.ErrorConnectionListSaveFailed);
return;
}

View File

@@ -33,7 +33,7 @@ namespace mRemoteNG.Config.Connections
private Optional<SecureString> PromptForPassword()
{
var password = MiscTools.PasswordDialog("", false);
var password = MiscTools.PasswordDialog(Path.GetFileName(_connectionFilePath), false);
return password;
}
}

View File

@@ -20,7 +20,7 @@ namespace mRemoteNG.Config.DataProviders
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strConnectionsFileBackupFailed, ex,
Runtime.MessageCollector.AddExceptionMessage(Language.ConnectionsFileBackupFailed, ex,
MessageClass.WarningMsg);
throw;
}

View File

@@ -1,4 +1,4 @@
using mRemoteNG.App;
using mRemoteNG.App;
using mRemoteNG.Connection;
using mRemoteNG.Connection.Protocol;
using mRemoteNG.Messages;
@@ -8,7 +8,7 @@ using System.IO;
using System.Linq;
using System.Text.RegularExpressions;
using mRemoteNG.Tree.Root;
using System.Web;
namespace mRemoteNG.Config.Putty
{
@@ -92,7 +92,7 @@ namespace mRemoteNG.Config.Putty
return null;
}
sessionName = System.Web.HttpUtility.UrlDecode(sessionName.Replace("+", "%2B"));
sessionName = HttpUtility.UrlDecode(sessionName.Replace("+", "%2B"));
var sessionFileReader = new SessionFileReader(sessionFile);
var sessionInfo = new PuttySessionInfo

View File

@@ -86,7 +86,7 @@ namespace mRemoteNG.Config.Serializers.Xml
catch (Exception ex)
{
Runtime.ConnectionsService.IsConnectionsFileLoaded = false;
Runtime.MessageCollector.AddExceptionStackTrace(Language.strLoadFromXmlFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.LoadFromXmlFailed, ex);
throw;
}
}
@@ -107,7 +107,7 @@ namespace mRemoteNG.Config.Serializers.Xml
Convert.ToDouble(_xmlDocument.DocumentElement.Attributes["ConfVersion"].Value.Replace(",", "."),
CultureInfo.InvariantCulture);
else
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg, Language.strOldConffile);
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg, Language.OldConffile);
if (!(_confVersion > MaxSupportedConfVersion)) return;
ShowIncompatibleVersionDialogBox();
@@ -196,7 +196,7 @@ namespace mRemoteNG.Config.Serializers.Xml
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strAddNodeFromXmlFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.AddNodeFromXmlFailed, ex);
throw;
}
}
@@ -389,7 +389,7 @@ namespace mRemoteNG.Config.Serializers.Xml
if (xmlnode.GetAttributeAsBool("Inherit"))
connectionInfo.Inheritance.TurnOnInheritanceCompletely();
connectionInfo.Icon = xmlnode.GetAttributeAsString("Icon").Replace(".ico", "");
connectionInfo.Panel = Language.strGeneral;
connectionInfo.Panel = Language.General;
}
if (_confVersion >= 1.5)
@@ -561,7 +561,7 @@ namespace mRemoteNG.Config.Serializers.Xml
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg,
string.Format(Language.strGetConnectionInfoFromXmlFailed,
string.Format(Language.GetConnectionInfoFromXmlFailed,
connectionInfo.Name, ConnectionFileName, ex.Message));
}

View File

@@ -38,7 +38,7 @@ namespace mRemoteNG.Config.Serializers
private void ImportContainers(string ldapPath, ContainerInfo parentContainer)
{
var match = Regex.Match(ldapPath, "ou=([^,]*)", RegexOptions.IgnoreCase);
var name = match.Success ? match.Groups[1].Captures[0].Value : Language.strActiveDirectory;
var name = match.Success ? match.Groups[1].Captures[0].Value : Language.ActiveDirectory;
var newContainer = new ContainerInfo {Name = name};
parentContainer.AddChild(newContainer);

View File

@@ -118,7 +118,7 @@ namespace mRemoteNG.Config.Serializers
// Program Version 2.7 wraps these properties
containerPropertiesNode = containerPropertiesNode.SelectSingleNode("./properties");
}
newContainer.Name = containerPropertiesNode?.SelectSingleNode("./name")?.InnerText ?? Language.strNewFolder;
newContainer.Name = containerPropertiesNode?.SelectSingleNode("./name")?.InnerText ?? Language.NewFolder;
if (bool.TryParse(containerPropertiesNode?.SelectSingleNode("./expanded")?.InnerText, out var expanded))
newContainer.IsExpanded = expanded;
parentContainer.AddChild(newContainer);

View File

@@ -54,14 +54,14 @@ namespace mRemoteNG.Config.Serializers.Versioning
if (isVerified == false)
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg,
string.Format(Language.strErrorBadDatabaseVersion,
string.Format(Language.ErrorBadDatabaseVersion,
databaseVersion,
GeneralAppInfo.ProductName));
}
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg,
string.Format(Language.strErrorVerifyDatabaseVersionFailed,
string.Format(Language.ErrorVerifyDatabaseVersionFailed,
ex.Message));
}

View File

@@ -96,37 +96,37 @@ namespace mRemoteNG.Connection
#region Display
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryDisplay)),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameName)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionName))]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Display)),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Name)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionName))]
public virtual string Name
{
get => _name;
set => SetField(ref _name, value, "Name");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryDisplay)),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDescription)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDescription))]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Display)),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Description)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDescription))]
public virtual string Description
{
get => GetPropertyValue("Description", _description);
set => SetField(ref _description, value, "Description");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryDisplay)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Display)),
TypeConverter(typeof(ConnectionIcon)),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameIcon)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionIcon))]
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Icon)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionIcon))]
public virtual string Icon
{
get => GetPropertyValue("Icon", _icon);
set => SetField(ref _icon, value, "Icon");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryDisplay)),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNamePanel)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionPanel))]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Display)),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Panel)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPanel))]
public virtual string Panel
{
get => GetPropertyValue("Panel", _panel);
@@ -137,39 +137,39 @@ namespace mRemoteNG.Connection
#region Connection
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameAddress)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionAddress)),
AttributeUsedInAllProtocolsExcept()]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.HostnameIp)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionHostnameIp)),
UsedInAllProtocolsExcept()]
public virtual string Hostname
{
get => _hostname.Trim();
set => SetField(ref _hostname, value?.Trim(), "Hostname");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNamePort)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionPort)),
AttributeUsedInAllProtocolsExcept()]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Port)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPort)),
UsedInAllProtocolsExcept(ProtocolType.ICA)]
public virtual int Port
{
get => GetPropertyValue("Port", _port);
set => SetField(ref _port, value, "Port");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameUsername)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionUsername)),
AttributeUsedInAllProtocolsExcept(ProtocolType.VNC, ProtocolType.Telnet, ProtocolType.Rlogin, ProtocolType.RAW)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Username)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUsername)),
UsedInAllProtocolsExcept(ProtocolType.VNC, ProtocolType.Telnet, ProtocolType.Rlogin, ProtocolType.RAW)]
public virtual string Username
{
get => GetPropertyValue("Username", _username);
set => SetField(ref _username, Settings.Default.DoNotTrimUsername ? value : value?.Trim(), "Username");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNamePassword)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionPassword)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Password)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPassword)),
PasswordPropertyText(true),
AttributeUsedInAllProtocolsExcept(ProtocolType.Telnet, ProtocolType.Rlogin, ProtocolType.RAW)]
public virtual string Password
@@ -178,29 +178,29 @@ namespace mRemoteNG.Connection
set => SetField(ref _password, value, "Password");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDomain)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDomain)),
AttributeUsedInProtocol(ProtocolType.RDP, ProtocolType.IntApp, ProtocolType.PowerShell)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Domain)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDomain)),
UsedInProtocol(ProtocolType.RDP, ProtocolType.ICA, ProtocolType.IntApp, ProtocolType.PowerShell)]
public string Domain
{
get => GetPropertyValue("Domain", _domain).Trim();
set => SetField(ref _domain, value?.Trim(), "Domain");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameVmId)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionVmId)),
AttributeUsedInProtocol(ProtocolType.RDP)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.VmId)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVmId)),
UsedInProtocol(ProtocolType.RDP)]
public string VmId
{
get => GetPropertyValue("VmId", _vmId).Trim();
set => SetField(ref _vmId, value?.Trim(), "VmId");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameSSHTunnelConnection)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionSSHTunnelConnection)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.SshTunnel)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSshTunnel)),
TypeConverter(typeof(SshTunnelTypeConverter)),
AttributeUsedInAllProtocolsExcept()]
public string SSHTunnelConnectionName
@@ -212,9 +212,9 @@ namespace mRemoteNG.Connection
#region Protocol
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameProtocol)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionProtocol)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Protocol)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionProtocol)),
TypeConverter(typeof(MiscTools.EnumTypeConverter))]
public virtual ProtocolType Protocol
{
@@ -222,9 +222,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _protocol, value, "Protocol");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRdpVersion)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRdpVersion)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpVersion)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRdpVersion)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public virtual RdpVersion RdpVersion
@@ -233,9 +233,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _rdpProtocolVersion, value, nameof(RdpVersion));
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameExternalTool)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionExternalTool)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.ExternalTool)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionExternalTool)),
TypeConverter(typeof(ExternalToolsTypeConverter)),
AttributeUsedInProtocol(ProtocolType.IntApp)]
public string ExtApp
@@ -244,9 +244,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _extApp, value, "ExtApp");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNamePuttySession)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionPuttySession)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.PuttySession)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionPuttySession)),
TypeConverter(typeof(Config.Putty.PuttySessionsManager.SessionList)),
AttributeUsedInProtocol(ProtocolType.SSH1, ProtocolType.SSH2, ProtocolType.Telnet,
ProtocolType.RAW, ProtocolType.Rlogin)]
@@ -256,19 +256,30 @@ namespace mRemoteNG.Connection
set => SetField(ref _puttySession, value, "PuttySession");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameSSHOptions)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionSSHOptions)),
AttributeUsedInProtocol(ProtocolType.SSH1, ProtocolType.SSH2)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.SshOptions)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSshOptions)),
UsedInProtocol(ProtocolType.SSH1, ProtocolType.SSH2)]
public virtual string SSHOptions
{
get => GetPropertyValue("SSHOptions", _sshOptions);
set => SetField(ref _sshOptions, value, "SSHOptions");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameUseConsoleSession)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionUseConsoleSession)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.EncryptionStrength)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEncryptionStrength)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
UsedInProtocol(ProtocolType.ICA)]
public IcaProtocol.EncryptionStrength ICAEncryptionStrength
{
get => GetPropertyValue("ICAEncryptionStrength", _icaEncryption);
set => SetField(ref _icaEncryption, value, "ICAEncryptionStrength");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseConsoleSession)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseConsoleSession)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool UseConsoleSession
@@ -277,9 +288,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _useConsoleSession, value, "UseConsoleSession");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameAuthenticationLevel)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionAuthenticationLevel)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.AuthenticationLevel)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionAuthenticationLevel)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public AuthenticationLevel RDPAuthenticationLevel
@@ -288,10 +299,10 @@ namespace mRemoteNG.Connection
set => SetField(ref _rdpAuthenticationLevel, value, "RDPAuthenticationLevel");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRDPMinutesToIdleTimeout)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRDPMinutesToIdleTimeout)),
AttributeUsedInProtocol(ProtocolType.RDP)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.MinutesToIdleTimeout)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDPMinutesToIdleTimeout)),
UsedInProtocol(ProtocolType.RDP)]
public virtual int RDPMinutesToIdleTimeout
{
get => GetPropertyValue("RDPMinutesToIdleTimeout", _rdpMinutesToIdleTimeout);
@@ -305,29 +316,29 @@ namespace mRemoteNG.Connection
}
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRDPAlertIdleTimeout)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRDPAlertIdleTimeout)),
AttributeUsedInProtocol(ProtocolType.RDP)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.MinutesToIdleTimeout)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDPAlertIdleTimeout)),
UsedInProtocol(ProtocolType.RDP)]
public bool RDPAlertIdleTimeout
{
get => GetPropertyValue("RDPAlertIdleTimeout", _rdpAlertIdleTimeout);
set => SetField(ref _rdpAlertIdleTimeout, value, "RDPAlertIdleTimeout");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameLoadBalanceInfo)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionLoadBalanceInfo)),
AttributeUsedInProtocol(ProtocolType.RDP)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.LoadBalanceInfo)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionLoadBalanceInfo)),
UsedInProtocol(ProtocolType.RDP)]
public string LoadBalanceInfo
{
get => GetPropertyValue("LoadBalanceInfo", _loadBalanceInfo).Trim();
set => SetField(ref _loadBalanceInfo, value?.Trim(), "LoadBalanceInfo");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRenderingEngine)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRenderingEngine)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.RenderingEngine)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRenderingEngine)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.HTTP, ProtocolType.HTTPS)]
public HTTPBase.RenderingEngine RenderingEngine
@@ -336,9 +347,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _renderingEngine, value, "RenderingEngine");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameUseCredSsp)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionUseCredSsp)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseCredSsp)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseCredSsp)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool UseCredSsp
@@ -347,9 +358,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _useCredSsp, value, "UseCredSsp");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameUseVmId)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionUseVmId)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseVmId)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseVmId)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool UseVmId
@@ -358,9 +369,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _useVmId, value, "UseVmId");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameUseEnhancedMode)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionUseEnhancedMode)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 3),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.UseEnhancedMode)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUseEnhancedMode)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool UseEnhancedMode
@@ -372,9 +383,9 @@ namespace mRemoteNG.Connection
#region RD Gateway
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRDGatewayUsageMethod)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRDGatewayUsageMethod)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayUsageMethod)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRdpGatewayUsageMethod)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public RDGatewayUsageMethod RDGatewayUsageMethod
@@ -383,19 +394,19 @@ namespace mRemoteNG.Connection
set => SetField(ref _rdGatewayUsageMethod, value, "RDGatewayUsageMethod");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRDGatewayHostname)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRDGatewayHostname)),
AttributeUsedInProtocol(ProtocolType.RDP)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayHostname)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayHostname)),
UsedInProtocol(ProtocolType.RDP)]
public string RDGatewayHostname
{
get => GetPropertyValue("RDGatewayHostname", _rdGatewayHostname).Trim();
set => SetField(ref _rdGatewayHostname, value?.Trim(), "RDGatewayHostname");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRDGatewayUseConnectionCredentials)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRDGatewayUseConnectionCredentials)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayUseConnectionCredentials)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayUseConnectionCredentials)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public RDGatewayUseConnectionCredentials RDGatewayUseConnectionCredentials
@@ -404,19 +415,19 @@ namespace mRemoteNG.Connection
set => SetField(ref _rdGatewayUseConnectionCredentials, value, "RDGatewayUseConnectionCredentials");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRDGatewayUsername)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRDGatewayUsername)),
AttributeUsedInProtocol(ProtocolType.RDP)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayUsername)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayUsername)),
UsedInProtocol(ProtocolType.RDP)]
public string RDGatewayUsername
{
get => GetPropertyValue("RDGatewayUsername", _rdGatewayUsername).Trim();
set => SetField(ref _rdGatewayUsername, value?.Trim(), "RDGatewayUsername");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRDGatewayPassword)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyNameRDGatewayPassword)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayPassword)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRdpGatewayPassword)),
PasswordPropertyText(true),
AttributeUsedInProtocol(ProtocolType.RDP)]
public string RDGatewayPassword
@@ -425,10 +436,10 @@ namespace mRemoteNG.Connection
set => SetField(ref _rdGatewayPassword, value, "RDGatewayPassword");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRDGatewayDomain)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRDGatewayDomain)),
AttributeUsedInProtocol(ProtocolType.RDP)]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 4),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.RdpGatewayDomain)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRDGatewayDomain)),
UsedInProtocol(ProtocolType.RDP)]
public string RDGatewayDomain
{
get => GetPropertyValue("RDGatewayDomain", _rdGatewayDomain).Trim();
@@ -439,9 +450,9 @@ namespace mRemoteNG.Connection
#region Appearance
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameResolution)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionResolution)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Resolution)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionResolution)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public RDPResolutions Resolution
@@ -450,9 +461,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _resolution, value, "Resolution");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameAutomaticResize)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionAutomaticResize)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.AutomaticResize)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionAutomaticResize)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool AutomaticResize
@@ -461,9 +472,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _automaticResize, value, "AutomaticResize");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameColors)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionColors)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Colors)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionColors)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public RDPColors Colors
@@ -472,9 +483,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _colors, value, "Colors");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameCacheBitmaps)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionCacheBitmaps)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.CacheBitmaps)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionCacheBitmaps)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool CacheBitmaps
@@ -483,9 +494,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _cacheBitmaps, value, "CacheBitmaps");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDisplayWallpaper)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDisplayWallpaper)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisplayWallpaper)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisplayWallpaper)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool DisplayWallpaper
@@ -494,9 +505,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _displayWallpaper, value, "DisplayWallpaper");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDisplayThemes)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDisplayThemes)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisplayThemes)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisplayThemes)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool DisplayThemes
@@ -505,9 +516,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _displayThemes, value, "DisplayThemes");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameEnableFontSmoothing)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionEnableFontSmoothing)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.FontSmoothing)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEnableFontSmoothing)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool EnableFontSmoothing
@@ -516,9 +527,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _enableFontSmoothing, value, "EnableFontSmoothing");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameEnableDesktopComposition)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionEnableDesktopComposition)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.EnableDesktopComposition)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEnableDesktopComposition)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool EnableDesktopComposition
@@ -527,9 +538,9 @@ 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)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableFullWindowDrag)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableFullWindowDrag)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool DisableFullWindowDrag
@@ -538,9 +549,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _disableFullWindowDrag, value, "DisableFullWindowDrag");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDisableMenuAnimations)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDisableMenuAnimations)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableMenuAnimations)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableMenuAnimations)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool DisableMenuAnimations
@@ -549,9 +560,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _disableMenuAnimations, value, "DisableMenuAnimations");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDisableCursorShadow)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDisableCursorShadow)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableCursorShadow)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableCursorShadow)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool DisableCursorShadow
@@ -560,9 +571,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _disableCursorShadow, value, "DisableCursorShadow");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameDisableCursorShadow)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionDisableCursorShadow)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.DisableCursorShadow)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionDisableCursorShadow)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool DisableCursorBlinking
@@ -574,9 +585,9 @@ namespace mRemoteNG.Connection
#region Redirect
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRedirectKeys)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRedirectKeys)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.RedirectKeys)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectKeys)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool RedirectKeys
@@ -585,9 +596,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _redirectKeys, value, "RedirectKeys");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRedirectDrives)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRedirectDrives)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Redirect)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectDrives)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool RedirectDiskDrives
@@ -596,9 +607,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _redirectDiskDrives, value, "RedirectDiskDrives");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRedirectPrinters)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRedirectPrinters)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Printers)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectPrinters)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool RedirectPrinters
@@ -607,9 +618,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _redirectPrinters, value, "RedirectPrinters");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRedirectClipboard)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRedirectClipboard)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Clipboard)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectClipboard)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool RedirectClipboard
@@ -619,9 +630,9 @@ namespace mRemoteNG.Connection
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRedirectPorts)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRedirectPorts)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Ports)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectPorts)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool RedirectPorts
@@ -630,9 +641,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _redirectPorts, value, "RedirectPorts");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRedirectSmartCards)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRedirectSmartCards)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Redirect)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectSmartCards)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool RedirectSmartCards
@@ -641,9 +652,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _redirectSmartCards, value, "RedirectSmartCards");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRedirectSounds)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRedirectSounds)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Sounds)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectSounds)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public RDPSounds RedirectSound
@@ -652,9 +663,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _redirectSound, value, "RedirectSound");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameSoundQuality)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionSoundQuality)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.SoundQuality)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSoundQuality)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public RDPSoundQuality SoundQuality
@@ -663,9 +674,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _soundQuality, value, "SoundQuality");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameRedirectAudioCapture)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionRedirectAudioCapture)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 6),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.AudioCapture)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionRedirectAudioCapture)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.RDP)]
public bool RedirectAudioCapture
@@ -680,9 +691,9 @@ namespace mRemoteNG.Connection
[Browsable(false)] public string ConstantID { get; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameExternalToolBefore)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionExternalToolBefore)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.ExternalToolBefore)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionExternalToolBefore)),
TypeConverter(typeof(ExternalToolsTypeConverter))]
public virtual string PreExtApp
{
@@ -690,9 +701,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _preExtApp, value, "PreExtApp");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameExternalToolAfter)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionExternalToolAfter)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.ExternalToolAfter)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionExternalToolAfter)),
TypeConverter(typeof(ExternalToolsTypeConverter))]
public virtual string PostExtApp
{
@@ -700,27 +711,27 @@ namespace mRemoteNG.Connection
set => SetField(ref _postExtApp, value, "PostExtApp");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameMACAddress)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionMACAddress))]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.MacAddress)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionMACAddress))]
public virtual string MacAddress
{
get => GetPropertyValue("MacAddress", _macAddress);
set => SetField(ref _macAddress, value, "MacAddress");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameUser1)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionUser1))]
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.UserField)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionUser1))]
public virtual string UserField
{
get => GetPropertyValue("UserField", _userField);
set => SetField(ref _userField, value, "UserField");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameFavorite)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionFavorite)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Favorite)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionFavorite)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public virtual bool Favorite
{
@@ -732,9 +743,9 @@ namespace mRemoteNG.Connection
#region VNC
// TODO: it seems all these VNC properties were added and serialized but
// never hooked up to the VNC protocol or shown to the user
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameCompression)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionCompression)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Compression)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionCompression)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.VNC),
Browsable(false)]
@@ -744,9 +755,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncCompression, value, "VNCCompression");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameEncoding)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionEncoding)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Encoding)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionEncoding)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.VNC),
Browsable(false)]
@@ -756,9 +767,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncEncoding, value, "VNCEncoding");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameAuthenticationMode)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionAuthenticationMode)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 2),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.AuthenticationMode)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionAuthenticationMode)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.VNC),
Browsable(false)]
@@ -768,9 +779,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncAuthMode, value, "VNCAuthMode");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameVNCProxyType)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionVNCProxyType)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyType)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyType)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.VNC),
Browsable(false)]
@@ -780,10 +791,10 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncProxyType, value, "VNCProxyType");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameVNCProxyAddress)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionVNCProxyAddress)),
AttributeUsedInProtocol(ProtocolType.VNC),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyAddress)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyAddress)),
UsedInProtocol(ProtocolType.VNC),
Browsable(false)]
public string VNCProxyIP
{
@@ -791,10 +802,10 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncProxyIp, value, "VNCProxyIP");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameVNCProxyPort)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionVNCProxyPort)),
AttributeUsedInProtocol(ProtocolType.VNC),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyPort)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyPort)),
UsedInProtocol(ProtocolType.VNC),
Browsable(false)]
public int VNCProxyPort
{
@@ -802,10 +813,10 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncProxyPort, value, "VNCProxyPort");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameVNCProxyUsername)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionVNCProxyUsername)),
AttributeUsedInProtocol(ProtocolType.VNC),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyUsername)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyUsername)),
UsedInProtocol(ProtocolType.VNC),
Browsable(false)]
public string VNCProxyUsername
{
@@ -813,9 +824,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncProxyUsername, value, "VNCProxyUsername");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameVNCProxyPassword)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionVNCProxyPassword)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 7),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.ProxyPassword)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionVNCProxyPassword)),
PasswordPropertyText(true),
AttributeUsedInProtocol(ProtocolType.VNC),
Browsable(false)]
@@ -825,9 +836,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncProxyPassword, value, "VNCProxyPassword");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameColors)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionColors)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.Colors)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionColors)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.VNC),
Browsable(false)]
@@ -837,9 +848,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncColors, value, "VNCColors");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameSmartSizeMode)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionSmartSizeMode)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.SmartSizeMode)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionSmartSizeMode)),
TypeConverter(typeof(MiscTools.EnumTypeConverter)),
AttributeUsedInProtocol(ProtocolType.VNC)]
public ProtocolVNC.SmartSizeMode VNCSmartSizeMode
@@ -848,9 +859,9 @@ namespace mRemoteNG.Connection
set => SetField(ref _vncSmartSizeMode, value, "VNCSmartSizeMode");
}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.strPropertyNameViewOnly)),
LocalizedAttributes.LocalizedDescription(nameof(Language.strPropertyDescriptionViewOnly)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 5),
LocalizedAttributes.LocalizedDisplayName(nameof(Language.ViewOnly)),
LocalizedAttributes.LocalizedDescription(nameof(Language.PropertyDescriptionViewOnly)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter)),
AttributeUsedInProtocol(ProtocolType.VNC)]
public bool VNCViewOnly

View File

@@ -273,17 +273,17 @@ namespace mRemoteNG.Connection
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strConnectionSetDefaultPortFailed, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.ConnectionSetDefaultPortFailed, ex);
return 0;
}
}
private void SetTreeDisplayDefaults()
{
Name = Language.strNewConnection;
Name = Language.NewConnection;
Description = Settings.Default.ConDefaultDescription;
Icon = Settings.Default.ConDefaultIcon;
Panel = Language.strGeneral;
Panel = Language.General;
}
private void SetConnectionDefaults()

View File

@@ -14,9 +14,9 @@ namespace mRemoteNG.Connection
#region General
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGeneral)),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameAll)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionAll)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.General)),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.All)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionAll)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool EverythingInherited
{
@@ -28,21 +28,21 @@ namespace mRemoteNG.Connection
#region Display
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryDisplay), 2),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameDescription)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionDescription)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Display), 2),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Description)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionDescription)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool Description { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryDisplay), 2),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameIcon)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionIcon)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Display), 2),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Icon)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionIcon)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool Icon { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryDisplay), 2),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNamePanel)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionPanel)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Display), 2),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Panel)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionPanel)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool Panel { get; set; }
@@ -50,43 +50,43 @@ namespace mRemoteNG.Connection
#region Connection
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameUsername)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionUsername)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Username)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionUsername)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
[Browsable(true)]
public bool Username { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameVmId)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionVmId)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.VmId)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionVmId)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
[Browsable(true)]
public bool VmId { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNamePassword)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionPassword)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Password)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionPassword)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
[Browsable(true)]
public bool Password { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameDomain)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionDomain)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Domain)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionDomain)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
[Browsable(true)]
public bool Domain { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNamePort)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionPort)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 3),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Port)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionPort)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool Port { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 3),
LocalizedAttributes.LocalizedDisplayNameInheritAttribute(nameof(Language.strPropertyNameSSHTunnelConnection)),
LocalizedAttributes.LocalizedDescriptionInheritAttribute(nameof(Language.strPropertyDescriptionSSHTunnelConnection)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 3),
LocalizedAttributes.LocalizedDisplayNameInheritAttribute(nameof(Language.SshTunnel)),
LocalizedAttributes.LocalizedDescriptionInheritAttribute(nameof(Language.PropertyDescriptionSshTunnel)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
[Browsable(true)]
public bool SSHTunnelConnectionName { get; set; }
@@ -95,87 +95,87 @@ namespace mRemoteNG.Connection
#region Protocol
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameProtocol)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionProtocol)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Protocol)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionProtocol)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool Protocol { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRdpVersion)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRdpVersion)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.RdpVersion)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRdpVersion)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RdpVersion { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameExternalTool)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionExternalTool)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.ExternalTool)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionExternalTool)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool ExtApp { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNamePuttySession)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionPuttySession)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.PuttySession)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionPuttySession)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool PuttySession { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameSSHOptions)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionSSHOptions)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.SshOptions)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionSshOptions)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool SSHOptions { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameAuthenticationLevel)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionAuthenticationLevel)),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.AuthenticationLevel)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionAuthenticationLevel)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RDPAuthenticationLevel { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRDPMinutesToIdleTimeout)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRDPMinutesToIdleTimeout)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.MinutesToIdleTimeout)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRDPMinutesToIdleTimeout)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RDPMinutesToIdleTimeout { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRDPAlertIdleTimeout)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRDPAlertIdleTimeout)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.MinutesToIdleTimeout)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRDPAlertIdleTimeout)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RDPAlertIdleTimeout { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameLoadBalanceInfo)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionLoadBalanceInfo)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.LoadBalanceInfo)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionLoadBalanceInfo)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool LoadBalanceInfo { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRenderingEngine)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRenderingEngine)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.RenderingEngine)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRenderingEngine)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RenderingEngine { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameUseConsoleSession)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionUseConsoleSession)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.UseConsoleSession)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionUseConsoleSession)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool UseConsoleSession { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameUseCredSsp)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionUseCredSsp)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.UseCredSsp)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionUseCredSsp)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool UseCredSsp { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameUseVmId)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionUseVmId)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.UseVmId)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionUseVmId)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool UseVmId { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProtocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameUseEnhancedMode)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionUseEnhancedMode)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Protocol), 4),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.UseEnhancedMode)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionUseEnhancedMode)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool UseEnhancedMode { get; set; }
@@ -183,39 +183,39 @@ namespace mRemoteNG.Connection
#region RD Gateway
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRDGatewayUsageMethod)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRDGatewayUsageMethod)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.RdpGatewayUsageMethod)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRdpGatewayUsageMethod)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RDGatewayUsageMethod { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRDGatewayHostname)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRDGatewayHostname)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.RdpGatewayHostname)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRDGatewayHostname)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RDGatewayHostname { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRDGatewayUseConnectionCredentials)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRDGatewayUseConnectionCredentials)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.RdpGatewayUseConnectionCredentials)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRDGatewayUseConnectionCredentials)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RDGatewayUseConnectionCredentials { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRDGatewayUsername)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRDGatewayUsername)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.RdpGatewayUsername)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRDGatewayUsername)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RDGatewayUsername { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRDGatewayPassword)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRDGatewayPassword)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.RdpGatewayPassword)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRdpGatewayPassword)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RDGatewayPassword { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryGateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRDGatewayDomain)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRDGatewayDomain)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Gateway), 5),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.RdpGatewayDomain)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRDGatewayDomain)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RDGatewayDomain { get; set; }
@@ -223,75 +223,75 @@ namespace mRemoteNG.Connection
#region Appearance
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameResolution)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionResolution)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Resolution)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionResolution)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool Resolution { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameAutomaticResize)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionAutomaticResize)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.AutomaticResize)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionAutomaticResize)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool AutomaticResize { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameColors)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionColors)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Colors)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionColors)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool Colors { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameCacheBitmaps)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionCacheBitmaps)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.CacheBitmaps)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionCacheBitmaps)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool CacheBitmaps { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameDisplayWallpaper)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionDisplayWallpaper)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.DisplayWallpaper)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionDisplayWallpaper)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool DisplayWallpaper { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameDisplayThemes)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionDisplayThemes)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.DisplayThemes)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionDisplayThemes)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool DisplayThemes { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameEnableFontSmoothing)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionEnableFontSmoothing)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.FontSmoothing)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionEnableFontSmoothing)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool EnableFontSmoothing { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameEnableDesktopComposition)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionEnableDesktopComposition)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.EnableDesktopComposition)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionEnableDesktopComposition)),
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)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.DisableFullWindowDrag)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionDisableFullWindowDrag)),
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)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.DisableMenuAnimations)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionDisableMenuAnimations)),
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)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.DisableCursorShadow)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionDisableCursorShadow)),
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)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 6),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.DisableCursorBlinking)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionDisableCursorBlinking)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool DisableCursorBlinking { get; set; }
@@ -299,57 +299,57 @@ namespace mRemoteNG.Connection
#region Redirect
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRedirectKeys)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRedirectKeys)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.RedirectKeys)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRedirectKeys)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RedirectKeys { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRedirectDrives)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRedirectDrives)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.DiskDrives)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRedirectDrives)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RedirectDiskDrives { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRedirectPrinters)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRedirectPrinters)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Printers)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRedirectPrinters)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RedirectPrinters { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRedirectClipboard)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRedirectClipboard)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Clipboard)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRedirectClipboard)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RedirectClipboard { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRedirectPorts)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRedirectPorts)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Redirect)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRedirectPorts)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RedirectPorts { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRedirectSmartCards)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRedirectSmartCards)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Redirect)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRedirectSmartCards)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RedirectSmartCards { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRedirectSounds)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRedirectSounds)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Sounds)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRedirectSounds)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RedirectSound { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameSoundQuality)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionSoundQuality)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.SoundQuality)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionSoundQuality)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool SoundQuality { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryRedirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameRedirectAudioCapture)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionRedirectAudioCapture)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Redirect), 7),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.AudioCapture)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionRedirectAudioCapture)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool RedirectAudioCapture { get; set; }
@@ -357,91 +357,91 @@ namespace mRemoteNG.Connection
#region Misc
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameExternalToolBefore)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionExternalToolBefore)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.ExternalToolBefore)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionExternalToolBefore)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool PreExtApp { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameExternalToolAfter)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionExternalToolAfter)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.ExternalToolAfter)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionExternalToolAfter)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool PostExtApp { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameMACAddress)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionMACAddress)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.MacAddress)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionMACAddress)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool MacAddress { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameUser1)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionUser1)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.UserField)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionUser1)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool UserField { get; set; }
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryMiscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameFavorite)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionFavorite)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Miscellaneous), 8),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Favorite)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionFavorite)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]
public bool Favorite { get; set; }
#endregion
#region VNC
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameCompression)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionCompression)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Compression)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionCompression)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCCompression {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameEncoding)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionEncoding)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Encoding)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionEncoding)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCEncoding {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryConnection), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameAuthenticationMode)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionAuthenticationMode)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Connection), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.AuthenticationMode)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionAuthenticationMode)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCAuthMode {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameVNCProxyType)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionVNCProxyType)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.ProxyType)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionVNCProxyType)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCProxyType {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameVNCProxyAddress)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionVNCProxyAddress)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.ProxyAddress)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionVNCProxyAddress)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCProxyIP {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameVNCProxyPort)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionVNCProxyPort)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.ProxyPort)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionVNCProxyPort)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCProxyPort {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameVNCProxyUsername)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionVNCProxyUsername)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.ProxyUsername)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionVNCProxyUsername)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCProxyUsername {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryProxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameVNCProxyPassword)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionVNCProxyPassword)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Proxy), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.ProxyPassword)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionVNCProxyPassword)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCProxyPassword {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameColors)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionColors)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.Colors)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionColors)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCColors {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameSmartSizeMode)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionSmartSizeMode)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.SmartSizeMode)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionSmartSizeMode)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCSmartSizeMode {get; set;}
[LocalizedAttributes.LocalizedCategory(nameof(Language.strCategoryAppearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.strPropertyNameViewOnly)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.strPropertyDescriptionViewOnly)),
[LocalizedAttributes.LocalizedCategory(nameof(Language.Appearance), 9),
LocalizedAttributes.LocalizedDisplayNameInherit(nameof(Language.ViewOnly)),
LocalizedAttributes.LocalizedDescriptionInherit(nameof(Language.PropertyDescriptionViewOnly)),
TypeConverter(typeof(MiscTools.YesNoTypeConverter))]public bool VNCViewOnly {get; set;}
#endregion

View File

@@ -65,7 +65,7 @@ namespace mRemoteNG.Connection
if (connectionInfo.Hostname == "" && connectionInfo.Protocol != ProtocolType.IntApp)
{
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg,
Language.strConnectionOpenFailedNoHostname);
Language.ConnectionOpenFailedNoHostname);
return;
}
@@ -95,7 +95,7 @@ namespace mRemoteNG.Connection
if (connectionInfoSshTunnel == null)
{
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg,
string.Format(Language.strSSHTunnelConfigProblem, connectionInfoOriginal.Name, connectionInfoOriginal.SSHTunnelConnectionName));
string.Format(Language.SshTunnelConfigProblem, connectionInfoOriginal.Name, connectionInfoOriginal.SSHTunnelConnectionName));
return;
}
Runtime.MessageCollector.AddMessage(MessageClass.DebugMsg,
@@ -123,7 +123,7 @@ namespace mRemoteNG.Connection
if (!(protocolSshTunnel is PuttyBase puttyBaseSshTunnel))
{
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg,
string.Format(Language.strSSHTunnelIsNotPutty, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
string.Format(Language.SshTunnelIsNotPutty, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
return;
}
@@ -137,7 +137,7 @@ namespace mRemoteNG.Connection
{
protocolSshTunnel.Close();
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg,
string.Format(Language.strSSHTunnelNotInitialized, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
string.Format(Language.SshTunnelNotInitialized, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
return;
}
@@ -145,7 +145,7 @@ namespace mRemoteNG.Connection
{
protocolSshTunnel.Close();
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg,
string.Format(Language.strSSHTunnelNotConnected, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
string.Format(Language.SshTunnelNotConnected, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
return;
}
@@ -166,7 +166,7 @@ namespace mRemoteNG.Connection
{
protocolSshTunnel.Close();
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg,
string.Format(Language.strSSHTunnelFailed, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
string.Format(Language.SshTunnelFailed, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
return;
}
@@ -176,7 +176,7 @@ namespace mRemoteNG.Connection
testsock.Close();
break;
}
catch (Exception e)
catch
{
await System.Threading.Tasks.Task.Delay(1000);
}
@@ -186,7 +186,7 @@ namespace mRemoteNG.Connection
{
protocolSshTunnel.Close();
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg,
string.Format(Language.strSSHTunnelPortNotReadyInTime, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
string.Format(Language.SshTunnelPortNotReadyInTime, connectionInfoOriginal.Name, connectionInfoSshTunnel.Name));
return;
}
@@ -230,7 +230,7 @@ namespace mRemoteNG.Connection
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strConnectionOpenFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.ConnectionOpenFailed, ex);
}
}
@@ -372,14 +372,14 @@ namespace mRemoteNG.Connection
}
Runtime.MessageCollector.AddMessage(msgClass,
string.Format(
Language.strProtocolEventDisconnected,
Language.ProtocolEventDisconnected,
disconnectedMessage,
strHostname,
prot.InterfaceControl.Info.Protocol.ToString()));
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strProtocolEventDisconnectFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.ProtocolEventDisconnectFailed, ex);
}
}
@@ -388,7 +388,7 @@ namespace mRemoteNG.Connection
try
{
var prot = (ProtocolBase)sender;
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.strConnenctionCloseEvent,
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.ConnenctionCloseEvent,
true);
string connDetail;
if (prot.InterfaceControl.OriginalInfo.Hostname == "" &&
@@ -400,7 +400,7 @@ namespace mRemoteNG.Connection
connDetail = "UNKNOWN";
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strConnenctionClosedByUser, connDetail,
string.Format(Language.ConnenctionClosedByUser, connDetail,
prot.InterfaceControl.Info.Protocol,
Environment.UserName));
prot.InterfaceControl.OriginalInfo.OpenConnections.Remove(prot);
@@ -413,17 +413,17 @@ namespace mRemoteNG.Connection
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strConnenctionCloseEventFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.ConnenctionCloseEventFailed, ex);
}
}
private static void Prot_Event_Connected(object sender)
{
var prot = (ProtocolBase)sender;
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.strConnectionEventConnected,
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.ConnectionEventConnected,
true);
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strConnectionEventConnectedDetail,
string.Format(Language.ConnectionEventConnectedDetail,
prot.InterfaceControl.OriginalInfo.Hostname,
prot.InterfaceControl.Info.Protocol, Environment.UserName,
prot.InterfaceControl.Info.Description,
@@ -437,7 +437,7 @@ namespace mRemoteNG.Connection
var prot = (ProtocolBase)sender;
var msg = string.Format(
Language.strConnectionEventErrorOccured,
Language.ConnectionEventErrorOccured,
errorMessage,
prot.InterfaceControl.OriginalInfo.Hostname,
errorCode?.ToString() ?? "-");

View File

@@ -62,7 +62,7 @@ namespace mRemoteNG.Connection
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strCouldNotCreateNewConnectionsFile, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.CouldNotCreateNewConnectionsFile, ex);
}
}
@@ -78,7 +78,7 @@ namespace mRemoteNG.Connection
newConnectionInfo.CopyFrom(DefaultConnectionInfo.Instance);
newConnectionInfo.Name = Settings.Default.IdentifyQuickConnectTabs
? string.Format(Language.strQuick, uriBuilder.Host)
? string.Format(Language.Quick, uriBuilder.Host)
: uriBuilder.Host;
newConnectionInfo.Protocol = protocol;
@@ -93,7 +93,7 @@ namespace mRemoteNG.Connection
}
if (string.IsNullOrEmpty(newConnectionInfo.Panel))
newConnectionInfo.Panel = Language.strGeneral;
newConnectionInfo.Panel = Language.General;
newConnectionInfo.IsQuickConnect = true;
@@ -101,7 +101,7 @@ namespace mRemoteNG.Connection
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strQuickConnectFailed, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.QuickConnectFailed, ex);
return null;
}
}
@@ -260,7 +260,7 @@ namespace mRemoteNG.Connection
catch (Exception ex)
{
Runtime.MessageCollector?.AddExceptionMessage(
string.Format(Language.strConnectionsFileCouldNotSaveAs,
string.Format(Language.ConnectionsFileCouldNotSaveAs,
connectionFileName), ex, logOnly: false);
}
finally

View File

@@ -0,0 +1,34 @@
// Copyright © 2013 The CefSharp Authors. All rights reserved.
//
// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
using CefSharp;
using System;
namespace mRemoteNG.Connection.Protocol.Http
{
public class DownloadHandler : IDownloadHandler
{
public event EventHandler<DownloadItem> OnBeforeDownloadFired;
public event EventHandler<DownloadItem> OnDownloadUpdatedFired;
public void OnBeforeDownload(IWebBrowser chromiumWebBrowser, IBrowser browser, DownloadItem downloadItem, IBeforeDownloadCallback callback)
{
OnBeforeDownloadFired?.Invoke(this, downloadItem);
if (!callback.IsDisposed)
{
using (callback)
{
callback.Continue(downloadItem.SuggestedFileName, showDialog: true);
}
}
}
public void OnDownloadUpdated(IWebBrowser chromiumWebBrowser, IBrowser browser, DownloadItem downloadItem, IDownloadItemCallback callback)
{
OnDownloadUpdatedFired?.Invoke(this, downloadItem);
}
}
}

View File

@@ -0,0 +1,64 @@
using CefSharp;
using System.Diagnostics;
using System.Security.Cryptography.X509Certificates;
namespace mRemoteNG.Connection.Protocol.Http
{
partial class RequestHandler : IRequestHandler
{
public bool GetAuthCredentials(IWebBrowser chromiumWebBrowser, IBrowser browser, string originUrl, bool isProxy, string host, int port, string realm, string scheme, IAuthCallback callback)
{
return false;
}
public IResourceRequestHandler GetResourceRequestHandler(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool isNavigation, bool isDownload, string requestInitiator, ref bool disableDefaultHandling)
{
return null;
}
public bool OnBeforeBrowse(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool userGesture, bool isRedirect)
{
if (request.Url.StartsWith(Cef.CefCommitHash))
{
return false;
}
else
{
Process.Start(request.Url);
return true;
}
}
public bool OnCertificateError(IWebBrowser chromiumWebBrowser, IBrowser browser, CefErrorCode errorCode, string requestUrl, ISslInfo sslInfo, IRequestCallback callback)
{
return false;
}
public bool OnOpenUrlFromTab(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, string targetUrl, WindowOpenDisposition targetDisposition, bool userGesture)
{
return false;
}
public void OnPluginCrashed(IWebBrowser chromiumWebBrowser, IBrowser browser, string pluginPath)
{
}
public bool OnQuotaRequest(IWebBrowser chromiumWebBrowser, IBrowser browser, string originUrl, long newSize, IRequestCallback callback)
{
return true;
}
public void OnRenderProcessTerminated(IWebBrowser chromiumWebBrowser, IBrowser browser, CefTerminationStatus status)
{
}
public void OnRenderViewReady(IWebBrowser chromiumWebBrowser, IBrowser browser)
{
}
public bool OnSelectClientCertificate(IWebBrowser chromiumWebBrowser, IBrowser browser, bool isProxy, string host, int port, X509Certificate2Collection certificates, ISelectClientCertificateCallback callback)
{
return true;
}
}
}

View File

@@ -1,7 +1,7 @@
using System;
using System.IO;
using System.Windows.Forms;
using Gecko;
using CefSharp;
using CefSharp.WinForms;
using mRemoteNG.Tools;
using mRemoteNG.App;
using mRemoteNG.UI.Tabs;
@@ -17,6 +17,8 @@ namespace mRemoteNG.Connection.Protocol.Http
protected string httpOrS;
protected int defaultPort;
private string tabTitle;
private bool browserInitialised = false;
private bool connectCalled = false;
#endregion
@@ -26,23 +28,12 @@ namespace mRemoteNG.Connection.Protocol.Http
{
try
{
if (RenderingEngine == RenderingEngine.Gecko)
if (RenderingEngine == RenderingEngine.CEF)
{
if (!Xpcom.IsInitialized)
Xpcom.Initialize("Firefox");
Control = new GeckoWebBrowser();
var culture = Settings.Default.OverrideUICulture;
if (string.IsNullOrEmpty(culture))
Control = new ChromiumWebBrowser("about:blank")
{
GeckoPreferences.User["intl.accept_languages"] =
System.Globalization.CultureInfo.CurrentCulture.TwoLetterISOLanguageName;
}
else
{
GeckoPreferences.User["intl.accept_languages"] = culture;
}
Dock = DockStyle.Fill,
};
}
else
{
@@ -51,7 +42,7 @@ namespace mRemoteNG.Connection.Protocol.Http
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strHttpConnectionFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.HttpConnectionFailed, ex);
}
}
@@ -72,18 +63,17 @@ namespace mRemoteNG.Connection.Protocol.Http
{
wBrowser = Control;
if (InterfaceControl.Info.RenderingEngine == RenderingEngine.Gecko)
if (InterfaceControl.Info.RenderingEngine == RenderingEngine.CEF)
{
var GeckoBrowser = (GeckoWebBrowser)wBrowser;
if (GeckoBrowser != null)
var CEFBrowser = (ChromiumWebBrowser)wBrowser;
if (CEFBrowser != null)
{
GeckoBrowser.DocumentTitleChanged += geckoBrowser_DocumentTitleChanged;
LauncherDialog.Download += geckoBrowser_LauncherDialog_Download;
GeckoBrowser.NSSError += CertEvent.GeckoBrowser_NSSError;
CEFBrowser.LoadingStateChanged += CefBrowser_LoadingStateChanged;
CEFBrowser.TitleChanged += WBrowser_DocumentTitleChanged;
}
else
{
throw new Exception("Failed to initialize Gecko Rendering Engine.");
throw new Exception("Failed to initialize CEF Rendering Engine.");
}
}
else
@@ -94,20 +84,52 @@ namespace mRemoteNG.Connection.Protocol.Http
// http://stackoverflow.com/questions/4655662/how-to-ignore-script-errors-in-webbrowser
objWebBrowser.ScriptErrorsSuppressed = true;
objWebBrowser.Navigated += wBrowser_Navigated;
objWebBrowser.DocumentTitleChanged += wBrowser_DocumentTitleChanged;
objWebBrowser.Navigated += WBrowser_Navigated;
objWebBrowser.DocumentTitleChanged += WBrowser_DocumentTitleChanged;
browserInitialised = true;
}
return true;
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strHttpSetPropsFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.HttpSetPropsFailed, ex);
return false;
}
}
public override bool Connect()
{
try
{
if (InterfaceControl.Info.RenderingEngine == RenderingEngine.CEF)
{
if (browserInitialised)
{
((ChromiumWebBrowser)wBrowser).Load(GetURL());
}
}
else
{
((WebBrowser)wBrowser).Navigate(GetURL());
}
base.Connect();
connectCalled = true;
return true;
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.HttpConnectFailed, ex);
return false;
}
}
#endregion
#region Private Methods
private string GetURL()
{
try
{
@@ -126,85 +148,74 @@ namespace mRemoteNG.Connection.Protocol.Http
if (InterfaceControl.Info.Port != defaultPort)
{
if (strHost.EndsWith("/"))
{
strHost = strHost.Substring(0, strHost.Length - 1);
}
if (strHost.Contains(httpOrS + "://") == false)
{
strHost = httpOrS + "://" + strHost;
}
if (InterfaceControl.Info.RenderingEngine == RenderingEngine.Gecko)
{
((GeckoWebBrowser)wBrowser).Navigate(strHost + ":" + InterfaceControl.Info.Port);
}
else
{
((WebBrowser)wBrowser).Navigate(strHost + ":" + InterfaceControl.Info.Port);
}
strHost = strHost + ":" + InterfaceControl.Info.Port;
}
else
{
if (strHost.Contains(httpOrS + "://") == false)
{
strHost = httpOrS + "://" + strHost;
}
if (InterfaceControl.Info.RenderingEngine == RenderingEngine.Gecko)
{
((GeckoWebBrowser)wBrowser).Navigate(strHost);
}
else
{
((WebBrowser)wBrowser).Navigate(strHost);
}
}
base.Connect();
return true;
return strHost;
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strHttpConnectFailed, ex);
return false;
Runtime.MessageCollector.AddExceptionStackTrace(Language.HttpFailedUrlBuild, ex);
return string.Empty;
}
}
#endregion
#region Private Methods
#endregion
#region Events
private void wBrowser_Navigated(object sender, WebBrowserNavigatedEventArgs e)
private void CefBrowser_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e)
{
browserInitialised = !e.IsLoading;
if (browserInitialised)
{
// Unhook the loading state changes now, as navigation is done by the user on links in the control
((ChromiumWebBrowser)wBrowser).LoadingStateChanged -= CefBrowser_LoadingStateChanged;
// If this Connection has already been asked to connect but the browser hadn't finished initalising
// then the connect wouldn't have been allowed to take place, so now we can call it!
if (connectCalled)
{
Connect();
}
}
}
private void WBrowser_Navigated(object sender, WebBrowserNavigatedEventArgs e)
{
if (!(wBrowser is WebBrowser objWebBrowser)) return;
// This can only be set once the WebBrowser control is shown, it will throw a COM exception otherwise.
objWebBrowser.AllowWebBrowserDrop = false;
objWebBrowser.Navigated -= wBrowser_Navigated;
objWebBrowser.Navigated -= WBrowser_Navigated;
}
private void wBrowser_DocumentTitleChanged(object sender, EventArgs e)
private void WBrowser_DocumentTitleChanged(object sender, EventArgs e)
{
try
{
if (!(InterfaceControl.Parent is ConnectionTab tabP)) return;
string shortTitle;
if (InterfaceControl.Info.RenderingEngine == RenderingEngine.Gecko)
if (InterfaceControl.Info.RenderingEngine == RenderingEngine.CEF)
{
if (((GeckoWebBrowser)wBrowser).DocumentTitle.Length >= 15)
if (((TitleChangedEventArgs)e).Title.Length >= 15)
{
shortTitle = ((GeckoWebBrowser)wBrowser).DocumentTitle.Substring(0, 10) + "...";
shortTitle = ((TitleChangedEventArgs)e).Title.Substring(0, 10) + "...";
}
else
{
shortTitle = ((GeckoWebBrowser)wBrowser).DocumentTitle;
shortTitle = ((CefSharp.TitleChangedEventArgs)e).Title;
}
}
else
@@ -230,7 +241,7 @@ namespace mRemoteNG.Connection.Protocol.Http
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strHttpDocumentTileChangeFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.HttpDocumentTileChangeFailed, ex);
}
}
@@ -242,27 +253,13 @@ namespace mRemoteNG.Connection.Protocol.Http
if (!(InterfaceControl.Parent is ConnectionTab tabP)) return;
string shortTitle;
if (InterfaceControl.Info.RenderingEngine == RenderingEngine.Gecko)
if (((WebBrowser)wBrowser).DocumentTitle.Length >= 15)
{
if (((GeckoWebBrowser)wBrowser).DocumentTitle.Length >= 15)
{
shortTitle = ((GeckoWebBrowser)wBrowser).DocumentTitle.Substring(0, 10) + "...";
}
else
{
shortTitle = ((GeckoWebBrowser)wBrowser).DocumentTitle;
}
shortTitle = ((WebBrowser)wBrowser).DocumentTitle.Substring(0, 10) + "...";
}
else
{
if (((WebBrowser)wBrowser).DocumentTitle.Length >= 15)
{
shortTitle = ((WebBrowser)wBrowser).DocumentTitle.Substring(0, 10) + "...";
}
else
{
shortTitle = ((WebBrowser)wBrowser).DocumentTitle;
}
shortTitle = ((WebBrowser)wBrowser).DocumentTitle;
}
if (!string.IsNullOrEmpty(tabTitle))
@@ -276,55 +273,21 @@ namespace mRemoteNG.Connection.Protocol.Http
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strHttpDocumentTileChangeFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.HttpDocumentTileChangeFailed, ex);
}
}
private void geckoBrowser_LauncherDialog_Download(object sender, Gecko.LauncherDialogEvent e)
{
var objTarget = Xpcom.CreateInstance<nsILocalFileWin>("@mozilla.org/file/local;1");
using (var tmp = new nsAString(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\mremoteng.download"))
{
objTarget.InitWithPath(tmp);
}
//Save file dialog
var saveFileDialog = new SaveFileDialog
{
Filter = "All files (*.*)|*.*",
FilterIndex = 2,
RestoreDirectory = true,
FileName = e.Filename
};
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
var source = IOService.CreateNsIUri(e.Url);
var dest = IOService.CreateNsIUri(new Uri(saveFileDialog.FileName).AbsoluteUri);
var t = (nsAStringBase)new nsAString(Path.GetFileName(saveFileDialog.FileName));
var persist = Xpcom.CreateInstance<nsIWebBrowserPersist>("@mozilla.org/embedding/browser/nsWebBrowserPersist;1");
var nst = Xpcom.CreateInstance<nsITransfer>("@mozilla.org/transfer;1");
nst.Init(source, dest, t, e.Mime, 0, null, persist, false);
persist.SetPersistFlagsAttribute(2 | 32 | 16384);
persist.SetProgressListenerAttribute(nst);
persist.SaveURI(source, null, null, (uint)Gecko.nsIHttpChannelConsts.REFERRER_POLICY_NO_REFERRER, null, null, (nsISupports)dest, null);
}
saveFileDialog.Dispose();
}
#endregion
#region Enums
public enum RenderingEngine
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strHttpInternetExplorer))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.HttpInternetExplorer))]
IE = 1,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strHttpGecko))]
Gecko = 2
[LocalizedAttributes.LocalizedDescription(nameof(Language.HttpCEF))]
CEF = 2
}
#endregion

View File

@@ -1,79 +0,0 @@
using Gecko;
using Gecko.Events;
using mRemoteNG.App;
using mRemoteNG.App.Info;
using mRemoteNG.Messages;
using mRemoteNG.UI.TaskDialog;
// ReSharper disable RedundantAssignment
namespace mRemoteNG.Connection.Protocol.Http
{
internal abstract class CertEvent
{
//Refernce: https://bitbucket.org/geckofx/geckofx-33.0/issues/90/invalid-security-certificate-error-on
internal static void GeckoBrowser_NSSError(object sender, GeckoNSSErrorEventArgs e)
{
/* some messages say "Certificate", some say "certificate"
* I'm guessing that this is going to be a localization issue...
* Log a message so we can try to find a better solution if problems are reported in the future...
*/
if (!e.Message.ToLower().Contains("certificate"))
{
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg, $"Unhandled NSSError: {e.Message}");
e.Handled = false;
return;
}
string[] commandButtons =
{
Language.strHttpsInsecureAllowOnce, // 0
Language.strHttpsInsecureAllowAlways, // 1
Language.strHttpsInsecureDontAllow // 2
};
CTaskDialog.ShowTaskDialogBox(null, GeneralAppInfo.ProductName, Language.strHttpsInsecurePromptTitle,
string.Format(Language.strHttpsInsecurePrompt, e.Uri.AbsoluteUri), "", "", "",
"",
string.Join(" | ", commandButtons), ETaskDialogButtons.None,
ESysIcons.Question, ESysIcons.Question);
var allow = false;
var temporary = true;
// ReSharper disable once SwitchStatementMissingSomeCases
switch (CTaskDialog.CommandButtonResult)
{
case 0:
allow = true;
temporary = true;
break;
case 1:
allow = true;
temporary = false;
break;
case 2:
allow = false;
temporary = true; // just to be safe
break;
}
if (!allow)
{
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg,
$"User did not allow navigation to {e.Uri.AbsoluteUri} with an insecure certificate: {e.Message}");
return;
}
/* "temporary == false" (aka always) might not work:
* https://bitbucket.org/geckofx/geckofx-45.0/issues/152/remembervalidityoverride-doesnt-save-in
* However, my testing was successful in Gecko 45.0.22
*/
CertOverrideService.GetService().RememberValidityOverride(e.Uri, e.Certificate,
CertOverride.Mismatch | CertOverride.Time |
CertOverride.Untrusted, temporary);
e.Handled = true;
((GeckoWebBrowser)sender).Navigate(e.Uri.AbsoluteUri);
}
}
}

View File

@@ -97,14 +97,14 @@ namespace mRemoteNG.Connection.Protocol
}
NativeMethods.SetParent(_handle, InterfaceControl.Handle);
Runtime.MessageCollector?.AddMessage(MessageClass.InformationMsg, Language.strIntAppStuff, true);
Runtime.MessageCollector?.AddMessage(MessageClass.InformationMsg, Language.IntAppStuff, true);
Runtime.MessageCollector?.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strIntAppHandle, _handle), true);
string.Format(Language.IntAppHandle, _handle), true);
Runtime.MessageCollector?.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strIntAppTitle, _process.MainWindowTitle),
string.Format(Language.IntAppTitle, _process.MainWindowTitle),
true);
Runtime.MessageCollector?.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strIntAppParentHandle,
string.Format(Language.PanelHandle,
InterfaceControl.Parent.Handle), true);
Resize(this, new EventArgs());
@@ -126,7 +126,7 @@ namespace mRemoteNG.Connection.Protocol
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strIntAppFocusFailed, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.IntAppFocusFailed, ex);
}
}
@@ -143,7 +143,7 @@ namespace mRemoteNG.Connection.Protocol
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strIntAppResizeFailed, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.IntAppResizeFailed, ex);
}
}
@@ -164,7 +164,7 @@ namespace mRemoteNG.Connection.Protocol
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strIntAppKillFailed, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.IntAppKillFailed, ex);
}
try
@@ -176,7 +176,7 @@ namespace mRemoteNG.Connection.Protocol
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strIntAppDisposeFailed, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.IntAppDisposeFailed, ex);
}
}

View File

@@ -65,7 +65,7 @@ namespace mRemoteNG.Connection.Protocol.PowerShell
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strIntAppFocusFailed, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.IntAppFocusFailed, ex);
}
}
@@ -82,7 +82,7 @@ namespace mRemoteNG.Connection.Protocol.PowerShell
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionMessage(Language.strIntAppResizeFailed, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.IntAppResizeFailed, ex);
}
}

View File

@@ -113,11 +113,12 @@ namespace mRemoteNG.Connection.Protocol
if (Control == null)
return true;
Control.Name = Name;
Control.Parent = _interfaceControl;
Control.Location = _interfaceControl.Location;
Control.Size = InterfaceControl.Size;
Control.Anchor = _interfaceControl.Anchor;
_interfaceControl.Controls.Add(Control);
return true;
}

View File

@@ -44,7 +44,7 @@ namespace mRemoteNG.Connection.Protocol
case ProtocolType.IntApp:
if (connectionInfo.ExtApp == "")
{
throw (new Exception(Language.strNoExtAppDefined));
throw (new Exception(Language.NoExtAppDefined));
}
return new IntegratedProgram();
}

View File

@@ -4,37 +4,37 @@ namespace mRemoteNG.Connection.Protocol
{
public enum ProtocolType
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDP))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Rdp))]
RDP = 0,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strVnc))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Vnc))]
VNC = 1,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strSsh1))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.SshV1))]
SSH1 = 2,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strSsh2))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.SshV2))]
SSH2 = 3,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strTelnet))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Telnet))]
Telnet = 4,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRlogin))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Rlogin))]
Rlogin = 5,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRAW))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Raw))]
RAW = 6,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strHttp))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Http))]
HTTP = 7,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strHttps))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Https))]
HTTPS = 8,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strPowerShell))]
PowerShell = 10,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strExtApp))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.ExternalTool))]
IntApp = 20
}
}

View File

@@ -179,14 +179,14 @@ namespace mRemoteNG.Connection.Protocol
NativeMethods.SetParent(PuttyHandle, InterfaceControl.Handle);
}
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.strPuttyStuff, true);
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.PuttyStuff, true);
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strPuttyHandle, PuttyHandle), true);
string.Format(Language.PuttyHandle, PuttyHandle), true);
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strPuttyTitle, PuttyProcess.MainWindowTitle),
string.Format(Language.PuttyTitle, PuttyProcess.MainWindowTitle),
true);
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strPuttyParentHandle,
string.Format(Language.PanelHandle,
InterfaceControl.Parent.Handle), true);
Resize(this, new EventArgs());
@@ -211,7 +211,7 @@ namespace mRemoteNG.Connection.Protocol
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg,
Language.strPuttyFocusFailed + Environment.NewLine + ex.Message,
Language.PuttyFocusFailed + Environment.NewLine + ex.Message,
true);
}
}
@@ -244,7 +244,7 @@ namespace mRemoteNG.Connection.Protocol
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg,
Language.strPuttyResizeFailed + Environment.NewLine + ex.Message,
Language.PuttyResizeFailed + Environment.NewLine + ex.Message,
true);
}
}
@@ -261,7 +261,7 @@ namespace mRemoteNG.Connection.Protocol
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg,
Language.strPuttyKillFailed + Environment.NewLine + ex.Message,
Language.PuttyKillFailed + Environment.NewLine + ex.Message,
true);
}
@@ -272,7 +272,7 @@ namespace mRemoteNG.Connection.Protocol
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg,
Language.strPuttyDisposeFailed + Environment.NewLine + ex.Message,
Language.PuttyDisposeFailed + Environment.NewLine + ex.Message,
true);
}
@@ -289,7 +289,7 @@ namespace mRemoteNG.Connection.Protocol
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg,
Language.strPuttyShowSettingsDialogFailed + Environment.NewLine +
Language.PuttyShowSettingsDialogFailed + Environment.NewLine +
ex.Message, true);
}
}

View File

@@ -4,13 +4,13 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
public enum AuthenticationLevel
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strAlwaysConnectEvenIfAuthFails))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.AlwaysConnectEvenIfAuthFails))]
NoAuth = 0,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strDontConnectWhenAuthFails))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.DontConnectWhenAuthFails))]
AuthRequired = 1,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strWarnIfAuthFails))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.WarnIfAuthFails))]
WarnOnFailedAuth = 2
}
}

View File

@@ -4,13 +4,13 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
public enum RDGatewayUsageMethod
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strNever))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Never))]
Never = 0, // TSC_PROXY_MODE_NONE_DIRECT
[LocalizedAttributes.LocalizedDescription(nameof(Language.strAlways))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Always))]
Always = 1, // TSC_PROXY_MODE_DIRECT
[LocalizedAttributes.LocalizedDescription(nameof(Language.strDetect))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Detect))]
Detect = 2 // TSC_PROXY_MODE_DETECT
}
}

View File

@@ -4,13 +4,13 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
public enum RDGatewayUseConnectionCredentials
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strUseDifferentUsernameAndPassword))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.UseDifferentUsernameAndPassword))]
No = 0,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strUseSameUsernameAndPassword))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.UseSameUsernameAndPassword))]
Yes = 1,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strUseSmartCard))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.UseSmartCard))]
SmartCard = 2
}
}

View File

@@ -4,19 +4,19 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
public enum RDPColors
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDP256Colors))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Rdp256Colors))]
Colors256 = 8,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDP32768Colors))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Rdp32768Colors))]
Colors15Bit = 15,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDP65536Colors))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Rdp65536Colors))]
Colors16Bit = 16,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDP16777216Colors))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Rdp16777216Colors))]
Colors24Bit = 24,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDP4294967296Colors))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Rdp4294967296Colors))]
Colors32Bit = 32
}
}

View File

@@ -5,13 +5,13 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
public enum RDPResolutions
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDPFitToPanel))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.FitToPanel))]
FitToWindow,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strFullscreen))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Fullscreen))]
Fullscreen,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDPSmartSize))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.SmartSize))]
SmartSize,
[Description("800x600")] Res800x600,
[Description("1024x768")] Res1024x768,

View File

@@ -4,13 +4,13 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
public enum RDPSoundQuality
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDPSoundQualityDynamic))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Dynamic))]
Dynamic = 0,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDPSoundQualityMedium))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Medium))]
Medium = 1,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDPSoundQualityHigh))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.High))]
High = 2
}
}

View File

@@ -4,13 +4,13 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
public enum RDPSounds
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDPSoundBringToThisComputer))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.RdpSoundBringToThisComputer))]
BringToThisComputer = 0,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDPSoundLeaveAtRemoteComputer))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.RdpSoundLeaveAtRemoteComputer))]
LeaveAtRemoteComputer = 1,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strRDPSoundDoNotPlay))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.DoNotPlay))]
DoNotPlay = 2
}
}

View File

@@ -12,15 +12,15 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
_description = new Hashtable
{
{"0", nameof(Language.strRdpErrorUnknown)},
{"1", nameof(Language.strRdpErrorCode1)},
{"2", nameof(Language.strRdpErrorOutOfMemory)},
{"3", nameof(Language.strRdpErrorWindowCreation)},
{"4", nameof(Language.strRdpErrorCode2)},
{"5", nameof(Language.strRdpErrorCode3)},
{"6", nameof(Language.strRdpErrorCode4)},
{"7", nameof(Language.strRdpErrorConnection)},
{"100", nameof(Language.strRdpErrorWinsock)}
{"0", nameof(Language.RdpErrorUnknown)},
{"1", nameof(Language.RdpErrorCode1)},
{"2", nameof(Language.RdpErrorOutOfMemory)},
{"3", nameof(Language.RdpErrorWindowCreation)},
{"4", nameof(Language.RdpErrorCode2)},
{"5", nameof(Language.RdpErrorCode3)},
{"6", nameof(Language.RdpErrorCode4)},
{"7", nameof(Language.RdpErrorConnection)},
{"100", nameof(Language.RdpErrorWinsock)}
};
}
@@ -35,8 +35,8 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpErrorGetFailure, ex);
return string.Format(Language.strRdpErrorUnknown, id);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpErrorGetFailure, ex);
return string.Format(Language.RdpErrorUnknown, id);
}
}
}

View File

@@ -80,7 +80,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetRedirectKeysFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetRedirectKeysFailed, ex);
}
}
}
@@ -131,7 +131,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetPropsFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetPropsFailed, ex);
return false;
}
}
@@ -161,7 +161,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
else
{
Runtime.MessageCollector.AddExceptionMessage(Language.strRdpControlCreationFailed, ex);
Runtime.MessageCollector.AddExceptionMessage(Language.RdpControlCreationFailed, ex);
}
Control.Dispose();
return false;
@@ -182,7 +182,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strConnectionOpenFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.ConnectionOpenFailed, ex);
}
return false;
@@ -196,7 +196,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpDisconnectFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpDisconnectFailed, ex);
Close();
}
}
@@ -209,7 +209,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpToggleFullscreenFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpToggleFullscreenFailed, ex);
}
}
@@ -221,7 +221,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpToggleSmartSizeFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpToggleSmartSizeFailed, ex);
}
}
@@ -235,7 +235,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
ViewOnly = !ViewOnly;
}
catch (Exception ex)
catch
{
Runtime.MessageCollector.AddMessage(MessageClass.WarningMsg, $"Could not toggle view only mode for host {connectionInfo.Hostname}");
}
@@ -252,7 +252,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpFocusFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpFocusFailed, ex);
}
}
@@ -320,7 +320,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
SetPerformanceFlags();
_rdpClient.ConnectingText = Language.strConnecting;
_rdpClient.ConnectingText = Language.Connecting;
}
protected object GetExtendedProperty(string property)
@@ -358,12 +358,12 @@ namespace mRemoteNG.Connection.Protocol.RDP
{
if (_rdpClient.TransportSettings.GatewayIsSupported == 0)
{
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.strRdpGatewayNotSupported,
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.RdpGatewayNotSupported,
true);
return;
}
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.strRdpGatewayIsSupported,
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg, Language.RdpGatewayIsSupported,
true);
if (connectionInfo.RDGatewayUsageMethod != RDGatewayUsageMethod.Never)
@@ -402,7 +402,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetGatewayFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetGatewayFailed, ex);
}
}
@@ -428,14 +428,14 @@ namespace mRemoteNG.Connection.Protocol.RDP
if (_rdpVersion >= Versions.RDC61)
{
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strRdpSetConsoleSwitch, _rdpVersion),
string.Format(Language.RdpSetConsoleSwitch, _rdpVersion),
true);
_rdpClient.AdvancedSettings7.ConnectToAdministerServer = value;
}
else
{
Runtime.MessageCollector.AddMessage(MessageClass.InformationMsg,
string.Format(Language.strRdpSetConsoleSwitch, _rdpVersion) +
string.Format(Language.RdpSetConsoleSwitch, _rdpVersion) +
Environment.NewLine +
"No longer supported in this RDP version. Reference: https://msdn.microsoft.com/en-us/library/aa380863(v=vs.85).aspx",
true);
@@ -446,7 +446,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetConsoleSessionFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetConsoleSessionFailed, ex);
}
}
@@ -514,7 +514,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetCredentialsFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetCredentialsFailed, ex);
}
}
@@ -561,7 +561,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetResolutionFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetResolutionFailed, ex);
}
}
@@ -576,7 +576,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetPortFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetPortFailed, ex);
}
}
@@ -593,7 +593,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetRedirectionFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetRedirectionFailed, ex);
}
}
@@ -630,7 +630,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetPerformanceFlagsFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetPerformanceFlagsFailed, ex);
}
}
@@ -642,7 +642,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetAuthenticationLevelFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetAuthenticationLevelFailed, ex);
}
}
@@ -679,7 +679,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetEventHandlersFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetEventHandlersFailed, ex);
}
}

View File

@@ -35,7 +35,7 @@ namespace mRemoteNG.Connection.Protocol.RDP
}
catch (Exception ex)
{
Runtime.MessageCollector.AddExceptionStackTrace(Language.strRdpSetPropsFailed, ex);
Runtime.MessageCollector.AddExceptionStackTrace(Language.RdpSetPropsFailed, ex);
return false;
}

View File

@@ -24,7 +24,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
public bool ViewOnly
{
get { return _vnc.ViewOnly; }
set { _vnc.ViewOnly = value; }
set => _vnc.ViewOnly = value;
}
#endregion
@@ -61,7 +61,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
Language.strVncSetPropsFailed + Environment.NewLine + ex.Message,
Language.VncSetPropsFailed + Environment.NewLine + ex.Message,
true);
return false;
}
@@ -78,7 +78,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
Language.strConnectionOpenFailed + Environment.NewLine +
Language.ConnectionOpenFailed + Environment.NewLine +
ex.Message);
return false;
}
@@ -95,7 +95,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
Language.strVncConnectionDisconnectFailed + Environment.NewLine +
Language.VncConnectionDisconnectFailed + Environment.NewLine +
ex.Message, true);
}
}
@@ -118,7 +118,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
Language.strVncSendSpecialKeysFailed + Environment.NewLine +
Language.VncSendSpecialKeysFailed + Environment.NewLine +
ex.Message, true);
}
}
@@ -133,7 +133,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
Language.strVncToggleSmartSizeFailed + Environment.NewLine +
Language.VncToggleSmartSizeFailed + Environment.NewLine +
ex.Message, true);
}
}
@@ -147,7 +147,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
Language.strVncToggleViewOnlyFailed + Environment.NewLine +
Language.VncToggleViewOnlyFailed + Environment.NewLine +
ex.Message, true);
}
}
@@ -172,7 +172,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
Language.strVncRefreshFailed + Environment.NewLine + ex.Message,
Language.VncRefreshFailed + Environment.NewLine + ex.Message,
true);
}
}
@@ -196,7 +196,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(Messages.MessageClass.ErrorMsg,
Language.strVncSetEventHandlersFailed + Environment.NewLine +
Language.VncSetEventHandlersFailed + Environment.NewLine +
ex.Message, true);
}
}
@@ -288,7 +288,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
public enum Compression
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strNoCompression))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.NoCompression))]
CompNone = 99,
[Description("0")] Comp0 = 0,
[Description("1")] Comp1 = 1,
@@ -316,44 +316,44 @@ namespace mRemoteNG.Connection.Protocol.VNC
public enum AuthMode
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strVnc))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Vnc))]
AuthVNC,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strWindows))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Windows))]
AuthWin
}
public enum ProxyType
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strNone))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.None))]
ProxyNone,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strHttp))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Http))]
ProxyHTTP,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strSocks5))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Socks5))]
ProxySocks5,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strUltraVncRepeater))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.UltraVncRepeater))]
ProxyUltra
}
public enum Colors
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strNormal))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Normal))]
ColNormal,
[Description("8-bit")] Col8Bit
}
public enum SmartSizeMode
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strNoSmartSize))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.NoSmartSize))]
SmartSNo,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strFree))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Free))]
SmartSFree,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strAspect))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Aspect))]
SmartSAspect
}

View File

@@ -16,7 +16,7 @@ namespace mRemoteNG.Connection.Protocol.VNC
public enum Compression
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strNoCompression))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.NoCompression))]
CompNone = 99,
[Description("0")] Comp0 = 0,
[Description("1")] Comp1 = 1,
@@ -44,44 +44,44 @@ namespace mRemoteNG.Connection.Protocol.VNC
public enum AuthMode
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strVnc))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Vnc))]
AuthVNC,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strWindows))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Windows))]
AuthWin
}
public enum ProxyType
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strNone))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.None))]
ProxyNone,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strHttp))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Http))]
ProxyHTTP,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strSocks5))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Socks5))]
ProxySocks5,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strUltraVncRepeater))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.UltraVncRepeater))]
ProxyUltra
}
public enum Colors
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strNormal))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Normal))]
ColNormal,
[Description("8-bit")] Col8Bit
}
public enum SmartSizeMode
{
[LocalizedAttributes.LocalizedDescription(nameof(Language.strNoSmartSize))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.NoSmartSize))]
SmartSNo,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strFree))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Free))]
SmartSFree,
[LocalizedAttributes.LocalizedDescription(nameof(Language.strAspect))]
[LocalizedAttributes.LocalizedDescription(nameof(Language.Aspect))]
SmartSAspect
}
}

View File

@@ -78,7 +78,7 @@ namespace mRemoteNG.Connection
catch (Exception ex)
{
Runtime.MessageCollector.AddMessage(MessageClass.ErrorMsg,
Language.strErrorCouldNotLaunchPutty + Environment.NewLine +
Language.ErrorCouldNotLaunchPutty + Environment.NewLine +
ex.Message);
}
}

View File

@@ -14,7 +14,7 @@ namespace mRemoteNG.Connection
connectionInfo.Protocol = url.StartsWith("https:") ? ProtocolType.HTTPS : ProtocolType.HTTP;
connectionInfo.SetDefaultPort();
if (string.IsNullOrEmpty(connectionInfo.Panel))
connectionInfo.Panel = Language.strGeneral;
connectionInfo.Panel = Language.General;
connectionInfo.IsQuickConnect = true;
var connectionInitiator = new ConnectionInitiator();
connectionInitiator.OpenConnection(connectionInfo, ConnectionInfo.Force.DoNotJump);

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

View File

@@ -31,7 +31,7 @@ namespace mRemoteNG.Credential
targetsArray.Length));
return PromptUser(
string.Format(
Language.strConfirmDeleteCredentialRecord,
Language.ConfirmDeleteCredentialRecord,
targetsArray.First().Title));
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -9,7 +9,7 @@ User Interface
user_interface/main_window.rst
user_interface/panels.rst
user_interface/menus.rst
user_interface/menu_container.rst
user_interface/connections.rst
user_interface/default_connection_properties.rst
user_interface/quick_connect.rst

View File

@@ -1,16 +1,26 @@
*****
Menus
*****
**************
Menu Container
**************
.. figure:: /images/menus_main_menu.png
Hide Menu Container
===================
In this section we are going to explain the menus located in mRemoteNG. The above screenshot shows the main menu with colors.
You can hide the Menu Container when right-clicking the mRemoteNG title bar.
.. figure:: /images/menus_hide_menu_strip.png
Main Menu
=========
In this section we are going to explain the menus located in mRemoteNG.
- **Red** - Anchor to move menu around the interface
- **Green** - The menu items
.. figure:: /images/menus_main_menu.png
File Menu
=========
---------
Contains standard commands for the application.
.. list-table::
@@ -43,7 +53,7 @@ Contains standard commands for the application.
- Exit mRemoteNG application
View Menu
=========
---------
Menu for additional dialogs for mRemoteNG.
.. list-table::
@@ -80,7 +90,7 @@ Menu for additional dialogs for mRemoteNG.
- Fullscreen mRemoteNG (will not fullscreen connection window but only the mRemoteNG application)
Tools Menu
==========
----------
Additional tools that can be used and triggered in mRemoteNG.
.. list-table::
@@ -99,7 +109,7 @@ Additional tools that can be used and triggered in mRemoteNG.
- Opens mRemoteNG global settings and options dialog
Help Menu
=========
---------
Get more information for the application.
.. list-table::

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -10,19 +10,19 @@ namespace mRemoteNG.Messages.MessageWriters
switch (message.Class)
{
case MessageClass.DebugMsg:
MessageBox.Show(message.Text, string.Format(Language.strTitleInformation, message.Date),
MessageBox.Show(message.Text, string.Format(Language.TitleInformation, message.Date),
MessageBoxButtons.OK, MessageBoxIcon.Information);
break;
case MessageClass.InformationMsg:
MessageBox.Show(message.Text, string.Format(Language.strTitleInformation, message.Date),
MessageBox.Show(message.Text, string.Format(Language.TitleInformation, message.Date),
MessageBoxButtons.OK, MessageBoxIcon.Information);
break;
case MessageClass.WarningMsg:
MessageBox.Show(message.Text, string.Format(Language.strTitleWarning, message.Date),
MessageBox.Show(message.Text, string.Format(Language.TitleWarning, message.Date),
MessageBoxButtons.OK, MessageBoxIcon.Warning);
break;
case MessageClass.ErrorMsg:
MessageBox.Show(message.Text, string.Format(Language.strTitleError, message.Date),
MessageBox.Show(message.Text, string.Format(Language.TitleError, message.Date),
MessageBoxButtons.OK, MessageBoxIcon.Error);
break;
default:

View File

@@ -1525,7 +1525,7 @@ namespace mRemoteNG {
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("IE")]
[global::System.Configuration.DefaultSettingValueAttribute("CEF")]
public string ConDefaultRenderingEngine {
get {
return ((string)(this["ConDefaultRenderingEngine"]));

View File

@@ -378,7 +378,7 @@
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultRenderingEngine" Type="System.String" Scope="User">
<Value Profile="(Default)">IE</Value>
<Value Profile="(Default)">CEF</Value>
</Setting>
<Setting Name="InhDefaultRenderingEngine" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -117,167 +117,127 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="strAbout" xml:space="preserve">
<data name="About" xml:space="preserve">
<value>Σχετικά με</value>
</data>
<data name="strActive" xml:space="preserve">
<value>Ενεργό</value>
</data>
<data name="strActivity" xml:space="preserve">
<value>Δραστηριότητα</value>
</data>
<data name="strAddConnection" xml:space="preserve">
<value>Νέα σύνδεση</value>
</data>
<data name="strAddFolder" xml:space="preserve">
<value>Νέος φάκελος</value>
</data>
<data name="strAddNodeFromXmlFailed" xml:space="preserve">
<data name="AddNodeFromXmlFailed" xml:space="preserve">
<value>AddNodeFromXML απέτυχε!</value>
</data>
<data name="strAddNodesFromSqlFailed" xml:space="preserve">
<value>AddNodesFromSQL απέτυχε!</value>
</data>
<data name="strAllowOnlySingleInstance" xml:space="preserve">
<data name="AllowOnlySingleInstance" xml:space="preserve">
<value>Επιτρέπετε μόνο ένα μόνο παράδειγμα της εφαρμογής (απαιτείται επανεκκίνηση του mRemoteNG)</value>
</data>
<data name="strAlways" xml:space="preserve">
<data name="Always" xml:space="preserve">
<value>Πάντα</value>
</data>
<data name="strAlwaysConnectEvenIfAuthFails" xml:space="preserve">
<data name="AlwaysConnectEvenIfAuthFails" xml:space="preserve">
<value>Πάντοτε να συνδεθεί, ακόμη και αν ο έλεγχος ταυτότητας αποτυγχάνει</value>
</data>
<data name="strAlwaysShowPanelSelection" xml:space="preserve">
<data name="AlwaysShowPanelSelection" xml:space="preserve">
<value>Πάντα Εμφάνιση πίνακα διαλόγου επιλογής κατά το άνοιγμα συνδέσεων</value>
</data>
<data name="strAlwaysShowSysTrayIcon" xml:space="preserve">
<data name="AlwaysShowSysTrayIcon" xml:space="preserve">
<value>Να εμφανίζονται πάντα γνωστοποίησης περιοχων εικόνας</value>
</data>
<data name="strAskUpdatesCommandAskLater" xml:space="preserve">
<data name="AskUpdatesCommandAskLater" xml:space="preserve">
<value>Ρωτήστε με ξανά αργότερα</value>
</data>
<data name="strAskUpdatesCommandCustom" xml:space="preserve">
<data name="AskUpdatesCommandCustom" xml:space="preserve">
<value>Προσαρμογή των ρυθμίσεων τώρα</value>
</data>
<data name="strAskUpdatesCommandRecommended" xml:space="preserve">
<data name="AskUpdatesCommandRecommended" xml:space="preserve">
<value>Χρήση των προτεινόμενων ρυθμίσεων</value>
</data>
<data name="strAskUpdatesContent" xml:space="preserve">
<data name="AskUpdatesContent" xml:space="preserve">
<value>{0} μπορεί να ελέγχει αυτόματα ενημερώσεις που μπορούν να παρέχουν νέα χαρακτηριστικά και διορθώσεις σφαλμάτων. Συνιστάται να επιτρέψετε {0} να ελέγξει για ενημερώσεις σε εβδομαδιαία βάση.</value>
</data>
<data name="strAskUpdatesMainInstruction" xml:space="preserve">
<data name="AskUpdatesMainInstruction" xml:space="preserve">
<value>Ρυθμίσεις αυτόματης ενημέρωσης</value>
</data>
<data name="strAspect" xml:space="preserve">
<data name="Aspect" xml:space="preserve">
<value>Πτυχή</value>
</data>
<data name="strAutomaticallyGetSessionInfo" xml:space="preserve">
<value>Αυτόματη λήψη πληροφοριών περιόδου</value>
</data>
<data name="strAutoSaveEvery" xml:space="preserve">
<data name="AutoSaveEvery" xml:space="preserve">
<value>Αυτόματη αποθήκευση κάθε:</value>
</data>
<data name="strAutoSaveMins" xml:space="preserve">
<value>Λεπτά (0 σημαίνει απενεργοποιημένο)</value>
</data>
<data name="strAvailableVersion" xml:space="preserve">
<data name="AvailableVersion" xml:space="preserve">
<value>Τρέχουσα έκδοση</value>
</data>
<data name="strButtonBrowse" xml:space="preserve">
<data name="_Browse" xml:space="preserve">
<value>&amp;Αναζήτηση...</value>
</data>
<data name="strButtonCancel" xml:space="preserve">
<data name="_Cancel" xml:space="preserve">
<value>&amp;Ακύρωση</value>
</data>
<data name="strButtonChange" xml:space="preserve">
<data name="Change" xml:space="preserve">
<value>Αλλαγή</value>
</data>
<data name="strButtonClose" xml:space="preserve">
<data name="_Close" xml:space="preserve">
<value>&amp;Κλείσιμο</value>
</data>
<data name="strButtonDefaultInheritance" xml:space="preserve">
<data name="ButtonDefaultInheritance" xml:space="preserve">
<value>Προεπιλογή κληρονομικότητας</value>
</data>
<data name="strButtonDefaultProperties" xml:space="preserve">
<data name="ButtonDefaultProperties" xml:space="preserve">
<value>Προεπιλεγμένες ιδιότητες</value>
</data>
<data name="strButtonDisconnect" xml:space="preserve">
<data name="Disconnect" xml:space="preserve">
<value>Αποσύνδεση</value>
</data>
<data name="strButtonIcon" xml:space="preserve">
<data name="Icon" xml:space="preserve">
<value>Εικονίδιο</value>
</data>
<data name="strButtonImport" xml:space="preserve">
<data name="_Import" xml:space="preserve">
<value>&amp;Εισαγωγή</value>
</data>
<data name="strButtonInheritance" xml:space="preserve">
<data name="Inheritance" xml:space="preserve">
<value>Κληρονομιά</value>
</data>
<data name="strButtonLaunchPutty" xml:space="preserve">
<data name="ButtonLaunchPutty" xml:space="preserve">
<value>Εκκίνηση του PuTTY</value>
</data>
<data name="strButtonNew" xml:space="preserve">
<value>&amp; Νέο</value>
</data>
<data name="strButtonOK" xml:space="preserve">
<data name="_Ok" xml:space="preserve">
<value>&amp;ΟΚ</value>
</data>
<data name="strButtonProperties" xml:space="preserve">
<data name="Properties" xml:space="preserve">
<value>Ιδιότητες</value>
</data>
<data name="strButtonScan" xml:space="preserve">
<data name="_Scan" xml:space="preserve">
<value>&amp;Σάρωση</value>
</data>
<data name="strButtonStop" xml:space="preserve">
<data name="_Stop" xml:space="preserve">
<value>&amp;Διακοπή</value>
</data>
<data name="strButtonTestProxy" xml:space="preserve">
<data name="TestProxy" xml:space="preserve">
<value>Δοκιμή διακομιστή μεσολάβησης</value>
</data>
<data name="strCannotImportNormalSessionFile" xml:space="preserve">
<value>Δεν μπορείτε να εισαγάγετε ένα κανονικό αρχείο σύνδεσης.
Παρακαλούμε χρησιμοποιήστε Αρχείο - Συνδέσεις φορτίου για τα κανονικά αρχεία σύνδεσης!</value>
</data>
<data name="strCannotStartPortScan" xml:space="preserve">
<data name="CannotStartPortScan" xml:space="preserve">
<value>Δεν είναι δυνατή η εκκίνηση της σάρωσης υποδοχων, εσφαλμένη μορφή IP!</value>
</data>
<data name="strCategoryAppearance" xml:space="preserve">
<data name="Appearance" xml:space="preserve">
<value>Εμφάνιση</value>
</data>
<data name="strCategoryConnection" xml:space="preserve">
<data name="Connection" xml:space="preserve">
<value>Σύνδεση</value>
</data>
<data name="strCategoryCredentials" xml:space="preserve">
<value>Πιστοποιήσεις</value>
</data>
<data name="strCategoryDisplay" xml:space="preserve">
<data name="Display" xml:space="preserve">
<value>Οθόνη</value>
</data>
<data name="strCategoryGateway" xml:space="preserve">
<data name="Gateway" xml:space="preserve">
<value>Πύλη</value>
</data>
<data name="strCategoryGeneral" xml:space="preserve">
<value>Γενική</value>
</data>
<data name="strCategoryMiscellaneous" xml:space="preserve">
<data name="Miscellaneous" xml:space="preserve">
<value>Διάφορα</value>
</data>
<data name="strCategoryProtocol" xml:space="preserve">
<data name="Protocol" xml:space="preserve">
<value>Πρωτόκολλο</value>
</data>
<data name="strCategoryRedirect" xml:space="preserve">
<data name="Redirect" xml:space="preserve">
<value>Ανακατεύθυνση</value>
</data>
<data name="strCcAlwaysShowScreen" xml:space="preserve">
<value>Πάντα εμφάνιση αυτής της οθόνης κατά την εκκίνηση</value>
</data>
<data name="strCcCheckAgain" xml:space="preserve">
<value>Ανανέωση</value>
</data>
<data name="strCcCheckFailed" xml:space="preserve">
<data name="CheckFailed" xml:space="preserve">
<value>Ο ελέγχος απέτυχε!</value>
</data>
<data name="strCcCheckSucceeded" xml:space="preserve">
<data name="CheckSucceeded" xml:space="preserve">
<value>Ο ελεγχος πέτυχε!</value>
</data>
<data name="strCcEOLFailed" xml:space="preserve">
@@ -295,48 +255,40 @@
<data name="strCcNotInstalledProperly" xml:space="preserve">
<value>δεν έχει εγκατασταθεί σωστά</value>
</data>
<data name="strConnectInFullscreen" xml:space="preserve">
<data name="ConnectInFullscreen" xml:space="preserve">
<value>Σύνδεση σε λειτουργία πλήρους οθόνης</value>
</data>
<data name="strConnecting" xml:space="preserve">
<data name="Connecting" xml:space="preserve">
<value>Σύνδεση...</value>
</data>
<data name="strConnectionEventConnected" xml:space="preserve">
<data name="ConnectionEventConnected" xml:space="preserve">
<value>Πρωτόκολλο γεγονός που συνδέεται</value>
</data>
<data name="strConnectionEventConnectedDetail" xml:space="preserve">
<data name="ConnectionEventConnectedDetail" xml:space="preserve">
<value>Σύνδεση με "{0}" μέσω "{1}" από το χρήστη "{2}" (Περιγραφή: «{3}»? Χρήστη το πεδίο: «{4}")</value>
</data>
<data name="ConnectionFailed" xml:space="preserve">
<value>Η συνδεση απέτυχε!</value>
</data>
<data name="strConnectionEventErrorOccured" xml:space="preserve">
<data name="ConnectionEventErrorOccured" xml:space="preserve">
<value>Πρωτόκολλο ErrorOccured εκδήλωση</value>
</data>
<data name="strConnectionOpenFailed" xml:space="preserve">
<data name="ConnectionOpenFailed" xml:space="preserve">
<value>Άνοιγμα σύνδεσης απέτυχε!</value>
</data>
<data name="strConnectionOpenFailedNoHostname" xml:space="preserve">
<data name="ConnectionOpenFailedNoHostname" xml:space="preserve">
<value>Δεν μπορεί να ανοίχθει η σύνδεση: Το όνομα του κεντρικού υπολογιστή δεν ειναι καθορισμένο!</value>
</data>
<data name="strConnectionRdpErrorDetail" xml:space="preserve">
<value>RDP λάθος!
Κωδικός σφάλματος: {0}
Περιγραφή σφάλματος: {1}</value>
</data>
<data name="strConnections" xml:space="preserve">
<data name="Connections" xml:space="preserve">
<value>Συνδέσεις</value>
</data>
<data name="strConnectionSetDefaultPortFailed" xml:space="preserve">
<data name="ConnectionSetDefaultPortFailed" xml:space="preserve">
<value>Αδυναμία ορισμού προεπιλεγμένης θύρας!</value>
</data>
<data name="strConnectionsFileBackupFailed" xml:space="preserve">
<data name="ConnectionsFileBackupFailed" xml:space="preserve">
<value>Δεν ήταν δυνατή η δημιουργία αντιγράφων ασφαλείας των συνδέσεων αρχείου!</value>
</data>
<data name="strConnectionsFileCouldNotBeImported" xml:space="preserve">
<value>Δεν ήταν δυνατή η εισαγωγή συνδέσεων αρχείου!</value>
</data>
<data name="strConnectionsFileCouldNotBeLoaded" xml:space="preserve">
<data name="ConnectionsFileCouldNotBeLoaded" xml:space="preserve">
<value>Το αρχείο συνδέσεων "{0}" δεν μπορεί να φορτωθεί!</value>
</data>
</root>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
<!--
Microsoft ResX Schema
Version 2.0
@@ -59,287 +59,83 @@
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="PlaceSearchBarAboveConnectionTree" xml:space="preserve">
<value>Place search bar above connection tree</value>
</data>
<data name="strPropertyDescriptionColors" xml:space="preserve">
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="PropertyDescriptionColors" xml:space="preserve">
<value>Select the color quality to be used.</value>
</data>
<data name="strPropertyNameColors" xml:space="preserve">
<data name="Colors" xml:space="preserve">
<value>Colors</value>
</data>
<data name="strRDP16777216Colors" xml:space="preserve">
<data name="Rdp16777216Colors" xml:space="preserve">
<value>16777216 Colors (24-bit)</value>
</data>
<data name="strRDP256Colors" xml:space="preserve">
<data name="Rdp256Colors" xml:space="preserve">
<value>256 Colors (8-bit)</value>
</data>
<data name="strRDP32768Colors" xml:space="preserve">
<data name="Rdp32768Colors" xml:space="preserve">
<value>32768 Colors (15-bit)</value>
</data>
<data name="strRDP4294967296Colors" xml:space="preserve">
<data name="Rdp4294967296Colors" xml:space="preserve">
<value>16777216 Colors (32-bit)</value>
</data>
<data name="strRDP65536Colors" xml:space="preserve">
<data name="Rdp65536Colors" xml:space="preserve">
<value>65536 Colors (16-bit)</value>
</data>
<data name="strThemeDescriptionConfigPanelBackgroundColor" xml:space="preserve">
<value>The background color of the config panel.</value>
</data>
<data name="strThemeDescriptionConfigPanelCategoryTextColor" xml:space="preserve">
<value>The color of the category text in the config panel.</value>
</data>
<data name="strThemeDescriptionConfigPanelGridLineColor" xml:space="preserve">
<value>The color of the grid lines in the config panel</value>
</data>
<data name="strThemeDescriptionConfigPanelHelpBackgroundColor" xml:space="preserve">
<value>The background color of the help area of the config panel.</value>
</data>
<data name="strThemeDescriptionConfigPanelHelpTextColor" xml:space="preserve">
<value>The color of the text in the help area of the config panel.</value>
</data>
<data name="strThemeDescriptionConfigPanelTextColor" xml:space="preserve">
<value>The color of the text in the config panel.</value>
</data>
<data name="strThemeDescriptionConnectionsPanelBackgroundColor" xml:space="preserve">
<value>The background color of the connections panel.</value>
</data>
<data name="strThemeDescriptionConnectionsPanelTextColor" xml:space="preserve">
<value>The color of the text in the connections panel.</value>
</data>
<data name="strThemeDescriptionConnectionsPanelTreeLineColor" xml:space="preserve">
<value>The color of the tree lines in the connections panel.</value>
</data>
<data name="strThemeDescriptionMenuBackgroundColor" xml:space="preserve">
<value>The background color of the menus.</value>
</data>
<data name="strThemeDescriptionMenuTextColor" xml:space="preserve">
<value>The color of the text in the menus.</value>
</data>
<data name="strThemeDescriptionSearchBoxBackgroundColor" xml:space="preserve">
<value>The background color of the search box.</value>
</data>
<data name="strThemeDescriptionSearchBoxTextColor" xml:space="preserve">
<value>The color of the text in the search box.</value>
</data>
<data name="strThemeDescriptionSearchBoxTextPromptColor" xml:space="preserve">
<value>The color of the prompt text in the search box.</value>
</data>
<data name="strThemeDescriptionToolbarBackgroundColor" xml:space="preserve">
<value>The background color of the toolbars.</value>
</data>
<data name="strThemeDescriptionToolbarTextColor" xml:space="preserve">
<value>The color of the text in the toolbars.</value>
</data>
<data name="strThemeDescriptionWindowBackgroundColor" xml:space="preserve">
<value>The background color of the main window.</value>
</data>
<data name="strThemeNameConfigPanelBackgroundColor" xml:space="preserve">
<value>Config Panel Background Color</value>
</data>
<data name="strThemeNameConfigPanelCategoryTextColor" xml:space="preserve">
<value>Config Panel Category Text Color</value>
</data>
<data name="strThemeNameConfigPanelGridLineColor" xml:space="preserve">
<value>Config Panel Grid Line Color</value>
</data>
<data name="strThemeNameConfigPanelHelpBackgroundColor" xml:space="preserve">
<value>Config Panel Help Background Color</value>
</data>
<data name="strThemeNameConfigPanelHelpTextColor" xml:space="preserve">
<value>Config Panel Help Text Color</value>
</data>
<data name="strThemeNameConfigPanelTextColor" xml:space="preserve">
<value>Config Panel Text Color</value>
</data>
<data name="strThemeNameConnectionsPanelBackgroundColor" xml:space="preserve">
<value>Connections Panel Background Color</value>
</data>
<data name="strThemeNameConnectionsPanelTextColor" xml:space="preserve">
<value>Connections Panel Text Color</value>
</data>
<data name="strThemeNameConnectionsPanelTreeLineColor" xml:space="preserve">
<value>Connections Panel Tree Line Color</value>
</data>
<data name="strThemeNameMenuBackgroundColor" xml:space="preserve">
<value>Menu Background Color</value>
</data>
<data name="strThemeNameMenuTextColor" xml:space="preserve">
<value>Menu Text Color</value>
</data>
<data name="strThemeNameSearchBoxBackgroundColor" xml:space="preserve">
<value>Search Box Background Color</value>
</data>
<data name="strThemeNameSearchBoxTextColor" xml:space="preserve">
<value>Search Box Text Color</value>
</data>
<data name="strThemeNameSearchBoxTextPromptColor" xml:space="preserve">
<value>Search Box Text Prompt Color</value>
</data>
<data name="strThemeNameToolbarBackgroundColor" xml:space="preserve">
<value>Toolbar Background Color</value>
</data>
<data name="strThemeNameToolbarTextColor" xml:space="preserve">
<value>Toolbar Text Color</value>
</data>
<data name="strThemeNameWindowBackgroundColor" xml:space="preserve">
<value>Window Background Color</value>
</data>
<data name="strActiveDirectory" xml:space="preserve">
<value>Active Directory</value>
</data>
<data name="strErrorFipsPolicyIncompatible" xml:space="preserve">
<value>The Windows security setting, "System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing", is enabled.
See the Microsoft Support article at http://support.microsoft.com/kb/811833 for more information.
{0} is not fully FIPS compliant. Click OK to proceed at your own discretion, or Cancel to Exit.</value>
</data>
<data name="strHttpGecko" xml:space="preserve">
<value>Gecko (Firefox)</value>
</data>
<data name="strHttpInternetExplorer" xml:space="preserve">
<value>Internet Explorer</value>
</data>
<data name="strImportLocationCommandButtons" xml:space="preserve">
<value>Under the root{0}{1}|Under the selected folder{0}{2}</value>
</data>
<data name="strNoInformation" xml:space="preserve">
<value>None</value>
</data>
<data name="strNone" xml:space="preserve">
<value>None</value>
</data>
<data name="strPropertyDescriptionRedirectClipboard" xml:space="preserve">
<value>Select whether clipboard should be shared.</value>
</data>
<data name="strPropertyNameRedirectClipboard" xml:space="preserve">
<value>Clipboard</value>
</data>
<data name="strOptionsThemeChangeWarning" xml:space="preserve">
<value>Warning: Restart is required to commit any theme configuration change.</value>
</data>
<data name="strIPRange" xml:space="preserve">
<value>Must Be Between 0 and 255</value>
</data>
<data name="strOutOfRange" xml:space="preserve">
<value>Out Of Range</value>
</data>
<data name="strDelete" xml:space="preserve">
<value>Delete...</value>
</data>
<data name="strReconnectAllConnections" xml:space="preserve">
<value>Reconnect All Connections</value>
</data>
<data name="strUltraVNCSingleClick" xml:space="preserve">
<value>UltraVNC SingleClick</value>
</data>
<data name="strMenuDisconnectOthers" xml:space="preserve">
<value>Disconnect All But This</value>
</data>
<data name="AutomaticReconnectError" xml:space="preserve">
<value>An error occurred while trying to reconnect to RDP host '{0}'</value>
</data>
<data name="ChangeConnectionResolutionError" xml:space="preserve">
<value>An error occurred while trying to change the connection resolution to host '{0}'</value>
</data>
<data name="StackTrace" xml:space="preserve">
<value>Stack trace</value>
</data>
<data name="ExceptionMessage" xml:space="preserve">
<value>Exception Message</value>
</data>
<data name="mRemoteNGUnhandledException" xml:space="preserve">
<value>mRemoteNG Unhandled Exception</value>
</data>
<data name="UnhandledExceptionOccured" xml:space="preserve">
<value>An unhandled exception has occurred</value>
</data>
<data name="ExceptionForcesmRemoteNGToClose" xml:space="preserve">
<value>This exception will force mRemoteNG to close</value>
</data>
<data name="strMenuCopyHostname" xml:space="preserve">
<value>Copy Hostname</value>
</data>
<data name="strPortScanSinglePort" xml:space="preserve">
<value>To scan a single port, select the "First Port" only.</value>
</data>
<data name="strTrackActiveConnectionInConnectionTree" xml:space="preserve">
<value>Track active connection in the connection tree</value>
</data>
<data name="strAlwaysShowConnectionTabs" xml:space="preserve">
<value>Always show connection tabs</value>
</data>
<data name="strReleaseChannel" xml:space="preserve">
<value>Release Channel</value>
</data>
<data name="strReleaseChannelExplanation" xml:space="preserve">
<value>Stable channel includes final releases only.
Beta channel includes Betas &amp; Release Candidates.
Development Channel includes Alphas, Betas &amp; Release Candidates.</value>
</data>
<data name="strButtonApply" xml:space="preserve">
<value>Apply</value>
</data>
<data name="strCategoryProxy" xml:space="preserve">
<value>Proxy</value>
</data>
</root>

View File

@@ -117,269 +117,224 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="strActive" xml:space="preserve">
<value>Activo</value>
</data>
<data name="strActivity" xml:space="preserve">
<value>Actividad</value>
</data>
<data name="strButtonDefaultProperties" xml:space="preserve">
<data name="ButtonDefaultProperties" xml:space="preserve">
<value>Propiedades por defecto</value>
</data>
<data name="strButtonDisconnect" xml:space="preserve">
<data name="Disconnect" xml:space="preserve">
<value>Desconectar</value>
</data>
<data name="strButtonIcon" xml:space="preserve">
<data name="Icon" xml:space="preserve">
<value>Icono</value>
</data>
<data name="strButtonLaunchPutty" xml:space="preserve">
<data name="ButtonLaunchPutty" xml:space="preserve">
<value>Ejecutar PuTTY</value>
</data>
<data name="strButtonOK" xml:space="preserve">
<data name="_Ok" xml:space="preserve">
<value>&amp; OK</value>
</data>
<data name="strButtonProperties" xml:space="preserve">
<data name="Properties" xml:space="preserve">
<value>Propiedades</value>
</data>
<data name="strButtonScan" xml:space="preserve">
<data name="_Scan" xml:space="preserve">
<value>&amp; Scanear</value>
</data>
<data name="strButtonStop" xml:space="preserve">
<data name="_Stop" xml:space="preserve">
<value>&amp; Parar</value>
</data>
<data name="strButtonTestProxy" xml:space="preserve">
<data name="TestProxy" xml:space="preserve">
<value>Probar Proxy</value>
</data>
<data name="strCategoryCredentials" xml:space="preserve">
<value>Credenciales</value>
</data>
<data name="strCategoryMiscellaneous" xml:space="preserve">
<data name="Miscellaneous" xml:space="preserve">
<value>Varios</value>
</data>
<data name="strCcAlwaysShowScreen" xml:space="preserve">
<value>Siempre mostrar esta pantalla al inicio</value>
</data>
<data name="strCcNotInstalledProperly" xml:space="preserve">
<data name="CcNotInstalledProperly" xml:space="preserve">
<value>no está correctamente instalado</value>
</data>
<data name="strCcPuttyOK" xml:space="preserve">
<data name="CcPuttyOK" xml:space="preserve">
<value>El ejecutable de PuTTY se encontró y debería estar listo para usarse.</value>
</data>
<data name="strCcRDPOK" xml:space="preserve">
<data name="CcRDPOK" xml:space="preserve">
<value>Todos los componentes RDP se encontraron y parecen estar registrados correctamente. Versión de escritorio remoto {0}</value>
</data>
<data name="strCcVNCOK" xml:space="preserve">
<data name="CcVNCOK" xml:space="preserve">
<value>Todos los componentes de VNC se encontraron y parecen estar registrados correctamente.
VncSharp Control {0}</value>
</data>
<data name="strCheckboxAutomaticReconnect" xml:space="preserve">
<data name="CheckboxAutomaticReconnect" xml:space="preserve">
<value>Intentar reconectar automáticamente cuando se desconecte (solo para RDP &amp;&amp; ICA)</value>
</data>
<data name="strCheckboxDomain" xml:space="preserve">
<value>Dominio</value>
</data>
<data name="strCheckboxDoNotShowThisMessageAgain" xml:space="preserve">
<data name="CheckboxDoNotShowThisMessageAgain" xml:space="preserve">
<value>No mostrar este mensaje de nuevo.</value>
</data>
<data name="strCheckboxInheritance" xml:space="preserve">
<value>Herencia</value>
</data>
<data name="strCheckboxPassword" xml:space="preserve">
<value>Contraseña</value>
</data>
<data name="strCheckboxProxyAuthentication" xml:space="preserve">
<data name="CheckboxProxyAuthentication" xml:space="preserve">
<value>Este servidor proxy requiere autenticación</value>
</data>
<data name="strCheckboxPuttyPath" xml:space="preserve">
<data name="CheckboxPuttyPath" xml:space="preserve">
<value>Usar ruta de Putty personalizada:</value>
</data>
<data name="strCheckboxReconnectWhenReady" xml:space="preserve">
<data name="CheckboxReconnectWhenReady" xml:space="preserve">
<value>Vuelva a conectarse cuando esté listo</value>
</data>
<data name="strCheckboxUpdateUseProxy" xml:space="preserve">
<data name="CheckboxUpdateUseProxy" xml:space="preserve">
<value>Usar un servidor proxy para conectarse</value>
</data>
<data name="strCheckboxUsername" xml:space="preserve">
<data name="Username" xml:space="preserve">
<value>Usuario</value>
</data>
<data name="strCheckboxWaitForExit" xml:space="preserve">
<data name="WaitForExit" xml:space="preserve">
<value>Esperar a Salir</value>
</data>
<data name="strCheckForUpdate" xml:space="preserve">
<data name="CheckAgain" xml:space="preserve">
<value>Pruebe nuevamente</value>
</data>
<data name="strCheckForUpdatesOnStartup" xml:space="preserve">
<data name="CheckForUpdatesOnStartup" xml:space="preserve">
<value>Comprobar las actualizaciones y anuncios en el inicio</value>
</data>
<data name="strCheckNow" xml:space="preserve">
<data name="CheckNow" xml:space="preserve">
<value>Compruebe ahora</value>
</data>
<data name="strCheckProperInstallationOfComponentsAtStartup" xml:space="preserve">
<data name="CheckProperInstallationOfComponentsAtStartup" xml:space="preserve">
<value>Verifique la correcta instalación de los componentes en el inicio</value>
</data>
<data name="strChoosePanelBeforeConnecting" xml:space="preserve">
<data name="ChoosePanelBeforeConnecting" xml:space="preserve">
<value>Elija el panel antes de conectarse</value>
</data>
<data name="strClosedPorts" xml:space="preserve">
<data name="ClosedPorts" xml:space="preserve">
<value>Puertos Cerrados</value>
</data>
<data name="strCollapseAllFolders" xml:space="preserve">
<data name="CollapseAllFolders" xml:space="preserve">
<value>Contraer todas las carpetas</value>
</data>
<data name="strComponentsCheck" xml:space="preserve">
<data name="ComponentsCheck" xml:space="preserve">
<value>Comprobación de componentes</value>
</data>
<data name="strConfigPropertyGridButtonIconClickFailed" xml:space="preserve">
<data name="ConfigPropertyGridButtonIconClickFailed" xml:space="preserve">
<value>btnIcon_Click falló!</value>
</data>
<data name="strConfirmCloseConnectionMainInstruction" xml:space="preserve">
<value>¿Desea cerrar la conexión:
"{0}"?</value>
</data>
<data name="strConfirmCloseConnectionPanelMainInstruction" xml:space="preserve">
<data name="ConfirmCloseConnectionPanelMainInstruction" xml:space="preserve">
<value>¿Está seguro que desea cerrar el panel, "{0}"? Cualquier conexión que contenga el panel también estará cerrada.</value>
</data>
<data name="strConfirmDeleteNodeFolder" xml:space="preserve">
<data name="ConfirmDeleteNodeFolder" xml:space="preserve">
<value>¿Está seguro que desea eliminar la carpeta vacía, "{0}"?</value>
</data>
<data name="strConfirmDeleteNodeFolderNotEmpty" xml:space="preserve">
<data name="ConfirmDeleteNodeFolderNotEmpty" xml:space="preserve">
<value>¿Está seguro que desea eliminar la carpeta "{0}"? También se eliminará cualquier carpetas o conexiones que contiene.</value>
</data>
<data name="strConfirmExitMainInstruction" xml:space="preserve">
<data name="ConfirmExitMainInstruction" xml:space="preserve">
<value>¿Desea cerrar todas las conexiones abiertas?</value>
</data>
<data name="strConfirmResetLayout" xml:space="preserve">
<data name="ConfirmResetLayout" xml:space="preserve">
<value>¿Estás seguro que deseas restablecer los paneles a su diseño predeterminado?</value>
</data>
<data name="strConnect" xml:space="preserve">
<data name="Connect" xml:space="preserve">
<value>Conectar</value>
</data>
<data name="strConnecting" xml:space="preserve">
<data name="Connecting" xml:space="preserve">
<value>Conectando...</value>
</data>
<data name="strConnectionEventConnected" xml:space="preserve">
<data name="ConnectionEventConnected" xml:space="preserve">
<value>Evento de protocolo conectado</value>
</data>
<data name="ConnectionFailed" xml:space="preserve">
<value>¡Error de conexión!</value>
</data>
<data name="strConnectionOpenFailed" xml:space="preserve">
<data name="ConnectionOpenFailed" xml:space="preserve">
<value>No se pudo abrir la conexión!</value>
</data>
<data name="strConnectionOpenFailedNoHostname" xml:space="preserve">
<data name="ConnectionOpenFailedNoHostname" xml:space="preserve">
<value>No se puede abrir la conexión: ningún nombre de host especificado!</value>
</data>
<data name="strConnectionRdpErrorDetail" xml:space="preserve">
<value>Error de RDP.
Código de Error: {0}
Descripción del Error: {1}</value>
</data>
<data name="strConnections" xml:space="preserve">
<data name="Connections" xml:space="preserve">
<value>Conexiones</value>
</data>
<data name="strConnectionSetDefaultPortFailed" xml:space="preserve">
<data name="ConnectionSetDefaultPortFailed" xml:space="preserve">
<value>No se ha podido establecer el puerto predeterminado!</value>
</data>
<data name="strConnectionsFileBackupFailed" xml:space="preserve">
<data name="ConnectionsFileBackupFailed" xml:space="preserve">
<value>No se pudo crear copia de seguridad del archivo de conexiones!</value>
</data>
<data name="strConnectionsFileCouldNotBeImported" xml:space="preserve">
<value>No se pudo importar archivo de conexiones!</value>
</data>
<data name="strConnectionsFileCouldNotBeLoaded" xml:space="preserve">
<data name="ConnectionsFileCouldNotBeLoaded" xml:space="preserve">
<value>No se pudo cargar el archivo de conexiones "{0}"!</value>
</data>
<data name="strConnectionsFileCouldNotBeSaved" xml:space="preserve">
<value>No se pudo guardar el archivo de conexiones!</value>
</data>
<data name="strConnectionsFileCouldNotSaveAs" xml:space="preserve">
<data name="ConnectionsFileCouldNotSaveAs" xml:space="preserve">
<value>No se pudo guardar archivo de conexiones como "{0}"!</value>
</data>
<data name="strConnectToConsoleSession" xml:space="preserve">
<data name="ConnectToConsoleSession" xml:space="preserve">
<value>Conectar con la sesión de consola</value>
</data>
<data name="strConnectWithOptions" xml:space="preserve">
<data name="ConnectWithOptions" xml:space="preserve">
<value>Conectar (con opciones)</value>
</data>
<data name="strConnenctionClosedByUser" xml:space="preserve">
<data name="ConnenctionClosedByUser" xml:space="preserve">
<value>Conexión a {0} {1} vía cerrada por usuario {2}.</value>
</data>
<data name="strConnenctionClosedByUserDetail" xml:space="preserve">
<value>Conexión a {0} {1} vía cerrada por usuario {2}. (Descripción: "{3}"; Campo de usuario: "{4}")</value>
</data>
<data name="strConnenctionCloseEvent" xml:space="preserve">
<data name="ConnenctionCloseEvent" xml:space="preserve">
<value>Evento de conexión cerrada</value>
</data>
<data name="strConnenctionCloseEventFailed" xml:space="preserve">
<data name="ConnenctionCloseEventFailed" xml:space="preserve">
<value>Evento de cerrar conexión falló!</value>
</data>
<data name="strCouldNotCreateNewConnectionsFile" xml:space="preserve">
<data name="CouldNotCreateNewConnectionsFile" xml:space="preserve">
<value>No se pudo crear el nuevo archivo de conexiones!</value>
</data>
<data name="strCurrentVersion" xml:space="preserve">
<data name="InstalledVersion" xml:space="preserve">
<value>Versión instalada</value>
</data>
<data name="strDetect" xml:space="preserve">
<data name="Detect" xml:space="preserve">
<value>Detectar</value>
</data>
<data name="strDontConnectWhenAuthFails" xml:space="preserve">
<data name="DontConnectWhenAuthFails" xml:space="preserve">
<value>No conectar si falla la autenticación</value>
</data>
<data name="strDownloadAndInstall" xml:space="preserve">
<data name="DownloadAndInstall" xml:space="preserve">
<value>Descargar e instalar</value>
</data>
<data name="strDuplicate" xml:space="preserve">
<data name="Duplicate" xml:space="preserve">
<value>Duplicar</value>
</data>
<data name="strEmptyPasswordContinue" xml:space="preserve">
<data name="EmptyPasswordContinue" xml:space="preserve">
<value>¿Desea continuar sin contraseña?</value>
</data>
<data name="strEmptyUsernamePasswordDomainFields" xml:space="preserve">
<data name="EmptyUsernamePasswordDomainFields" xml:space="preserve">
<value>Si desea Nombre de usuario, password o dominio vacio use:</value>
</data>
<data name="strEnc128Bit" xml:space="preserve">
<data name="Enc128Bit" xml:space="preserve">
<value>128-bit</value>
</data>
<data name="strEnc128BitLogonOnly" xml:space="preserve">
<data name="Enc128BitLogonOnly" xml:space="preserve">
<value>128-bit (iniciar sesión)</value>
</data>
<data name="strEncBasic" xml:space="preserve">
<data name="Basic" xml:space="preserve">
<value>Básica</value>
</data>
<data name="strEncryptCompleteConnectionFile" xml:space="preserve">
<data name="EncryptCompleteConnectionFile" xml:space="preserve">
<value>Encriptar completamente el archivo de conexiones</value>
</data>
<data name="strEndIP" xml:space="preserve">
<data name="LastIp" xml:space="preserve">
<value>Último IP</value>
</data>
<data name="strEndPort" xml:space="preserve">
<data name="LastPort" xml:space="preserve">
<value>Último puerto</value>
</data>
<data name="strErrorAddExternalToolsToToolBarFailed" xml:space="preserve">
<data name="ErrorAddExternalToolsToToolBarFailed" xml:space="preserve">
<value>BarraAgregarHerramientasExternas (frmMain) falló. {0}</value>
</data>
<data name="strErrorBadDatabaseVersion" xml:space="preserve">
<data name="ErrorBadDatabaseVersion" xml:space="preserve">
<value>La versión de la base de datos {0} no es compatible con esta versión de {1}.</value>
</data>
<data name="strErrorCloneNodeFailed" xml:space="preserve">
<value>ClonarModulo (Tree.Node) falló. {0}</value>
</data>
<data name="strErrorCode" xml:space="preserve">
<value>Código de Error {0}.</value>
</data>
<data name="strErrorConnectionListSaveFailed" xml:space="preserve">
<data name="ErrorConnectionListSaveFailed" xml:space="preserve">
<value>La lista de conexiones no pudo ser guardada.</value>
</data>
<data name="strErrorDecryptionFailed" xml:space="preserve">
<data name="ErrorDecryptionFailed" xml:space="preserve">
<value>La decriptación falló. {0}</value>
</data>
<data name="strErrorEncryptionFailed" xml:space="preserve">
<data name="ErrorEncryptionFailed" xml:space="preserve">
<value>La encriptación falló. {0}</value>
</data>
<data name="strErrors" xml:space="preserve">
<data name="Errors" xml:space="preserve">
<value>Errores</value>
</data>
<data name="strErrorVerifyDatabaseVersionFailed" xml:space="preserve">
<data name="ErrorVerifyDatabaseVersionFailed" xml:space="preserve">
<value>VerificarVersionBasedeDatos (Config.Connections.Save) falló. {0}</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -117,322 +117,235 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="strAbout" xml:space="preserve">
<data name="About" xml:space="preserve">
<value>Névjegy</value>
</data>
<data name="strActive" xml:space="preserve">
<value>Aktív</value>
</data>
<data name="strActivity" xml:space="preserve">
<value>Tevékenység</value>
</data>
<data name="strAddConnection" xml:space="preserve">
<value>Új kapcsolat</value>
</data>
<data name="strAddFolder" xml:space="preserve">
<value>Új mappa</value>
</data>
<data name="strAlways" xml:space="preserve">
<data name="Always" xml:space="preserve">
<value>Mindig</value>
</data>
<data name="strAlwaysConnectEvenIfAuthFails" xml:space="preserve">
<data name="AlwaysConnectEvenIfAuthFails" xml:space="preserve">
<value>Kapcsolódj mindig, sikertelen hitelesítés esetén is</value>
</data>
<data name="strAskUpdatesCommandAskLater" xml:space="preserve">
<data name="AskUpdatesCommandAskLater" xml:space="preserve">
<value>Kérdezz rá később</value>
</data>
<data name="strAskUpdatesCommandRecommended" xml:space="preserve">
<data name="AskUpdatesCommandRecommended" xml:space="preserve">
<value>Javasolt beállítások használata</value>
</data>
<data name="strAskUpdatesMainInstruction" xml:space="preserve">
<data name="AskUpdatesMainInstruction" xml:space="preserve">
<value>Automatikus frissítés beállításai</value>
</data>
<data name="strAutomaticallyGetSessionInfo" xml:space="preserve">
<value>Munkamenet információk automatikus megszerzése</value>
</data>
<data name="strAutoSaveEvery" xml:space="preserve">
<data name="AutoSaveEvery" xml:space="preserve">
<value>Automatikus mentés minden:</value>
</data>
<data name="strAutoSaveMins" xml:space="preserve">
<value>Perc (0 - kikapcsolva)</value>
</data>
<data name="strAvailableVersion" xml:space="preserve">
<data name="AvailableVersion" xml:space="preserve">
<value>Aktuális verzió</value>
</data>
<data name="strButtonBrowse" xml:space="preserve">
<data name="_Browse" xml:space="preserve">
<value>&amp;Böngészés...</value>
</data>
<data name="strButtonCancel" xml:space="preserve">
<data name="_Cancel" xml:space="preserve">
<value>&amp;Mégsem</value>
</data>
<data name="strButtonChange" xml:space="preserve">
<data name="Change" xml:space="preserve">
<value>Módosít</value>
</data>
<data name="strButtonClose" xml:space="preserve">
<data name="_Close" xml:space="preserve">
<value>Be&amp;zár</value>
</data>
<data name="strButtonDisconnect" xml:space="preserve">
<data name="Disconnect" xml:space="preserve">
<value>Kapcsolat bontása</value>
</data>
<data name="strButtonIcon" xml:space="preserve">
<data name="Icon" xml:space="preserve">
<value>Ikon</value>
</data>
<data name="strButtonImport" xml:space="preserve">
<data name="_Import" xml:space="preserve">
<value>&amp;Improtálás</value>
</data>
<data name="strButtonLaunchPutty" xml:space="preserve">
<data name="ButtonLaunchPutty" xml:space="preserve">
<value>PuTTY indítása</value>
</data>
<data name="strButtonNew" xml:space="preserve">
<value>&amp;Új</value>
</data>
<data name="strButtonOK" xml:space="preserve">
<data name="_Ok" xml:space="preserve">
<value>&amp;OK</value>
</data>
<data name="strButtonProperties" xml:space="preserve">
<data name="Properties" xml:space="preserve">
<value>Tulajdonságok</value>
</data>
<data name="strCannotStartPortScan" xml:space="preserve">
<data name="CannotStartPortScan" xml:space="preserve">
<value>Helytelen IP cím, a port szkennelés nem indítható!</value>
</data>
<data name="strCategoryAppearance" xml:space="preserve">
<data name="Appearance" xml:space="preserve">
<value>Megjelenés</value>
</data>
<data name="strCategoryConnection" xml:space="preserve">
<data name="Connection" xml:space="preserve">
<value>Kapcsolat</value>
</data>
<data name="strCategoryCredentials" xml:space="preserve">
<value>Hitelesítés</value>
</data>
<data name="strCategoryDisplay" xml:space="preserve">
<data name="Display" xml:space="preserve">
<value>Képernyő</value>
</data>
<data name="strCategoryGateway" xml:space="preserve">
<data name="Gateway" xml:space="preserve">
<value>Átjáró</value>
</data>
<data name="strCategoryGeneral" xml:space="preserve">
<value>Általános</value>
</data>
<data name="strCategoryMiscellaneous" xml:space="preserve">
<data name="Miscellaneous" xml:space="preserve">
<value>Egyéb</value>
</data>
<data name="strCategoryProtocol" xml:space="preserve">
<data name="Protocol" xml:space="preserve">
<value>Protokoll</value>
</data>
<data name="strCategoryRedirect" xml:space="preserve">
<data name="Redirect" xml:space="preserve">
<value>Átirányítás</value>
</data>
<data name="strCcCheckFailed" xml:space="preserve">
<data name="CheckFailed" xml:space="preserve">
<value>Az ellenőrzés sikertelen!</value>
</data>
<data name="strCcCheckSucceeded" xml:space="preserve">
<data name="CheckSucceeded" xml:space="preserve">
<value>Az ellenőrzés sikeres!</value>
</data>
<data name="strCheckboxDomain" xml:space="preserve">
<value>Tartomány</value>
</data>
<data name="strCheckboxDoNotShowThisMessageAgain" xml:space="preserve">
<data name="CheckboxDoNotShowThisMessageAgain" xml:space="preserve">
<value>Többé ne mutasd ezt az üzenetet.</value>
</data>
<data name="strColumnFilename" xml:space="preserve">
<data name="Filename" xml:space="preserve">
<value>Fájlnév</value>
</data>
<data name="strColumnHostnameIP" xml:space="preserve">
<value>Kiszolgálónév/IP cím</value>
</data>
<data name="strColumnMessage" xml:space="preserve">
<data name="Message" xml:space="preserve">
<value>Üzenet</value>
</data>
<data name="strColumnUsername" xml:space="preserve">
<value>Felhasználónév</value>
</data>
<data name="strCommandLineArgsCouldNotBeParsed" xml:space="preserve">
<data name="CommandLineArgsCouldNotBeParsed" xml:space="preserve">
<value>Nem értelmezhető parancssori argumentum!</value>
</data>
<data name="strConnecting" xml:space="preserve">
<data name="Connecting" xml:space="preserve">
<value>Kapcsolódás...</value>
</data>
<data name="ConnectionFailed" xml:space="preserve">
<value>Sikertelen kapcsolódás!</value>
</data>
<data name="strConnections" xml:space="preserve">
<data name="Connections" xml:space="preserve">
<value>Kapcsolatok</value>
</data>
<data name="strCurrentVersion" xml:space="preserve">
<data name="InstalledVersion" xml:space="preserve">
<value>Telepített verzió</value>
</data>
<data name="strDontConnectWhenAuthFails" xml:space="preserve">
<data name="DontConnectWhenAuthFails" xml:space="preserve">
<value>Ne kapcsolódj sikertelen hitelesítéskor</value>
</data>
<data name="strDoubleClickTabClosesIt" xml:space="preserve">
<data name="DoubleClickTabClosesIt" xml:space="preserve">
<value>Duplaklikk a fülön bezárja azt</value>
</data>
<data name="strExperimental" xml:space="preserve">
<data name="Experimental" xml:space="preserve">
<value>Kísérleti</value>
</data>
<data name="strFullscreen" xml:space="preserve">
<data name="Fullscreen" xml:space="preserve">
<value>Teljes képernyő</value>
</data>
<data name="strGeneral" xml:space="preserve">
<data name="General" xml:space="preserve">
<value>Általános</value>
</data>
<data name="strGroupboxFiles" xml:space="preserve">
<data name="Files" xml:space="preserve">
<value>Fájlok</value>
</data>
<data name="strHttpConnectFailed" xml:space="preserve">
<data name="HttpConnectFailed" xml:space="preserve">
<value>A HTTP csatlakozás nem sikerült!</value>
</data>
<data name="strImportExport" xml:space="preserve">
<value>Importálás/Exportálás</value>
</data>
<data name="strKeysCtrlAltDel" xml:space="preserve">
<value>CTRL-ALT-DEL</value>
</data>
<data name="strKeysCtrlEsc" xml:space="preserve">
<value>CONTROL-ESC</value>
</data>
<data name="strLabelAddress" xml:space="preserve">
<data name="Address" xml:space="preserve">
<value>Cím:</value>
</data>
<data name="strLabelDisplayName" xml:space="preserve">
<data name="DisplayName" xml:space="preserve">
<value>Megjelenítendő név</value>
</data>
<data name="strLabelDomain" xml:space="preserve">
<value>Tartomány:</value>
<data name="Domain" xml:space="preserve">
<value>Tartomány</value>
</data>
<data name="strLabelFilename" xml:space="preserve">
<value>Fájlnév:</value>
</data>
<data name="strLabelHostname" xml:space="preserve">
<data name="Hostname" xml:space="preserve">
<value>Hosztnév:</value>
</data>
<data name="strLabelOptions" xml:space="preserve">
<value>Opciók:</value>
</data>
<data name="strLabelPassword" xml:space="preserve">
<value>Jelszó:</value>
</data>
<data name="strLabelPort" xml:space="preserve">
<value>Port:</value>
</data>
<data name="strLabelPortableEdition" xml:space="preserve">
<data name="PortableEdition" xml:space="preserve">
<value>Hordozható kiadás</value>
</data>
<data name="strLabelProtocol" xml:space="preserve">
<value>Protokoll:</value>
</data>
<data name="strLabelServerStatus" xml:space="preserve">
<data name="ServerStatus" xml:space="preserve">
<value>Szerver állapot:</value>
</data>
<data name="strLabelSQLDatabaseName" xml:space="preserve">
<data name="Database" xml:space="preserve">
<value>Adatbázis:</value>
</data>
<data name="strLabelSQLServerDatabaseName" xml:space="preserve">
<value>Adatbázis:</value>
</data>
<data name="strLabelUsername" xml:space="preserve">
<value>Felhasználónév:</value>
</data>
<data name="strLabelVerify" xml:space="preserve">
<data name="Verify" xml:space="preserve">
<value>Ellenőrzés:</value>
</data>
<data name="strLanguage" xml:space="preserve">
<data name="LanguageString" xml:space="preserve">
<value>Nyelv</value>
</data>
<data name="strLanguageDefault" xml:space="preserve">
<data name="LanguageDefault" xml:space="preserve">
<value>(Automatikus észlelés)</value>
</data>
<data name="strMenuAbout" xml:space="preserve">
<value>Névjegy</value>
</data>
<data name="strMenuCheckForUpdates" xml:space="preserve">
<data name="CheckForUpdates" xml:space="preserve">
<value>Frissítés keresése</value>
</data>
<data name="strMenuJumpTo" xml:space="preserve">
<data name="JumpTo" xml:space="preserve">
<value>Ugrás</value>
</data>
<data name="strMenuLaunchExternalTool" xml:space="preserve">
<data name="LaunchExternalTool" xml:space="preserve">
<value>Külső eszköz indítása</value>
</data>
<data name="strMenuNewConnectionFile" xml:space="preserve">
<data name="NewConnectionFile" xml:space="preserve">
<value>Új kapcsolatfájl</value>
</data>
<data name="strMenuNewExternalTool" xml:space="preserve">
<data name="NewExternalTool" xml:space="preserve">
<value>Új külső eszköz</value>
</data>
<data name="strMenuNotifications" xml:space="preserve">
<data name="Notifications" xml:space="preserve">
<value>Értesítések</value>
</data>
<data name="strMenuOpenConnectionFile" xml:space="preserve">
<data name="OpenConnectionFile" xml:space="preserve">
<value>Kapcsolatfájl megnyitása...</value>
</data>
<data name="strMenuOptions" xml:space="preserve">
<data name="Options" xml:space="preserve">
<value>Opciók</value>
</data>
<data name="strMenuReconnect" xml:space="preserve">
<data name="Reconnect" xml:space="preserve">
<value>Újrakapcsolódás</value>
</data>
<data name="strMenuRename" xml:space="preserve">
<value>Átnevezés</value>
</data>
<data name="strMenuRenameConnection" xml:space="preserve">
<data name="RenameConnection" xml:space="preserve">
<value>Kapcsolat átnevezése</value>
</data>
<data name="strMenuRenameFolder" xml:space="preserve">
<data name="RenameFolder" xml:space="preserve">
<value>Könyvtár átnevezése</value>
</data>
<data name="strMenuRenameTab" xml:space="preserve">
<data name="RenameTab" xml:space="preserve">
<value>Fül átnevezése</value>
</data>
<data name="strMenuReportBug" xml:space="preserve">
<data name="ReportBug" xml:space="preserve">
<value>Hibabejelentés</value>
</data>
<data name="strMenuResetLayout" xml:space="preserve">
<data name="ResetLayout" xml:space="preserve">
<value>Elrendezés alaphelyzetbe állítása</value>
</data>
<data name="strMenuSaveConnectionFile" xml:space="preserve">
<data name="SaveConnectionFile" xml:space="preserve">
<value>Kapcsolatfájl mentése</value>
</data>
<data name="strMenuSaveConnectionFileAs" xml:space="preserve">
<data name="SaveConnectionFileAs" xml:space="preserve">
<value>Kapcsolatfájl mentése, mint...</value>
</data>
<data name="strMenuScreenshot" xml:space="preserve">
<value>Képernyőmentés</value>
</data>
<data name="strMenuScreenshotManager" xml:space="preserve">
<value>Képernyőmentés kezelő</value>
</data>
<data name="strMenuSessions" xml:space="preserve">
<value>Munkamenetek</value>
</data>
<data name="strMenuSessionsAndScreenshots" xml:space="preserve">
<value>Munkamanetek és képernyőmentések</value>
</data>
<data name="strMenuWebsite" xml:space="preserve">
<data name="Website" xml:space="preserve">
<value>Honlap</value>
</data>
<data name="strNever" xml:space="preserve">
<data name="Never" xml:space="preserve">
<value>Soha</value>
</data>
<data name="strNewConnection" xml:space="preserve">
<data name="NewConnection" xml:space="preserve">
<value>Új kapcsolat</value>
</data>
<data name="strNewFolder" xml:space="preserve">
<data name="NewFolder" xml:space="preserve">
<value>Új mappa</value>
</data>
<data name="strNewPanel" xml:space="preserve">
<data name="NewPanel" xml:space="preserve">
<value>Új panel</value>
</data>
<data name="strNewRoot" xml:space="preserve">
<value>Új gyökérelem</value>
</data>
<data name="strNewTitle" xml:space="preserve">
<data name="NewTitle" xml:space="preserve">
<value>Új cím</value>
</data>
<data name="strNo" xml:space="preserve">
<data name="No" xml:space="preserve">
<value>Nem</value>
</data>
<data name="strUseSQLServer" xml:space="preserve">
<data name="UseSQLServer" xml:space="preserve">
<value>SQL szerver használata a kapcsolatok kezelésére</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
<!--
Microsoft ResX Schema
Version 2.0
@@ -59,287 +59,173 @@
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="PlaceSearchBarAboveConnectionTree" xml:space="preserve">
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="PlaceSearchBarAboveConnectionTree" xml:space="preserve">
<value>Place search bar above connection tree</value>
</data>
<data name="strPropertyDescriptionColors" xml:space="preserve">
<data name="PropertyDescriptionColors" xml:space="preserve">
<value>Select the color quality to be used.</value>
</data>
<data name="strPropertyNameColors" xml:space="preserve">
<data name="Colors" xml:space="preserve">
<value>Colors</value>
</data>
<data name="strRDP16777216Colors" xml:space="preserve">
<data name="Rdp16777216Colors" xml:space="preserve">
<value>16777216 Colors (24-bit)</value>
</data>
<data name="strRDP256Colors" xml:space="preserve">
<data name="Rdp256Colors" xml:space="preserve">
<value>256 Colors (8-bit)</value>
</data>
<data name="strRDP32768Colors" xml:space="preserve">
<data name="Rdp32768Colors" xml:space="preserve">
<value>32768 Colors (15-bit)</value>
</data>
<data name="strRDP4294967296Colors" xml:space="preserve">
<data name="Rdp4294967296Colors" xml:space="preserve">
<value>16777216 Colors (32-bit)</value>
</data>
<data name="strRDP65536Colors" xml:space="preserve">
<data name="Rdp65536Colors" xml:space="preserve">
<value>65536 Colors (16-bit)</value>
</data>
<data name="strThemeDescriptionConfigPanelBackgroundColor" xml:space="preserve">
<value>The background color of the config panel.</value>
</data>
<data name="strThemeDescriptionConfigPanelCategoryTextColor" xml:space="preserve">
<value>The color of the category text in the config panel.</value>
</data>
<data name="strThemeDescriptionConfigPanelGridLineColor" xml:space="preserve">
<value>The color of the grid lines in the config panel</value>
</data>
<data name="strThemeDescriptionConfigPanelHelpBackgroundColor" xml:space="preserve">
<value>The background color of the help area of the config panel.</value>
</data>
<data name="strThemeDescriptionConfigPanelHelpTextColor" xml:space="preserve">
<value>The color of the text in the help area of the config panel.</value>
</data>
<data name="strThemeDescriptionConfigPanelTextColor" xml:space="preserve">
<value>The color of the text in the config panel.</value>
</data>
<data name="strThemeDescriptionConnectionsPanelBackgroundColor" xml:space="preserve">
<value>The background color of the connections panel.</value>
</data>
<data name="strThemeDescriptionConnectionsPanelTextColor" xml:space="preserve">
<value>The color of the text in the connections panel.</value>
</data>
<data name="strThemeDescriptionConnectionsPanelTreeLineColor" xml:space="preserve">
<value>The color of the tree lines in the connections panel.</value>
</data>
<data name="strThemeDescriptionMenuBackgroundColor" xml:space="preserve">
<value>The background color of the menus.</value>
</data>
<data name="strThemeDescriptionMenuTextColor" xml:space="preserve">
<value>The color of the text in the menus.</value>
</data>
<data name="strThemeDescriptionSearchBoxBackgroundColor" xml:space="preserve">
<value>The background color of the search box.</value>
</data>
<data name="strThemeDescriptionSearchBoxTextColor" xml:space="preserve">
<value>The color of the text in the search box.</value>
</data>
<data name="strThemeDescriptionSearchBoxTextPromptColor" xml:space="preserve">
<value>The color of the prompt text in the search box.</value>
</data>
<data name="strThemeDescriptionToolbarBackgroundColor" xml:space="preserve">
<value>The background color of the toolbars.</value>
</data>
<data name="strThemeDescriptionToolbarTextColor" xml:space="preserve">
<value>The color of the text in the toolbars.</value>
</data>
<data name="strThemeDescriptionWindowBackgroundColor" xml:space="preserve">
<value>The background color of the main window.</value>
</data>
<data name="strThemeNameConfigPanelBackgroundColor" xml:space="preserve">
<value>Config Panel Background Color</value>
</data>
<data name="strThemeNameConfigPanelCategoryTextColor" xml:space="preserve">
<value>Config Panel Category Text Color</value>
</data>
<data name="strThemeNameConfigPanelGridLineColor" xml:space="preserve">
<value>Config Panel Grid Line Color</value>
</data>
<data name="strThemeNameConfigPanelHelpBackgroundColor" xml:space="preserve">
<value>Config Panel Help Background Color</value>
</data>
<data name="strThemeNameConfigPanelHelpTextColor" xml:space="preserve">
<value>Config Panel Help Text Color</value>
</data>
<data name="strThemeNameConfigPanelTextColor" xml:space="preserve">
<value>Config Panel Text Color</value>
</data>
<data name="strThemeNameConnectionsPanelBackgroundColor" xml:space="preserve">
<value>Connections Panel Background Color</value>
</data>
<data name="strThemeNameConnectionsPanelTextColor" xml:space="preserve">
<value>Connections Panel Text Color</value>
</data>
<data name="strThemeNameConnectionsPanelTreeLineColor" xml:space="preserve">
<value>Connections Panel Tree Line Color</value>
</data>
<data name="strThemeNameMenuBackgroundColor" xml:space="preserve">
<value>Menu Background Color</value>
</data>
<data name="strThemeNameMenuTextColor" xml:space="preserve">
<value>Menu Text Color</value>
</data>
<data name="strThemeNameSearchBoxBackgroundColor" xml:space="preserve">
<value>Search Box Background Color</value>
</data>
<data name="strThemeNameSearchBoxTextColor" xml:space="preserve">
<value>Search Box Text Color</value>
</data>
<data name="strThemeNameSearchBoxTextPromptColor" xml:space="preserve">
<value>Search Box Text Prompt Color</value>
</data>
<data name="strThemeNameToolbarBackgroundColor" xml:space="preserve">
<value>Toolbar Background Color</value>
</data>
<data name="strThemeNameToolbarTextColor" xml:space="preserve">
<value>Toolbar Text Color</value>
</data>
<data name="strThemeNameWindowBackgroundColor" xml:space="preserve">
<value>Window Background Color</value>
</data>
<data name="strActiveDirectory" xml:space="preserve">
<data name="ActiveDirectory" xml:space="preserve">
<value>Active Directory</value>
</data>
<data name="strErrorFipsPolicyIncompatible" xml:space="preserve">
<data name="ErrorFipsPolicyIncompatible" xml:space="preserve">
<value>The Windows security setting, "System cryptography: Use FIPS compliant algorithms for encryption, hashing, and signing", is enabled.
See the Microsoft Support article at http://support.microsoft.com/kb/811833 for more information.
{0} is not fully FIPS compliant. Click OK to proceed at your own discretion, or Cancel to Exit.</value>
</data>
<data name="strHttpGecko" xml:space="preserve">
<value>Gecko (Firefox)</value>
</data>
<data name="strHttpInternetExplorer" xml:space="preserve">
<data name="HttpInternetExplorer" xml:space="preserve">
<value>Internet Explorer</value>
</data>
<data name="strImportLocationCommandButtons" xml:space="preserve">
<value>Under the root{0}{1}|Under the selected folder{0}{2}</value>
</data>
<data name="strNoInformation" xml:space="preserve">
<data name="None" xml:space="preserve">
<value>None</value>
</data>
<data name="strNone" xml:space="preserve">
<value>None</value>
</data>
<data name="strPropertyDescriptionRedirectClipboard" xml:space="preserve">
<data name="PropertyDescriptionRedirectClipboard" xml:space="preserve">
<value>Select whether clipboard should be shared.</value>
</data>
<data name="strPropertyNameRedirectClipboard" xml:space="preserve">
<data name="Clipboard" xml:space="preserve">
<value>Clipboard</value>
</data>
<data name="strOptionsThemeChangeWarning" xml:space="preserve">
<data name="OptionsThemeChangeWarning" xml:space="preserve">
<value>Warning: Restart is required to commit any theme configuration change.</value>
</data>
<data name="strIPRange" xml:space="preserve">
<data name="MustBeBetween0And255" xml:space="preserve">
<value>Must Be Between 0 and 255</value>
</data>
<data name="strOutOfRange" xml:space="preserve">
<data name="OutOfRange" xml:space="preserve">
<value>Out Of Range</value>
</data>
<data name="strDelete" xml:space="preserve">
<data name="Delete" xml:space="preserve">
<value>Delete...</value>
</data>
<data name="strReconnectAllConnections" xml:space="preserve">
<data name="ReconnectAllConnections" xml:space="preserve">
<value>Reconnect All Connections</value>
</data>
<data name="strUltraVNCSingleClick" xml:space="preserve">
<data name="UltraVNCSingleClick" xml:space="preserve">
<value>UltraVNC SingleClick</value>
</data>
<data name="strMenuDisconnectOthers" xml:space="preserve">
<data name="DisconnectOthers" xml:space="preserve">
<value>Disconnect All But This</value>
</data>
<data name="AutomaticReconnectError" xml:space="preserve">
<data name="AutomaticReconnectError" xml:space="preserve">
<value>An error occurred while trying to reconnect to RDP host '{0}'</value>
</data>
<data name="ChangeConnectionResolutionError" xml:space="preserve">
<data name="ChangeConnectionResolutionError" xml:space="preserve">
<value>An error occurred while trying to change the connection resolution to host '{0}'</value>
</data>
<data name="StackTrace" xml:space="preserve">
<data name="StackTrace" xml:space="preserve">
<value>Stack trace</value>
</data>
<data name="ExceptionMessage" xml:space="preserve">
<data name="ExceptionMessage" xml:space="preserve">
<value>Exception Message</value>
</data>
<data name="mRemoteNGUnhandledException" xml:space="preserve">
<data name="mRemoteNGUnhandledException" xml:space="preserve">
<value>mRemoteNG Unhandled Exception</value>
</data>
<data name="UnhandledExceptionOccured" xml:space="preserve">
<data name="UnhandledExceptionOccured" xml:space="preserve">
<value>An unhandled exception has occurred</value>
</data>
<data name="ExceptionForcesmRemoteNGToClose" xml:space="preserve">
<data name="ExceptionForcesmRemoteNGToClose" xml:space="preserve">
<value>This exception will force mRemoteNG to close</value>
</data>
<data name="strMenuCopyHostname" xml:space="preserve">
<data name="CopyHostname" xml:space="preserve">
<value>Copy Hostname</value>
</data>
<data name="strPortScanSinglePort" xml:space="preserve">
<value>To scan a single port, select the "First Port" only.</value>
</data>
<data name="strTrackActiveConnectionInConnectionTree" xml:space="preserve">
<data name="TrackActiveConnectionInConnectionTree" xml:space="preserve">
<value>Track active connection in the connection tree</value>
</data>
<data name="strAlwaysShowConnectionTabs" xml:space="preserve">
<data name="AlwaysShowConnectionTabs" xml:space="preserve">
<value>Always show connection tabs</value>
</data>
<data name="strReleaseChannel" xml:space="preserve">
<data name="ReleaseChannel" xml:space="preserve">
<value>Release Channel</value>
</data>
<data name="strReleaseChannelExplanation" xml:space="preserve">
<data name="ReleaseChannelExplanation" xml:space="preserve">
<value>Stable channel includes final releases only.
Beta channel includes Betas &amp; Release Candidates.
Development Channel includes Alphas, Betas &amp; Release Candidates.</value>
</data>
<data name="strButtonApply" xml:space="preserve">
<data name="Apply" xml:space="preserve">
<value>Apply</value>
</data>
<data name="strCategoryProxy" xml:space="preserve">
<data name="Proxy" xml:space="preserve">
<value>Proxy</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -117,366 +117,281 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="strAbout" xml:space="preserve">
<data name="About" xml:space="preserve">
<value>Sobre</value>
</data>
<data name="strActive" xml:space="preserve">
<value>Ativo</value>
</data>
<data name="strActivity" xml:space="preserve">
<value>Atividade</value>
</data>
<data name="strAddConnection" xml:space="preserve">
<value>Nova conexão</value>
</data>
<data name="strAddFolder" xml:space="preserve">
<value>Nova pasta</value>
</data>
<data name="strAddNodeFromXmlFailed" xml:space="preserve">
<data name="AddNodeFromXmlFailed" xml:space="preserve">
<value>AddNodeFromXML falhou!</value>
</data>
<data name="strAddNodesFromSqlFailed" xml:space="preserve">
<value>AddNodesFromSQL falhou!</value>
</data>
<data name="strAllowOnlySingleInstance" xml:space="preserve">
<data name="AllowOnlySingleInstance" xml:space="preserve">
<value>Permitir apenas uma única instância do aplicativo (É necessário reiniciar o mRemoteNG)</value>
</data>
<data name="strAlways" xml:space="preserve">
<data name="Always" xml:space="preserve">
<value>Sempre</value>
</data>
<data name="strAlwaysConnectEvenIfAuthFails" xml:space="preserve">
<data name="AlwaysConnectEvenIfAuthFails" xml:space="preserve">
<value>Conectar sempre, mesmo se a autenticação falhar</value>
</data>
<data name="strAlwaysShowPanelSelection" xml:space="preserve">
<data name="AlwaysShowPanelSelection" xml:space="preserve">
<value>Sempre mostrar a caixa de diálogo de seleção de painel ao abrir conexões</value>
</data>
<data name="strAlwaysShowSysTrayIcon" xml:space="preserve">
<data name="AlwaysShowSysTrayIcon" xml:space="preserve">
<value>Sempre mostrar ícone da área de notificação</value>
</data>
<data name="strAskUpdatesCommandAskLater" xml:space="preserve">
<data name="AskUpdatesCommandAskLater" xml:space="preserve">
<value>Me pergunte novamente mais tarde</value>
</data>
<data name="strAskUpdatesCommandCustom" xml:space="preserve">
<data name="AskUpdatesCommandCustom" xml:space="preserve">
<value>Personalizar as configurações agora</value>
</data>
<data name="strAskUpdatesCommandRecommended" xml:space="preserve">
<data name="AskUpdatesCommandRecommended" xml:space="preserve">
<value>Usar as configurações recomendadas</value>
</data>
<data name="strAskUpdatesContent" xml:space="preserve">
<data name="AskUpdatesContent" xml:space="preserve">
<value>{0} pode verificar automaticamente as atualizações que podem fornecer novas funcionalidades e correções de bugs. É recomendável que você permita {0} verificar atualizações semanais.</value>
</data>
<data name="strAskUpdatesMainInstruction" xml:space="preserve">
<data name="AskUpdatesMainInstruction" xml:space="preserve">
<value>Configurações de atualização automática</value>
</data>
<data name="strAspect" xml:space="preserve">
<data name="Aspect" xml:space="preserve">
<value>Aspecto</value>
</data>
<data name="strAutomaticallyGetSessionInfo" xml:space="preserve">
<value>Obter automaticamente informações de sessão</value>
</data>
<data name="strAutoSaveEvery" xml:space="preserve">
<data name="AutoSaveEvery" xml:space="preserve">
<value>Salvar automaticamente a cada:</value>
</data>
<data name="strAutoSaveMins" xml:space="preserve">
<value>Minutos (0 significa desativado)</value>
</data>
<data name="strAvailableVersion" xml:space="preserve">
<data name="AvailableVersion" xml:space="preserve">
<value>Versão atual</value>
</data>
<data name="strButtonBrowse" xml:space="preserve">
<data name="_Browse" xml:space="preserve">
<value>&amp; Procurar...</value>
</data>
<data name="strButtonCancel" xml:space="preserve">
<data name="_Cancel" xml:space="preserve">
<value>&amp; Cancelar</value>
</data>
<data name="strButtonChange" xml:space="preserve">
<data name="Change" xml:space="preserve">
<value>Alterar</value>
</data>
<data name="strButtonClose" xml:space="preserve">
<data name="_Close" xml:space="preserve">
<value>&amp; Fechar</value>
</data>
<data name="strButtonDefaultInheritance" xml:space="preserve">
<data name="ButtonDefaultInheritance" xml:space="preserve">
<value>Herança padrão</value>
</data>
<data name="strButtonDefaultProperties" xml:space="preserve">
<data name="ButtonDefaultProperties" xml:space="preserve">
<value>Propriedades padrões</value>
</data>
<data name="strButtonDisconnect" xml:space="preserve">
<data name="Disconnect" xml:space="preserve">
<value>Desconectar</value>
</data>
<data name="strButtonIcon" xml:space="preserve">
<data name="Icon" xml:space="preserve">
<value>Ícone</value>
</data>
<data name="strButtonImport" xml:space="preserve">
<data name="_Import" xml:space="preserve">
<value>&amp; Importar</value>
</data>
<data name="strButtonInheritance" xml:space="preserve">
<data name="Inheritance" xml:space="preserve">
<value>Herança</value>
</data>
<data name="strButtonLaunchPutty" xml:space="preserve">
<data name="ButtonLaunchPutty" xml:space="preserve">
<value>Executar o PuTTY</value>
</data>
<data name="strButtonNew" xml:space="preserve">
<value>&amp; Novo</value>
</data>
<data name="strButtonOK" xml:space="preserve">
<data name="_Ok" xml:space="preserve">
<value>&amp; OK</value>
</data>
<data name="strButtonProperties" xml:space="preserve">
<data name="Properties" xml:space="preserve">
<value>Propriedades</value>
</data>
<data name="strButtonScan" xml:space="preserve">
<data name="_Scan" xml:space="preserve">
<value>&amp; Scanear</value>
</data>
<data name="strButtonStop" xml:space="preserve">
<data name="_Stop" xml:space="preserve">
<value>&amp; Parar</value>
</data>
<data name="strButtonTestProxy" xml:space="preserve">
<data name="TestProxy" xml:space="preserve">
<value>Testar Proxy</value>
</data>
<data name="strCannotImportNormalSessionFile" xml:space="preserve">
<value>Você não pode importar um arquivo de conexão normal. Por favor, use Arquivo - Carregar Conexões para os arquivos de conexão normal!</value>
</data>
<data name="strCannotStartPortScan" xml:space="preserve">
<data name="CannotStartPortScan" xml:space="preserve">
<value>Não é possível iniciar a varredura de portas, formato IP incorreto!</value>
</data>
<data name="strCategoryAppearance" xml:space="preserve">
<data name="Appearance" xml:space="preserve">
<value>Aparência</value>
</data>
<data name="strCategoryConnection" xml:space="preserve">
<data name="Connection" xml:space="preserve">
<value>Conexão</value>
</data>
<data name="strCategoryCredentials" xml:space="preserve">
<value>Credenciais</value>
</data>
<data name="strCategoryDisplay" xml:space="preserve">
<data name="Display" xml:space="preserve">
<value>Mostrar</value>
</data>
<data name="strCategoryGateway" xml:space="preserve">
<data name="Gateway" xml:space="preserve">
<value>Gateway</value>
</data>
<data name="strCategoryGeneral" xml:space="preserve">
<value>Geral</value>
</data>
<data name="strCategoryMiscellaneous" xml:space="preserve">
<data name="Miscellaneous" xml:space="preserve">
<value>Diversos</value>
</data>
<data name="strCategoryProtocol" xml:space="preserve">
<data name="Protocol" xml:space="preserve">
<value>Protocolo</value>
</data>
<data name="strCategoryRedirect" xml:space="preserve">
<data name="Redirect" xml:space="preserve">
<value>Redirecionar</value>
</data>
<data name="strCcAlwaysShowScreen" xml:space="preserve">
<value>Sempre mostrar esta tela na inicialização</value>
</data>
<data name="strCcCheckAgain" xml:space="preserve">
<value>Atualizar</value>
</data>
<data name="strCcCheckFailed" xml:space="preserve">
<data name="CheckFailed" xml:space="preserve">
<value>Falha na verificação!</value>
</data>
<data name="strCcCheckSucceeded" xml:space="preserve">
<data name="CheckSucceeded" xml:space="preserve">
<value>Verificação com sucesso!</value>
</data>
<data name="strCcEOLFailed" xml:space="preserve">
<value>O recurso de sessões (RDP) requer que você tenha uma cópia registrada do eolwtscom.dll no seu sistema.
mRemoteNG vem com este componente mas não o registra automaticamente a menos que você instale o pacote.
Para registrá-lo manualmente faça isso: Abra a caixa de diálogo Executar (Iniciar - Executar) e digite o seguinte: regsvr32 "c:\Program Files\mRemoteNG\eolwtscom.dll" (onde c:\Program Files\mRemoteNG\ é o caminho para a instalação de mRemoteNG).
Se você ainda não conseguir passar por esta verificação ou não conseguir usar o recurso de sessões (RDP) no mRemoteNG, por favor, consulte o fórum de mRemoteNG em http://forum.mremoteng.org/</value>
<data name="CcICAFailed" xml:space="preserve">
<value>ICA requer que o XenDesktop Online Plugin esteja instalado e a biblioteca wfica.ocs registrada. Você pode baixar o cliente aqui: http://www.citrix.com/download/
Se você tiver o Plugin Online XenDesktop instalado e a verificação ainda falhar, tente registrar manualmente o wfica.ocx
Para fazer isso abra a caixa de diálogo Executar (Iniciar - Executar) e digite o seguinte: regsvr32 "c:\Program Files\Citrix\ICA Client\wfica.ocx" (onde c:\Program Files\Citrix\ICA Client\ é o caminho para a instalação do Plugin Online do XenDesktop).
Se você ainda não puder passar por esta verificação ou usar ICA em mRemoteNG, por favor, consulte o fórum de mRemoteNG no http://forum.mremoteng.org/"</value>
</data>
<data name="strCcEOLOK" xml:space="preserve">
<value>EOLWTSCOM foi encontrada e parece ser registrado corretamente.</value>
<data name="CcICAOK" xml:space="preserve">
<value>Todos os componentes de ICA, foram encontrados e parecem ser registrado corretamente. Citrix ICA cliente controle versão {0}</value>
</data>
<data name="strCcGeckoFailed" xml:space="preserve">
<value>Para usar o motor de renderização Gecko, você precisa ter o XULrunner 1.8.1.x e o caminho para a instalação do conjunto em suas opções.
Você pode baixar o XULrunner 1.8.1.3 em: ftp://ftp.mozilla.org/pub/xulrunner/releases/1.8.1.3/contrib/win32/
Quando terminar de baixar o pacote, extraia o pacote para um caminho de sua escolha.
Em seguida, emtre no mRemoteNG e vá em ferramentas - opções - avançadas e digite o caminho correto no campo caminho XULrunner.
Se ainda não conseguir passar esta verificação ou usar o motor Gecko em mRemoteNG por favor consultar o fórum de mRemoteNG em http://forum.mremoteng.org/</value>
</data>
<data name="strCcGeckoOK" xml:space="preserve">
<value>GeckoFx foi encontrado e aparenta estar instalado corretamente.</value>
</data>
<data name="strCcNotInstalledProperly" xml:space="preserve">
<data name="CcNotInstalledProperly" xml:space="preserve">
<value>não instalado corretamente</value>
</data>
<data name="strCcPuttyFailed" xml:space="preserve">
<data name="CcPuttyFailed" xml:space="preserve">
<value>O SSH, Telnet, Rlogin e protocolos RAW precisam PuTTY para trabalhar. PuTTY vem com cada pacote de mRemoteNG e está localizado no caminho de instalação.
Por favor, certifique-se de que você tem o Putty.exe em seu diretório mRemoteNG (padrão: c:\Program Files\mRemoteNG\) ou que você tenha especificado um caminho válido para seu executável PuTTY nas opções (ferramentas - opções - avançadas - caminho personalizado PuTTY)</value>
</data>
<data name="strCcPuttyOK" xml:space="preserve">
<data name="CcPuttyOK" xml:space="preserve">
<value>O executável PuTTY foi encontrado e está pronto para usar.</value>
</data>
<data name="strCheckboxDomain" xml:space="preserve">
<value>Domínio</value>
</data>
<data name="strCheckboxDoNotShowThisMessageAgain" xml:space="preserve">
<data name="CheckboxDoNotShowThisMessageAgain" xml:space="preserve">
<value>Não mostre esta mensagem novamente.</value>
</data>
<data name="strCheckboxInheritance" xml:space="preserve">
<value>Herança</value>
</data>
<data name="strCheckboxPassword" xml:space="preserve">
<value>Senha</value>
</data>
<data name="strCheckboxProxyAuthentication" xml:space="preserve">
<data name="CheckboxProxyAuthentication" xml:space="preserve">
<value>Este servidor proxy requer autenticação</value>
</data>
<data name="strCheckboxPuttyPath" xml:space="preserve">
<data name="CheckboxPuttyPath" xml:space="preserve">
<value>Use o caminho personalizado para o PuTTY:</value>
</data>
<data name="strCheckboxReconnectWhenReady" xml:space="preserve">
<data name="CheckboxReconnectWhenReady" xml:space="preserve">
<value>Reconectar quando estiver pronto</value>
</data>
<data name="strCheckboxUpdateUseProxy" xml:space="preserve">
<data name="CheckboxUpdateUseProxy" xml:space="preserve">
<value>Usar um servidor proxy para se conectar</value>
</data>
<data name="strCheckboxUsername" xml:space="preserve">
<data name="Username" xml:space="preserve">
<value>Nome de usuário</value>
</data>
<data name="strCheckboxWaitForExit" xml:space="preserve">
<data name="WaitForExit" xml:space="preserve">
<value>Esperar para sair</value>
</data>
<data name="strCheckForUpdate" xml:space="preserve">
<data name="CheckAgain" xml:space="preserve">
<value>Verificar novamente</value>
</data>
<data name="strCheckForUpdatesOnStartup" xml:space="preserve">
<data name="CheckForUpdatesOnStartup" xml:space="preserve">
<value>Verificar se há atualizações e anúncios na inicialização</value>
</data>
<data name="strCheckNow" xml:space="preserve">
<data name="CheckNow" xml:space="preserve">
<value>Verificar agora</value>
</data>
<data name="strClosedPorts" xml:space="preserve">
<data name="ClosedPorts" xml:space="preserve">
<value>Portas fechadas</value>
</data>
<data name="strCollapseAllFolders" xml:space="preserve">
<data name="CollapseAllFolders" xml:space="preserve">
<value>Recolher todas as pastas</value>
</data>
<data name="strColumnArguments" xml:space="preserve">
<data name="Arguments" xml:space="preserve">
<value>Argumentos</value>
</data>
<data name="strColumnDisplayName" xml:space="preserve">
<value>Nome de exibição</value>
</data>
<data name="strColumnFilename" xml:space="preserve">
<data name="Filename" xml:space="preserve">
<value>Nome do arquivo</value>
</data>
<data name="strColumnHostnameIP" xml:space="preserve">
<value>HostName/IP</value>
</data>
<data name="strColumnMessage" xml:space="preserve">
<data name="Message" xml:space="preserve">
<value>Mensagem</value>
</data>
<data name="strColumnUsername" xml:space="preserve">
<value>Nome de usuário</value>
</data>
<data name="strColumnWaitForExit" xml:space="preserve">
<value>Esperar para sair</value>
</data>
<data name="strComponentsCheck" xml:space="preserve">
<data name="ComponentsCheck" xml:space="preserve">
<value>Validação de componentes</value>
</data>
<data name="strConfigPropertyGridButtonIconClickFailed" xml:space="preserve">
<data name="ConfigPropertyGridButtonIconClickFailed" xml:space="preserve">
<value>btnIcon_Click falhou!</value>
</data>
<data name="strConfigPropertyGridHideItemsFailed" xml:space="preserve">
<data name="ConfigPropertyGridHideItemsFailed" xml:space="preserve">
<value>ShowHideGridItems falhou!</value>
</data>
<data name="strConfigPropertyGridMenuClickFailed" xml:space="preserve">
<data name="ConfigPropertyGridMenuClickFailed" xml:space="preserve">
<value>IconMenu_Click falhou!</value>
</data>
<data name="strConfigPropertyGridObjectFailed" xml:space="preserve">
<data name="ConfigPropertyGridObjectFailed" xml:space="preserve">
<value>Propriedade do Objeto de grade falhou!</value>
</data>
<data name="strConfigPropertyGridSetHostStatusFailed" xml:space="preserve">
<data name="ConfigPropertyGridSetHostStatusFailed" xml:space="preserve">
<value>SetHostStatus falhou!</value>
</data>
<data name="strConfigPropertyGridValueFailed" xml:space="preserve">
<data name="ConfigPropertyGridValueFailed" xml:space="preserve">
<value>pGrid_PopertyValueChanged falhou!</value>
</data>
<data name="strConfigUiLoadFailed" xml:space="preserve">
<data name="ConfigUiLoadFailed" xml:space="preserve">
<value>Config UI carregamento falhou!</value>
</data>
<data name="strConfirmCloseConnectionMainInstruction" xml:space="preserve">
<value>Você quer fechar a conexão:
"{0}"?</value>
</data>
<data name="strConfirmCloseConnectionPanelMainInstruction" xml:space="preserve">
<data name="ConfirmCloseConnectionPanelMainInstruction" xml:space="preserve">
<value>Tem certeza que deseja fechar o painel, "{0}"? Todas as ligações ativas serão fechadas.</value>
</data>
<data name="strConfirmDeleteExternalTool" xml:space="preserve">
<data name="ConfirmDeleteExternalTool" xml:space="preserve">
<value>Tem certeza que deseja excluir a ferramenta externa, "{0}"?</value>
</data>
<data name="strConfirmDeleteExternalToolMultiple" xml:space="preserve">
<data name="ConfirmDeleteExternalToolMultiple" xml:space="preserve">
<value>Tem certeza que deseja excluir as ferramentas externas {0} selecionadas?</value>
</data>
<data name="strConfirmDeleteNodeConnection" xml:space="preserve">
<data name="ConfirmDeleteNodeConnection" xml:space="preserve">
<value>Tem certeza que deseja excluir a ligação, "{0}"?</value>
</data>
<data name="strConfirmDeleteNodeFolder" xml:space="preserve">
<data name="ConfirmDeleteNodeFolder" xml:space="preserve">
<value>Tem certeza que deseja excluir a pasta vazia, "{0}"?</value>
</data>
<data name="strConfirmDeleteNodeFolderNotEmpty" xml:space="preserve">
<data name="ConfirmDeleteNodeFolderNotEmpty" xml:space="preserve">
<value>Tem certeza que deseja excluir a pasta, "{0}"? Pastas ou ligações que ele contém também serão excluídas.</value>
</data>
<data name="strConfirmExitMainInstruction" xml:space="preserve">
<data name="ConfirmExitMainInstruction" xml:space="preserve">
<value>Você quer fechar todas as conexões abertas?</value>
</data>
<data name="strConfirmResetLayout" xml:space="preserve">
<data name="ConfirmResetLayout" xml:space="preserve">
<value>Tem certeza de que deseja redefinir os painéis para o layout padrão?</value>
</data>
<data name="strConnect" xml:space="preserve">
<data name="Connect" xml:space="preserve">
<value>Conectar-se</value>
</data>
<data name="strConnectInFullscreen" xml:space="preserve">
<data name="ConnectInFullscreen" xml:space="preserve">
<value>Se conectar em modo fullscreen</value>
</data>
<data name="strConnecting" xml:space="preserve">
<data name="Connecting" xml:space="preserve">
<value>Conectando...</value>
</data>
<data name="strConnectionEventConnected" xml:space="preserve">
<data name="ConnectionEventConnected" xml:space="preserve">
<value>Protocolo evento conectado</value>
</data>
<data name="strConnectionEventConnectedDetail" xml:space="preserve">
<data name="ConnectionEventConnectedDetail" xml:space="preserve">
<value>Conexão para "{0}" via "{1}" estabelecido pelo usuário "{2}" (Descrição: "{3}"; Campo usuário: "{4}")</value>
</data>
<data name="ConnectionFailed" xml:space="preserve">
<value>Conexão falhou!</value>
</data>
<data name="strConnectionEventErrorOccured" xml:space="preserve">
<data name="ConnectionEventErrorOccured" xml:space="preserve">
<value>Erro no evento de protocolo</value>
</data>
<data name="strConnectionOpenFailed" xml:space="preserve">
<data name="ConnectionOpenFailed" xml:space="preserve">
<value>Abrir conexão falhou!</value>
</data>
<data name="strConnectionOpenFailedNoHostname" xml:space="preserve">
<data name="ConnectionOpenFailedNoHostname" xml:space="preserve">
<value>Não é possível abrir a conexão: nenhum nome de host especificado!</value>
</data>
<data name="strConnectionRdpErrorDetail" xml:space="preserve">
<value>Erro RDP!
Código de erro: {0}
Descrição do erro: {1}</value>
</data>
<data name="strConnections" xml:space="preserve">
<data name="Connections" xml:space="preserve">
<value>Conexões</value>
</data>
<data name="strConnectionSetDefaultPortFailed" xml:space="preserve">
<data name="ConnectionSetDefaultPortFailed" xml:space="preserve">
<value>Impossível definir porta padrão!</value>
</data>
<data name="strConnectionsFileBackupFailed" xml:space="preserve">
<data name="ConnectionsFileBackupFailed" xml:space="preserve">
<value>Não foi possível criar o backup do arquivo de conexões!</value>
</data>
<data name="strConnectionsFileCouldNotBeImported" xml:space="preserve">
<value>Falha na importação do arquivo de conexões!</value>
</data>
<data name="strConnectionsFileCouldNotBeLoaded" xml:space="preserve">
<data name="ConnectionsFileCouldNotBeLoaded" xml:space="preserve">
<value>Arquivo de conexões "{0}" não pôde ser carregado!</value>
</data>
<data name="strConnectionsFileCouldNotBeLoadedNew" xml:space="preserve">
<data name="ConnectionsFileCouldNotBeLoadedNew" xml:space="preserve">
<value>Arquivo de conexões "{0}" não pôde ser carregado! Começando com o novo arquivo de conexões.</value>
</data>
<data name="strConnectionsFileCouldNotBeSaved" xml:space="preserve">
<value>Não consegui salvar o arquivo de conexões!</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More