Compare commits

...

203 Commits
1.63 ... 1.69

Author SHA1 Message Date
rmcardle
68cee49830 Upgrade solution to Visual Studio 2010 format. 2011-12-09 01:47:11 -06:00
rmcardle
5892c0cda8 Update EstimatedSize in installer. 2011-12-09 01:45:24 -06:00
rmcardle
59e09e3762 Update BUILD.CMD for VS2010. Clean up code in BUILD.CMD. Replace GetVersion.nsi with Sigcheck. 2011-12-09 01:44:57 -06:00
rmcardle
79dad7e319 Add Visual Studio solution upgrade files to .gitignore. 2011-12-09 01:36:48 -06:00
rmcardle
4455f9c71d Update CHANGELOG.TXT. 2011-12-09 01:35:21 -06:00
Riley McArdle
ed8e4e0303 Added Credits, License, and Version History items to the Start Menu and made Start Menu item names localizable. 2011-12-08 23:07:15 -06:00
Riley McArdle
56993c0785 Fixed missing link between chkUseOnlyErrorsAndInfosPanel and CheckedChanged event handler. 2011-12-08 23:01:10 -06:00
rmcardle
ec830a3fc4 Add issue #72 to CHANGELOG.TXT. 2011-12-08 01:18:35 -06:00
rmcardle
99b981b988 Merge remote-tracking branch 'origin/release/1.69' into release/1.69 2011-12-08 01:12:42 -06:00
rmcardle
e88cf2be5e Fixed issue #72 - scrollbars added to RDP window after minimize/restore of mRemoteNG 2011-12-07 23:19:51 -06:00
rmcardle
91262db838 Fixed file name in window title changing when exporting an XML file. Removed redundant code. 2011-12-06 23:05:42 -06:00
rmcardle
e339fb1390 Revert AssemblyCompany change from 72e2d9c2ab to fix settings migration. 2011-12-06 22:59:39 -06:00
rmcardle
4644741849 Fixed issue #67 - Connection file gets erased 2011-12-06 03:21:28 -06:00
Riley McArdle
87b0f317d1 Updated AssemblyVersion to 1.69. 2011-07-29 02:12:11 -05:00
Riley McArdle
2778f8d1c3 Disabled automatic updates in the portable edition 2011-07-29 02:10:15 -05:00
Riley McArdle
b67a68b100 Added code to BUILD.CMD to digitally sign binaries 2011-07-29 01:22:01 -05:00
Riley McArdle
72e2d9c2ab Changed company name to Next Generation Software 2011-07-29 01:21:56 -05:00
Riley McArdle
2af9e02029 Updated PuTTY to version 0.61 2011-07-29 01:21:47 -05:00
Riley McArdle
7b6d01a965 Fixed issue #66 - Fresh Install Fails to Create Config 2011-07-29 01:21:37 -05:00
Riley McArdle
d9cfda43b6 Updated BUILD.CMD, CHANGELOG.TXT, and AssemblyInfo.vb for version 1.68. 2011-07-07 16:22:07 -05:00
Riley McArdle
d15aa639f5 Fixed issue #48 - VerifyDatabaseVersion fails with new (empty) database tables. 2011-07-07 16:11:30 -05:00
Riley McArdle
8a70a3e64b Fixed issue #60 - Can't save connections file and issue #62 - Connection file error upon launch. 2011-07-07 16:10:55 -05:00
Riley McArdle
fb826c7fac Hide unimplemented File->Import/Export Folder menu item. 2011-06-05 12:40:20 -05:00
Riley McArdle
d5822094c1 Updated BUILD.CMD and CHANGELOG.TXT for 1.67 RC5. 2011-06-05 12:14:18 -05:00
Riley McArdle
87f7fbdf45 Changed header, removed footer, and added command line to the log file. 2011-06-05 12:06:36 -05:00
Riley McArdle
0bed923a4d Added code to verify database version and upgrade database from 2.2 (mRemoteNG 1.66 or earlier) to 2.3 (mRemoteNG 1.67). 2011-06-05 12:06:07 -05:00
Riley McArdle
69ab11eb5f Enable creation of PDB debug symbol files for release builds. 2011-06-05 12:04:53 -05:00
Riley McArdle
217a03b191 Fixed bug 45 - Changing some settings in the config file may not save. 2011-06-05 12:04:44 -05:00
Riley McArdle
cab2163d01 Fixed Inherit All not affecting Enable Font Smoothing and Enable Desktop Composition. 2011-06-05 12:00:56 -05:00
Riley McArdle
2346aaa1c3 Only try to load 2.3 settings from SQL if the database is version 2.3. 2011-06-05 12:00:45 -05:00
Riley McArdle
7e45928297 Fixed ShowUpdatesTab to show the correct tab. 2011-06-05 12:00:29 -05:00
Riley McArdle
76543a440b Added version and culture information to log on startup. 2011-06-05 12:00:10 -05:00
Riley McArdle
5cb98e0543 Fixed tab order of controls in Options dialog. 2011-06-05 11:59:51 -05:00
Riley McArdle
114db6c90d Fix typo in previous commit. 2011-06-01 18:12:48 -05:00
Riley McArdle
53c5da7e0e Missing changes from commit 17a5853041. 2011-06-01 18:09:12 -05:00
Riley McArdle
888e55aaee Updated BUILD.CMD and CHANGELOG.TXT for 1.67 RC4. 2011-06-01 17:42:54 -05:00
Riley McArdle
2234770dac Changed installer to not show the version tag so that release candidates can be used for release without rebuilding. 2011-06-01 17:42:03 -05:00
Riley McArdle
17a5853041 Changed hard coded SQL database name into a user configurable setting. 2011-06-01 17:32:31 -05:00
Riley McArdle
d80f3d757e Moved default credentials back to the correct page in the Options dialog. 2011-06-01 17:07:40 -05:00
Riley McArdle
85a5d027dc Improved Reset Layout function. 2011-06-01 16:36:33 -05:00
Riley McArdle
006c76b11d Add database icon to project. 2011-06-01 15:47:02 -05:00
Riley McArdle
61a76908ea Moved SQL Server configuration to its own tab in the Options dialog. 2011-06-01 12:45:02 -05:00
Riley McArdle
b729cab9c9 Changed Options dialog to use standard tab control instead of Crownwood tab control. 2011-06-01 12:39:41 -05:00
Riley McArdle
654e3cae1f Refactored UI.Window.Options to frmOptions. 2011-05-31 17:46:14 -05:00
Riley McArdle
bcc681f623 Missing file for previous commit. 2011-05-31 17:28:45 -05:00
Riley McArdle
77716fc058 Fixed showing the updates tab on first startup. 2011-05-31 17:26:49 -05:00
Riley McArdle
103c34853e Changed the Options page into a normal dialog. 2011-05-31 17:12:21 -05:00
Riley McArdle
3ec52987eb Fixed NullReferenceException in App.Runtime. 2011-05-31 16:57:25 -05:00
Riley McArdle
d3130f91d1 Minor code cleanup. 2011-05-31 12:33:56 -05:00
Riley McArdle
aae96c112a Fixed confirm closing connection tabs to also ask when closing a panel. 2011-05-31 12:13:30 -05:00
Riley McArdle
635ae405bd Moved the language override code from frmMain_Load to Config.Settings.Load to make sure that the correct language is applied to everything. 2011-05-31 00:39:40 -05:00
Riley McArdle
66c315f629 Update BUILD.CMD and CHANGELOG.TXT for 1.67 RC3. 2011-05-28 17:20:55 -05:00
Riley McArdle
89c7baf7fa Fixed bug 42 - Maximized location not remembered with multiple monitors. Improved loading and saving of window location. Removed flickering on start up. 2011-05-28 17:10:13 -05:00
Riley McArdle
90eedc689e Fix bug 43 - Creating a duplicate connection causes connection list to no longer be sorted ascending. 2011-05-28 13:27:03 -05:00
Riley McArdle
b262f00491 Added confirmation before closing connection tabs. 2011-05-28 13:10:50 -05:00
Riley McArdle
d0d81e382d Merge branch 'master' of github.com:rmcardle/mRemoteNG 2011-05-28 12:44:08 -05:00
Riley McArdle
5615dc18a6 Fixed inconsistent capitalization of language names. 2011-05-27 16:58:36 -05:00
Riley McArdle
ce08728652 Changed the order of the startup code to ensure that the correct language is shown on the first run after an upgrade. 2011-05-27 16:56:51 -05:00
Riley McArdle
fbc613efe5 Added Holger Henke to CREDITS.TXT for submitting change made in commit 2b1732d061. 2011-05-27 16:38:35 -05:00
Riley McArdle
d3560eb893 Merge from commit a3165ba25a89f6e6b155 by sirrus. New translations and some renamed entries. 2011-05-27 16:36:15 -05:00
Riley McArdle
e53be11383 Merge from commit 410f0173616609caf47c by sirrus. New translations and some renamed entries. 2011-05-27 16:33:28 -05:00
Riley McArdle
17c25d6481 Update BUILD.CMD and CHANGELOG.TXT for 1.67 RC2. 2011-05-25 22:25:54 -05:00
Riley McArdle
e07fbe913f Fixed adding a connection entry if nothing is selected in the tree. 2011-05-25 22:05:20 -05:00
Riley McArdle
c91f406346 Added the mRemoteNG icon to the list of selectable icons for connection entries. 2011-05-25 21:59:44 -05:00
Riley McArdle
46afd47ba0 Improved error handling when loading XML connection files. 2011-05-25 21:57:35 -05:00
Riley McArdle
5f1e9ae0b7 Updated CHANGELOG.TXT. 2011-05-25 21:10:57 -05:00
Riley McArdle
62c9d6f474 Added desktop composition setting for RDP connections. 2011-05-25 21:10:38 -05:00
Riley McArdle
935df3d4fa Added font smoothing setting for RDP connections. 2011-05-25 19:59:03 -05:00
Riley McArdle
ec850f6c15 Added 15-bit color option for RDP. Fixed the description for 32-bit color (8 bits are not used so it's the same number of colors as 24-bit). 2011-05-25 19:06:16 -05:00
Riley McArdle
2b1732d061 Fixed loading of RDP Colors setting from SQL. 2011-05-25 18:33:30 -05:00
Riley McArdle
cec787fd63 Added buttons for Add Connection, Add Folder, and Sort Ascending (A-Z) to the Connections panel toolbar. Fixed rename edit control staying open when collapsing all folders. Changed sorting to sort all subfolders below the selected folder. 2011-05-25 18:18:18 -05:00
Riley McArdle
97e43d9238 Allow sorting of connections if a connection entry is selected. 2011-05-25 18:17:33 -05:00
Riley McArdle
1ec28e0bfd Corrections to the English text. 2011-05-18 10:16:41 -05:00
Riley McArdle
22e9c36365 Replaced a few instances of mRemote with mRemoteNG in German translation. 2011-05-18 10:09:23 -05:00
Riley McArdle
757dd4c8ca Added partial French translation by Lionel Caignec. 2011-05-18 10:01:37 -05:00
Riley McArdle
3de4153c1a Added some missing stuff to CHANGELOG.TXT. 2011-05-17 17:46:39 -05:00
Riley McArdle
cfbdd94ed3 Moved the items under Tools in the Connections panel context menu up to the top level. 2011-05-17 17:22:47 -05:00
Riley McArdle
eab49ef3bd Added a task dialog to ask the user about automatic updates on first run instead of just showing the update options page without any explanation. 2011-05-17 16:58:30 -05:00
Riley McArdle
5027f534e3 Fixed bug 33 - IPv6 doesn't work in quick Connect box. 2011-05-17 15:52:00 -05:00
Riley McArdle
85e1402cc0 Fixed log4net logging and disabled Debug.Print of message IDs in WndProc. 2011-05-17 12:31:25 -05:00
Riley McArdle
f048b2d04d Fixed ignored NullReferenceException in SetHostStatus. 2011-05-17 12:18:48 -05:00
Riley McArdle
19218f20bb Fixed RD Gateway default properties and RDP reconnection count setting not being saved. 2011-05-17 11:37:54 -05:00
Riley McArdle
3f2ffea1f4 Added a language selection option so users can override the language if they don't want it automatically detected. 2011-05-17 03:27:39 -05:00
Riley McArdle
6fa8923f90 Add support for build number and revision to version numbers. 2011-05-13 00:55:22 -05:00
Riley McArdle
9a63b8c316 Updated installer logos to mRemoteNG. Added install and uninstall icons from the Visual Studio 2008 image library. 2011-05-12 22:40:25 -05:00
Riley McArdle
d3311497f2 Added configuration file migration fix to CHANGELOG.TXT. 2011-05-12 21:38:10 -05:00
Riley McArdle
79bdc4f734 Bug Fix: Disable ICA Hotkeys for Citrix connections. Fixes issue with international users. 2011-05-12 21:21:35 -05:00
Riley McArdle
b5b9388d58 Reorganized languages.nsi so everything for each language is in the same place. Added native language names. Sorted alphabetically by native name. 2011-05-12 20:47:31 -05:00
Riley McArdle
d168516859 Added Thai installer translation. Compiling the installer now requires NSIS Unicode (unsis). 2011-05-12 20:36:23 -05:00
Riley McArdle
c219d34fa3 Revert Ctrl+Tab and Ctrl+Shift+Tab related commits. 2011-05-12 20:17:23 -05:00
Riley McArdle
99f3638fbf Do not migrate files from Local to Roaming folder in portable version. 2011-05-12 19:15:59 -05:00
Riley McArdle
944906a594 Safely migrate panel layout file from Local to Roaming folder. 2011-05-12 17:50:45 -05:00
Riley McArdle
4f9e6ebbd4 Safely migrate external tools configuration file from Local to Roaming folder. 2011-05-12 17:45:35 -05:00
Riley McArdle
fae284ca86 Safer migration of connections file from Local to Roaming folder. 2011-05-12 17:31:55 -05:00
Riley McArdle
4a1ac9eded Revert "Autmatically move to Roaming profile"
This reverts commit 3592fbc418.
2011-05-12 17:17:26 -05:00
Riley McArdle
58757ff85f Updated version number to 1.66 for release. 2011-05-02 14:48:07 -05:00
Riley McArdle
31b9b21f61 Fixed connection tabs not opening. 2011-05-02 14:41:27 -05:00
Riley McArdle
49273a95bc Updated version number to 1.65. Updated LegalCopyright date in installer. Updated CHANGELOG.TXT. 2011-05-02 11:40:57 -05:00
Riley McArdle
50489ddcf1 Changed the installer to quit if the user is not an Administrator or Power User. 2011-05-02 11:37:44 -05:00
Riley McArdle
e0a46b7882 Disabled Ctrl-Tab and Ctrl-Shift-Tab hotkeys. 2011-05-02 11:36:55 -05:00
Riley McArdle
b7eac745fa Merge remote branch 'remotes/sirrus/master' 2011-05-02 11:09:11 -05:00
Andreas Rehm
9cff221acb Some more Fixes for NSIS Installer.
Signed-off-by: Andreas Rehm <rehm@itsolution2.de>
2011-04-30 20:45:41 +02:00
Andreas Rehm
3592fbc418 Autmatically move to Roaming profile 2011-04-30 19:33:45 +02:00
Andreas Rehm
605cb4048b Fixed issue 38 - config should be stored in Roaming AppData.
Fixed two settings - should be user settings.
2011-04-30 18:55:18 +02:00
Andreas Rehm
9cb33c4fde Fixed Instlaller - Links for all users. 2011-04-30 18:43:17 +02:00
Riley McArdle
1cbcffdd34 Merge commit '19f2d6c6aa608c7ffa9dc813c3798fd7835d83e3' and reworded CHANGELOG.TXT 2011-04-27 12:28:34 -05:00
thrilleratplay
19f2d6c6aa *Clipboard call not passing WINPROC message when VNC connection existed. Changed order of raise event and resending WM_DRAWCLIPBOARD.
*Updated Changelog
2011-04-27 02:41:50 -04:00
Riley McArdle
e0b8d8fc9d Fixed missing text in en-US locale. Hid unfinished toolbar. 2011-04-25 10:54:58 -05:00
Riley McArdle
ee3f0bfa3a Fixed build configuration for portable release. 2011-04-25 00:14:46 -05:00
Riley McArdle
e54097cea6 Updated copyright date. 2011-04-25 00:00:59 -05:00
Riley McArdle
0db6ea0c46 Merge commit '55968e5e8530b9bbcf613c51dd25f2f80e9db99a' 2011-04-24 23:42:37 -05:00
thrilleratplay
55968e5e85 Bug Fix: Additional Keypress correction for VNCSharpNG
Bug Fix: Added proper hook to update clipboard for VNC connections
Feature Request: CTRL-Shift-Tab changes to previous connection tab
2011-04-06 14:08:12 -04:00
Andreas Rehm
83b7f111b2 Edited changelog.txt 2011-04-02 00:42:17 +02:00
Andreas Rehm
af8b6c9f07 Merge remote branch 'RileyMcArdle/master'
Conflicts:
	BUILD.CMD
	mRemoteV1/App/App.Runtime.vb
	mRemoteV1/CHANGELOG.TXT
	mRemoteV1/Connection/Connection.Protocol.VNC.vb
	mRemoteV1/Forms/frmMain.vb
	mRemoteV1/UI/UI.Window.Connection.vb
2011-04-02 00:30:09 +02:00
Riley McArdle
48ec5cdb01 Fixed encoding and added dates to CHANGELOG.TXT. 2011-03-31 20:51:40 -05:00
Riley McArdle
7923991fbf Added Tom Hiller and Andreas Rehm to CREDITS.TXT. Contributors are listed in alphabetical order. 2011-03-31 20:24:47 -05:00
Riley McArdle
e11b25f22b Revert changes to mRemoteV1/mRemoteV1.vbproj from commit 2eb2dc56bd. 2011-03-31 20:04:43 -05:00
Andreas Rehm
e1274cb69a Bugfix Weifen Luo should not show up with crownwood link 2011-03-31 19:45:58 -05:00
Andreas Rehm
6ea439e08b Weifen Luo should be mentioned on the about page
Default Panel is now translated and no longer set in app.config
2011-03-31 19:45:57 -05:00
Andreas Rehm
e06d914d0a Allow pre and post extApp for integrated Apps 2011-03-31 19:45:57 -05:00
Andreas Rehm
1a1e2452f3 Code optimization and bugfix #22 2011-03-31 19:45:57 -05:00
Andreas Rehm
611d352103 Debug infos only for Debug Config 2011-03-31 19:45:57 -05:00
Andreas Rehm
bfe68ad3eb Enabled and fixed Tab and Shift-Tab key combination in PropertyGrid 2011-03-31 19:45:57 -05:00
Andreas Rehm
6f1446fec7 Tab and Shift-Tab to cycle through property grid entries 2011-03-31 19:45:57 -05:00
Andreas Rehm
3c449f9f3d Bugfix: RDP protocol string missing 2011-03-31 19:45:56 -05:00
Andreas Rehm
25ef36d8a3 Update WeifenLuo WinFormsUI Docking library to version 2.5 RC1 2011-03-31 19:45:56 -05:00
Andreas Rehm
101ec68f76 Some fixes on german resources and notes. 2011-03-31 19:45:56 -05:00
Riley McArdle
a798785083 Merge remote branch 'remotes/thrilleratplay/master' 2011-03-31 17:33:28 -05:00
Riley McArdle
07ea389464 Added VNC clipboard fix from thrilleratplay commit 2eb2dc56bd. 2011-03-31 17:23:13 -05:00
Riley McArdle
6509de486e Fix incomplete merge of BUILD.CMD. 2011-03-31 17:12:52 -05:00
thrilleratplay
2f60379f3c Feature Request:
*Added class to create,catch and destroy system hot keys
*Added event handle for hot key CTRL-TAB to change advance to the next tab for the visible panel if mRemoteNG, internal instance of Putty or internal instance of an external application is active.  On last tab, the hot key will set focus to the first tab in the panel

Signed-off-by: thrilleratplay <thilleratplay@gmail.com>
2011-03-25 02:39:29 -04:00
thrilleratplay
5edbe78672 Bug Fix:
*VNC client missing delegate to populate remote clipboard
*Updating version of VncSharpNG.dll with corrected modifier key handling.  Corrects Windows style Copy\Cut\Paste

Signed-off-by: thrilleratplay <thilleratplay@gmail.com>
2011-03-19 14:50:29 -04:00
Andreas Rehm
94aa5357ed Bugfix Weifen Luo should not show up with crownwood link 2011-02-20 14:40:04 +01:00
Andreas Rehm
0477af479d Weifen Luo should be mentioned on the about page
Default Panel is now translated and no longer set in app.config
2011-02-20 14:28:40 +01:00
Andreas Rehm
2f296d691c Allow pre and post extApp for integrated Apps 2011-02-20 12:50:18 +01:00
Andreas Rehm
5b0ba26ecd Code optimization and bugfix #22 2011-02-20 12:19:05 +01:00
thrilleratplay
844b2e9575 Merge branch 'master' of github.com:Thrilleratplay/mRemoteNG 2011-02-19 13:03:50 -05:00
Andreas Rehm
69b4633e9e Debug infos only for Debug Config 2011-02-19 18:17:40 +01:00
Andreas Rehm
00f14684bb Enabled and fixed Tab and Shift-Tab key combination in PropertyGrid 2011-02-19 18:10:10 +01:00
Riley McArdle
2eb2dc56bd Fixed build script to properly create ZIP files. Added progress messages to build script.
Signed-off-by: thrilleratplay <thilleratplay@gmail.com>
2011-02-19 01:32:38 -05:00
Andreas Rehm
661c930d51 Tab and Shift-Tab to cycle through property grid entries 2011-02-19 00:53:30 +01:00
Andreas Rehm
9cf6086518 Bugfix build script merge 2011-02-18 00:09:09 +01:00
Andreas Rehm
7353852429 Bugfix: RDP protocol string missing 2011-02-17 23:43:30 +01:00
Andreas Rehm
2a112d1cc3 Update WeifenLuo WinFormsUI Docking library to version 2.5 RC1 2011-02-17 23:43:30 +01:00
Andreas Rehm
526412b40d Some fixes on german resources and notes. 2011-02-17 23:43:29 +01:00
Riley McArdle
3def5f2a37 Fixed build script to properly create ZIP files. Added progress messages to build script. 2011-01-22 08:13:58 +08:00
Riley McArdle
43d6a64576 Fixed build script to properly create ZIP files. Added progress messages to build script. 2010-12-02 14:36:54 -06:00
Andreas Rehm
f24b1b5cec Added RDP Reconnection Count Setting and fixed TabIndexes of Connection options page 2010-08-01 01:12:44 +08:00
Andreas Rehm
e7abe6b4cf Bufix Gecko Translation 2010-08-01 01:12:44 +08:00
Andreas Rehm
18be51ec88 Translation of PuTTY Settings 2010-08-01 01:12:44 +08:00
Andreas Rehm
32ae93b760 Bugfix - Inheritance for InheritRDGatewayUseConnectionCredentials was not loaded with conf.Load 2010-08-01 01:12:44 +08:00
Andreas Rehm
9520fbf019 Removed some strings for inheritance - rewritten to use string.format 2010-08-01 01:12:43 +08:00
Andreas Rehm
7d2a4f05f1 Rewrite of new configuration creation to vb code
* Translation of Connections and New Connections
2010-08-01 01:12:43 +08:00
Andreas Rehm
4ec984d22e Bugfixes in rdgateway inheritance, new translations, rewrite of inheritance / exclusion
* some more translations
* rdgateway inheritance implemented and fixed
* inheritance / exclusion of properties rewritten to use a list instead of string to array
  * this fixes some bugs that occured due to missing semicolons
2010-08-01 01:12:43 +08:00
Andreas Rehm
0eedd9f6ae Reorganized installer script
All language based settings reside inside of Installer\Language folder and will be included by Installer\Language\languages.nsi
2010-08-01 01:12:42 +08:00
Andreas Rehm
93f77e33c2 Prepared installer translations 2010-08-01 01:12:41 +08:00
Andreas Rehm
ea203ed539 Changed some spelling errors, modified some translations 2010-08-01 01:12:41 +08:00
Andreas Rehm
6d5d6f0247 Translation of quick connect added / and used consequently 2010-08-01 01:12:41 +08:00
Andreas Rehm
57c0236c66 More translations in App.Runtime, changed logfile syntax 2010-08-01 01:12:40 +08:00
Andreas Rehm
e1623a8157 NSIS script translations 2010-08-01 01:12:40 +08:00
Andreas Rehm
f06c4f7e6b Removed scary CultureInfo switching and added a quickfix for mRemoteNG namespace refactoring
ConfVersion was converted to an en-US numberformat by switching the CurrentCulture - this is not the best practice - replaced by ToString(new CultureInfo("en-US").

The refactoring done in commit e08c88db5f resulted in an unusable pnlLayout.xml (panel persistence) file. Added a quickfix to convert that file.
2010-08-01 01:12:40 +08:00
Andreas Rehm
be3c8de3a2 Removed hardcoded switch to de-DE 2010-08-01 01:12:37 +08:00
Andreas Rehm
f8fb72f455 Fixed en-US resx Fallback to en-GB (default) 2010-08-01 01:12:37 +08:00
Andreas Rehm
1700f1a940 And even more translations 2010-08-01 01:12:37 +08:00
Andreas Rehm
b32617b114 More translations for Connections.Protocol.RDP.vb 2010-08-01 01:12:36 +08:00
Andreas Rehm
7a25e3cc2e Refactoring and even more translations
* removed unneeded Imports
* renamed namespace to mRemoteNG
* changed Logfile path to %USERPROFILE%\AppData\Local\mRemoteNG\mRemoteNG.log
* fixed mRemoteNG.exe.config
* added more ignores to .gitignore
2010-08-01 01:12:36 +08:00
Andreas Rehm
29b1b90ae6 Even more localization
Changed button size in options/update check
2010-08-01 01:12:31 +08:00
Andreas Rehm
9852293d98 More localization
* translated/moved more strings to resx
* resized Port Scan TextFields
2010-08-01 01:12:30 +08:00
Andreas Rehm
49c758a8a6 Language fixes
* fixed all enum translations
* replaced hardcoded strings with resx Resources
2010-08-01 01:12:30 +08:00
Andreas Rehm
89fee5b579 Added still missing translations
Modified NSIS Installer and BUILD Script Versions to 1.64
2010-08-01 01:12:29 +08:00
Andreas Rehm
ccebf41645 Changed/Fixed language based data
* Fixed some german grammer mistakes
* Changed some weird translations
* moved all language strings to resx files
* added missing translations
* removed old language classes
2010-08-01 01:12:29 +08:00
Andreas Rehm
4d1003cfec Added RDP Reconnection Count Setting and fixed TabIndexes of Connection options page 2010-06-22 12:58:11 +02:00
Andreas Rehm
bd6c07e9d0 Bufix Gecko Translation 2010-06-22 01:22:24 +02:00
Andreas Rehm
45b8e5c10f Translation of PuTTY Settings 2010-05-28 19:36:45 +02:00
Andreas Rehm
176bc52f62 Bugfix - Inheritance for InheritRDGatewayUseConnectionCredentials was not loaded with conf.Load 2010-05-25 22:01:59 +02:00
Andreas Rehm
98293c99aa Removed some strings for inheritance - rewritten to use string.format 2010-05-25 20:01:16 +02:00
Andreas Rehm
9878acff9a Rewrite of new configuration creation to vb code
* Translation of Connections and New Connections
2010-05-25 18:56:49 +02:00
Andreas Rehm
e874292016 Bugfixes in rdgateway inheritance, new translations, rewrite of inheritance / exclusion
* some more translations
* rdgateway inheritance implemented and fixed
* inheritance / exclusion of properties rewritten to use a list instead of string to array
  * this fixes some bugs that occured due to missing semicolons
2010-05-25 18:21:48 +02:00
Andreas Rehm
280c6678cb Reorganized installer script
All language based settings reside inside of Installer\Language folder and will be included by Installer\Language\languages.nsi
2010-05-20 19:23:58 +02:00
Andreas Rehm
dc7460cbaa Prepared installer translations 2010-05-20 19:18:25 +02:00
Andreas Rehm
4bd4a604e7 Changed some spelling errors, modified some translations 2010-05-20 16:04:32 +02:00
Andreas Rehm
16e2c927bb Translation of quick connect added / and used consequently 2010-05-20 15:50:09 +02:00
Andreas Rehm
687fe28820 More translations in App.Runtime, changed logfile syntax 2010-05-18 18:15:52 +02:00
Andreas Rehm
ee70bea036 NSIS script translations 2010-05-18 01:12:51 +02:00
Andreas Rehm
c917193575 Removed scary CultureInfo switching and added a quickfix for mRemoteNG namespace refactoring
ConfVersion was converted to an en-US numberformat by switching the CurrentCulture - this is not the best practice - replaced by ToString(new CultureInfo("en-US").

The refactoring done in commit e08c88db5f resulted in an unusable pnlLayout.xml (panel persistence) file. Added a quickfix to convert that file.
2010-05-18 00:13:38 +02:00
Andreas Rehm
b1d40f2c74 Removed hardcoded switch to de-DE 2010-05-17 19:11:17 +02:00
Andreas Rehm
a255d24867 Fixed en-US resx Fallback to en-GB (default) 2010-05-17 19:10:25 +02:00
Andreas Rehm
5e726472bc And even more translations 2010-05-17 18:55:05 +02:00
Andreas Rehm
6ab8bb4a58 More translations for Connections.Protocol.RDP.vb 2010-05-17 17:31:12 +02:00
Andreas Rehm
e08c88db5f Refactoring and even more translations
* removed unneeded Imports
* renamed namespace to mRemoteNG
* changed Logfile path to %USERPROFILE%\AppData\Local\mRemoteNG\mRemoteNG.log
* fixed mRemoteNG.exe.config
* added more ignores to .gitignore
2010-05-16 19:30:27 +02:00
Andreas Rehm
96e6752af3 Even more localization
Changed button size in options/update check
2010-05-16 05:45:20 +02:00
Andreas Rehm
e71bf93052 More localization
* translated/moved more strings to resx
* resized Port Scan TextFields
2010-05-16 05:07:06 +02:00
Andreas Rehm
8232f10e14 Language fixes
* fixed all enum translations
* replaced hardcoded strings with resx Resources
2010-05-14 16:43:30 +02:00
Andreas Rehm
cb13433102 Added still missing translations
Modified NSIS Installer and BUILD Script Versions to 1.64
2010-05-14 16:01:24 +02:00
Andreas Rehm
3ead76ab77 Changed/Fixed language based data
* Fixed some german grammer mistakes
* Changed some weird translations
* moved all language strings to resx files
* added missing translations
* removed old language classes
2010-05-14 04:41:33 +02:00
Riley McArdle
ecf3ecbcf0 More localization work. 2010-03-16 17:28:53 -05:00
Riley McArdle
26afcaeef2 Added LocalizedCategory attribute. More localization. 2010-02-20 21:15:25 -06:00
Riley McArdle
0c1d69946d Derived attributes for DisplayName and Description to enable localization of property grids. 2010-02-20 19:52:08 -06:00
Riley McArdle
5e584cf4c7 More localization. 2010-02-20 18:54:03 -06:00
Riley McArdle
6301fcc320 More localization improvements. 2010-02-20 13:49:09 -06:00
Riley McArdle
a1fc6c0a0d Moved additional localization strings to satellite assemblies. 2010-02-18 00:06:17 -06:00
Riley McArdle
98460eea2b Started work on moving localization to satellite assemblies. 2010-02-11 21:17:44 -06:00
Riley McArdle
de0142dd37 Started working on UI improvements. 2010-02-11 18:26:29 -06:00
116 changed files with 17834 additions and 5145 deletions

22
.gitignore vendored
View File

@@ -1,10 +1,22 @@
Release
mRemoteV1/bin
mRemoteV1/obj
mRemoteV1/publish
Release/
mRemoteV1/bin/
mRemoteV1/obj/
mRemoteV1/publish/
*.pfx
*.suo
*.vbproj.user
Thumbs.db
_ReSharper.*
[Dd]ebug/
_Re[Ss]harper.*
*.resharper
*.resharper.user
*.suo
*.cache
*~
*.swp
*.user*
*.pidb
*.gpState
_UpgradeReport_Files/
Backup/
UpgradeLog.XML

View File

@@ -1,32 +1,82 @@
@echo off
SET VCVARSALL="%ProgramFiles(x86)%\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"
SET DEVENV="devenv.exe"
SET MAKENSIS="%ProgramFiles(x86)%\NSIS\makensis.exe"
SET RAR="%ProgramFiles%\WinRAR\Rar.exe"
SET BINARYZIP="%~dp0\Release\mRemoteNG-1.63.zip"
SET PORTABLEZIP="%~dp0\Release\mRemoteNG-Portable-1.63.zip"
setlocal enabledelayedexpansion
set VERSIONTAG=
set VCVARSALL="%ProgramFiles(x86)%\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"
set DEVENV="devenv.exe"
set MAKENSIS="%ProgramFiles(x86)%\NSIS\Unicode\makensis.exe"
set RAR="%ProgramFiles%\WinRAR\WinRAR.exe"
set SIGNCMD=signtool.exe sign /n "Next Generation Software" /sha1 "c4ece717747eb7d0cac824f6c7431e5237138b02" /t http://timestamp.verisign.com/scripts/timstamp.dll
rem Windows Sysinternals Sigcheck from http://technet.microsoft.com/en-us/sysinternals/bb897441
set SIGCHECK="%ProgramFiles(x86)%\Sigcheck\sigcheck.exe"
call %VCVARSALL% x86
rmdir /s /q "%~dp0\mRemoteV1\bin"
rmdir /s /q "%~dp0\mRemoteV1\obj"
rmdir /s /q "%~dp0\mRemoteV1\bin" > nul 2>&1
rmdir /s /q "%~dp0\mRemoteV1\obj" > nul 2>&1
echo Building release version...
%DEVENV% "%~dp0\mRemoteV1.sln" /build "Release"
echo Building portable version...
%DEVENV% "%~dp0\mRemoteV1.sln" /build "Release Portable"
mkdir "%~dp0\Release"
echo Signing binaries...
%SIGNCMD% "%~dp0\mRemoteV1\bin\Release\de\mRemoteNG.resources.dll" "%~dp0\mRemoteV1\bin\Release\en-US\mRemoteNG.resources.dll" "%~dp0\mRemoteV1\bin\Release\fr\mRemoteNG.resources.dll" "%~dp0\mRemoteV1\bin\Release\AxInterop.WFICALib.dll" "%~dp0\mRemoteV1\bin\Release\AxInterop.MSTSCLib.dll" "%~dp0\mRemoteV1\bin\Release\Interop.WFICALib.dll" "%~dp0\mRemoteV1\bin\Release\Interop.ShDocVw.dll" "%~dp0\mRemoteV1\bin\Release\Interop.MSTSCLib.dll" "%~dp0\mRemoteV1\bin\Release\Interop.EOLWTSCOM.dll" "%~dp0\mRemoteV1\bin\Release\Interop.EOLWTSCOM.dll" "%~dp0\mRemoteV1\bin\Release\mRemoteNG.exe" "%~dp0\mRemoteV1\bin\Release Portable\de\mRemoteNG.resources.dll" "%~dp0\mRemoteV1\bin\Release Portable\en-US\mRemoteNG.resources.dll" "%~dp0\mRemoteV1\bin\Release Portable\fr\mRemoteNG.resources.dll" "%~dp0\mRemoteV1\bin\Release Portable\AxInterop.WFICALib.dll" "%~dp0\mRemoteV1\bin\Release Portable\AxInterop.MSTSCLib.dll" "%~dp0\mRemoteV1\bin\Release Portable\Interop.WFICALib.dll" "%~dp0\mRemoteV1\bin\Release Portable\Interop.ShDocVw.dll" "%~dp0\mRemoteV1\bin\Release Portable\Interop.MSTSCLib.dll" "%~dp0\mRemoteV1\bin\Release Portable\Interop.EOLWTSCOM.dll" "%~dp0\mRemoteV1\bin\Release Portable\Interop.EOLWTSCOM.dll" "%~dp0\mRemoteV1\bin\Release Portable\mRemoteNG.exe"
%MAKENSIS% "%~dp0\Installer\mRemote.nsi"
mkdir "%~dp0\Release" > nul 2>&1
del /f /q %BINARYZIP%
echo Getting product version...
set VERSIONNSH="%~dp0\Release\Version.nsh"
set SIGCHECK=!SIGCHECK:"=^"!
set SIGCHECK=!SIGCHECK: =^^ !
set SIGCHECK=!SIGCHECK:(=^^(!
set SIGCHECK=!SIGCHECK:)=^^)!
for /F "usebackq delims=. tokens=1-4" %%i in (`!SIGCHECK! /accepteula -q -n "%~dp0\mRemoteV1\bin\Release\mRemoteNG.exe"`) do (
set PRODUCT_VERSION_SHORT=%%i.%%j
echo ^^!define PRODUCT_VERSION "%%i.%%j.%%k.%%l" > %VERSIONNSH%
echo ^^!define PRODUCT_VERSION_SHORT "%%i.%%j" >> %VERSIONNSH%
echo ^^!define PRODUCT_VERSION_MAJOR "%%i" >> %VERSIONNSH%
echo ^^!define PRODUCT_VERSION_MINOR "%%j" >> %VERSIONNSH%
)
echo Version is %PRODUCT_VERSION_SHORT%
%RAR% a -m5 -r -ep1 %BINARYZIP% "%~dp0\mRemoteV1\bin\Release\*.*"
%RAR% a -m5 -r -ep1 %BINARYZIP% "%~dp0\Installer\Dependencies\*.*"
%RAR% a -m5 -ep %BINARYZIP% "%~dp0\*.TXT"
echo Creating installer package...
if defined VERSIONTAG (
%MAKENSIS% /DPRODUCT_VERSION_TAG=%VERSIONTAG% "%~dp0\Installer\mRemote.nsi"
del /f /q %PORTABLEZIP%
set INSTALLEREXE="%~dp0\Release\mRemoteNG-Installer-%PRODUCT_VERSION_SHORT%-%VERSIONTAG%.exe"
set BINARYZIP="%~dp0\Release\mRemoteNG-%PRODUCT_VERSION_SHORT%-%VERSIONTAG%.zip"
set PORTABLEZIP="%~dp0\Release\mRemoteNG-Portable-%PRODUCT_VERSION_SHORT%-%VERSIONTAG%.zip"
) else (
%MAKENSIS% "%~dp0\Installer\mRemote.nsi"
%RAR% a -m5 -r -ep1 %PORTABLEZIP% "%~dp0\mRemoteV1\bin\Release Portable\*.*"
%RAR% a -m5 -r -ep1 %PORTABLEZIP% "%~dp0\Installer\Dependencies\*.*"
%RAR% a -m5 -ep %PORTABLEZIP% "%~dp0\*.TXT"
set INSTALLEREXE="%~dp0\Release\mRemoteNG-Installer-%PRODUCT_VERSION_SHORT%.exe"
set BINARYZIP="%~dp0\Release\mRemoteNG-%PRODUCT_VERSION_SHORT%.zip"
set PORTABLEZIP="%~dp0\Release\mRemoteNG-Portable-%PRODUCT_VERSION_SHORT%.zip"
)
del %VERSIONNSH%
echo Signing installer package...
%SIGNCMD% %INSTALLEREXE%
echo Creating release ZIP file...
del /f /q %BINARYZIP% > nul 2>&1
%RAR% a -m5 -r -ep1 -afzip -inul %BINARYZIP% "%~dp0\mRemoteV1\bin\Release\*.*"
%RAR% a -m5 -r -ep1 -afzip -inul %BINARYZIP% "%~dp0\Installer\Dependencies\*.*"
%RAR% a -m5 -ep -afzip -inul %BINARYZIP% "%~dp0\*.TXT"
echo Creating portable ZIP file...
del /f /q %PORTABLEZIP% > nul 2>&1
%RAR% a -m5 -r -ep1 -afzip -inul %PORTABLEZIP% "%~dp0\mRemoteV1\bin\Release Portable\*.*"
%RAR% a -m5 -r -ep1 -afzip -inul %PORTABLEZIP% "%~dp0\Installer\Dependencies\*.*"
%RAR% a -m5 -ep -afzip -inul %PORTABLEZIP% "%~dp0\*.TXT"
echo.
echo Build process complete.
echo.
pause

View File

@@ -1,8 +1,13 @@
Contributors
============
Lionel Caignec
Felix Deimel
Holger Henke
Tom Hiller
Riley McArdle
Apisitt Rattana
Andreas Rehm
David Vidmar

Binary file not shown.

View File

@@ -0,0 +1,22 @@
; Czech installer translation
; Start mRemoteNG after installation
LangString LaunchMremoteNow ${LANG_CZECH} "mRemoteNG run CZECH message"
; Installer Language
LangString InstallerLanguage ${LANG_CZECH} "Installer Language"
; Select installer Language
LangString SelectInstallerLanguage ${LANG_CZECH} "Please select the language of the installer"
; Requires .NET Framework
LangString RequiresNetFramework ${LANG_CZECH} "mRemoteNG requires Microsoft .NET Framework 2.0."
; User needs to be Admin
LangString RequiresAdminUser ${LANG_CZECH} "You must be a member of the 'Power Users' or 'Administrators' group to install mRemoteNG."
; Start Menu items
LangString CreditsLinkName ${LANG_CZECH} "Credits"
LangString CopyingLinkName ${LANG_CZECH} "License"
LangString UninstallLinkName ${LANG_CZECH} "Uninstall"
LangString ChangeLogLinkName ${LANG_CZECH} "Version History"

View File

@@ -0,0 +1,22 @@
; Dutch installer translation
; Start mRemoteNG after installation
LangString LaunchMremoteNow ${LANG_DUTCH} "mRemoteNG run DUTCH message"
; Installer Language
LangString InstallerLanguage ${LANG_DUTCH} "Installer Language"
; Select installer Language
LangString SelectInstallerLanguage ${LANG_DUTCH} "Please select the language of the installer"
; Requires .NET Framework
LangString RequiresNetFramework ${LANG_DUTCH} "mRemoteNG requires Microsoft .NET Framework 2.0."
; User needs to be Admin
LangString RequiresAdminUser ${LANG_DUTCH} "You must be a member of the 'Power Users' or 'Administrators' group to install mRemoteNG."
; Start Menu items
LangString CreditsLinkName ${LANG_DUTCH} "Credits"
LangString CopyingLinkName ${LANG_DUTCH} "License"
LangString UninstallLinkName ${LANG_DUTCH} "Uninstall"
LangString ChangeLogLinkName ${LANG_DUTCH} "Version History"

View File

@@ -0,0 +1,22 @@
; English installer translation
; Start mRemoteNG after installation
LangString LaunchMremoteNow ${LANG_ENGLISH} "Launch mRemoteNG Now"
; Installer Language
LangString InstallerLanguage ${LANG_ENGLISH} "Installer Language"
; Select installer Language
LangString SelectInstallerLanguage ${LANG_ENGLISH} "Please select the language of the installer"
; Requires .NET Framework
LangString RequiresNetFramework ${LANG_ENGLISH} "mRemoteNG requires Microsoft .NET Framework 2.0."
; User needs to be Admin
LangString RequiresAdminUser ${LANG_ENGLISH} "You must be a member of the 'Power Users' or 'Administrators' group to install mRemoteNG."
; Start Menu items
LangString CreditsLinkName ${LANG_ENGLISH} "Credits"
LangString CopyingLinkName ${LANG_ENGLISH} "License"
LangString UninstallLinkName ${LANG_ENGLISH} "Uninstall"
LangString ChangeLogLinkName ${LANG_ENGLISH} "Version History"

View File

@@ -0,0 +1,22 @@
; French installer translation
; Start mRemoteNG after installation
LangString LaunchMremoteNow ${LANG_FRENCH} "mRemoteNG run FRENCH message"
; Installer Language
LangString InstallerLanguage ${LANG_FRENCH} "Installer Language"
; Select installer Language
LangString SelectInstallerLanguage ${LANG_FRENCH} "Please select the language of the installer"
; Requires .NET Framework
LangString RequiresNetFramework ${LANG_FRENCH} "mRemoteNG requires Microsoft .NET Framework 2.0."
; User needs to be Admin
LangString RequiresAdminUser ${LANG_FRENCH} "You must be a member of the 'Power Users' or 'Administrators' group to install mRemoteNG."
; Start Menu items
LangString CreditsLinkName ${LANG_FRENCH} "Credits"
LangString CopyingLinkName ${LANG_FRENCH} "License"
LangString UninstallLinkName ${LANG_FRENCH} "Uninstall"
LangString ChangeLogLinkName ${LANG_FRENCH} "Version History"

View File

@@ -0,0 +1,22 @@
; German installer translation
; Start mRemoteNG after installation
LangString LaunchMremoteNow ${LANG_GERMAN} "mRemoteNG jetzt Starten"
; Installer Language
LangString InstallerLanguage ${LANG_GERMAN} "Installationsprogamm Sprache"
; Select installer Language
LangString SelectInstallerLanguage ${LANG_GERMAN} "Bitte w<>hlen Sie die Sprache f<>r das Installationsprogramm"
; Requires .NET Framework
LangString RequiresNetFramework ${LANG_GERMAN} "mRemoteNG ben<65>tigt das Microsoft .NET Framework 2.0."
; User needs to be Admin
LangString RequiresAdminUser ${LANG_GERMAN} "Sie m<>ssen Mitglied der Grupper 'Power Users' or 'Administratoren' sein, damit Sie mRemoteNG installieren k<>nnen."
; Start Menu items
LangString CreditsLinkName ${LANG_GERMAN} "Credits"
LangString CopyingLinkName ${LANG_GERMAN} "License"
LangString UninstallLinkName ${LANG_GERMAN} "Uninstall"
LangString ChangeLogLinkName ${LANG_GERMAN} "Version History"

View File

@@ -0,0 +1,31 @@
!define LanguageNameEnglish "English"
!insertmacro MUI_LANGUAGE "English"
!include "Language\english.nsi"
!define LanguageNameCzech "Čeština"
!insertmacro MUI_LANGUAGE "Czech"
!include "Language\czech.nsi"
!define LanguageNameGerman "Deutsch"
!insertmacro MUI_LANGUAGE "German"
!include "Language\german.nsi"
!define LanguageNameSpanish "Español"
!insertmacro MUI_LANGUAGE "Spanish"
!include "Language\spanish.nsi"
!define LanguageNameFrench "Français"
!insertmacro MUI_LANGUAGE "French"
!include "Language\french.nsi"
!define LanguageNameDutch "Nederlands"
!insertmacro MUI_LANGUAGE "Dutch"
!include "Language\dutch.nsi"
!define LanguageNamePolish "Polski"
!insertmacro MUI_LANGUAGE "Polish"
!include "Language\polish.nsi"
!define LanguageNameThai "ภาษาไทย"
!insertmacro MUI_LANGUAGE "Thai"
!include "Language\thai.nsi"

View File

@@ -0,0 +1,22 @@
; Polish installer translation
; Start mRemoteNG after installation
LangString LaunchMremoteNow ${LANG_POLISH} "mRemoteNG run POLISH message"
; Installer Language
LangString InstallerLanguage ${LANG_POLISH} "Installer Language"
; Select installer Language
LangString SelectInstallerLanguage ${LANG_POLISH} "Please select the language of the installer"
; Requires .NET Framework
LangString RequiresNetFramework ${LANG_POLISH} "mRemoteNG requires Microsoft .NET Framework 2.0."
; User needs to be Admin
LangString RequiresAdminUser ${LANG_POLISH} "You must be a member of the 'Power Users' or 'Administrators' group to install mRemoteNG."
; Start Menu items
LangString CreditsLinkName ${LANG_POLISH} "Credits"
LangString CopyingLinkName ${LANG_POLISH} "License"
LangString UninstallLinkName ${LANG_POLISH} "Uninstall"
LangString ChangeLogLinkName ${LANG_POLISH} "Version History"

View File

@@ -0,0 +1,22 @@
; Spanish installer translation
; Start mRemoteNG after installation
LangString LaunchMremoteNow ${LANG_SPANISH} "mRemoteNG run SPANISH message"
; Installer Language
LangString InstallerLanguage ${LANG_SPANISH} "Installer Language"
; Select installer Language
LangString SelectInstallerLanguage ${LANG_SPANISH} "Please select the language of the installer"
; Requires .NET Framework
LangString RequiresNetFramework ${LANG_SPANISH} "mRemoteNG requires Microsoft .NET Framework 2.0."
; User needs to be Admin
LangString RequiresAdminUser ${LANG_SPANISH} "You must be a member of the 'Power Users' or 'Administrators' group to install mRemoteNG."
; Start Menu items
LangString CreditsLinkName ${LANG_SPANISH} "Credits"
LangString CopyingLinkName ${LANG_SPANISH} "License"
LangString UninstallLinkName ${LANG_SPANISH} "Uninstall"
LangString ChangeLogLinkName ${LANG_SPANISH} "Version History"

View File

@@ -0,0 +1,23 @@
; Thai installer translation
; Contributed by Apisitt Rattana
; Start mRemoteNG after installation
LangString LaunchMremoteNow ${LANG_THAI} "ขณะนี้กำลังติดตั้ง mRemoteNG"
; Installer Language
LangString InstallerLanguage ${LANG_THAI} "ภาษาสำหรับการติดตั้ง"
; Select installer Language
LangString SelectInstallerLanguage ${LANG_THAI} "กรุณาเลือกภาษาสำหรับการติดตั้ง"
; Requires .NET Framework
LangString RequiresNetFramework ${LANG_THAI} "mRemoteNG มีความต้องการ Microsoft .NET Framework 2.0. เป็นพื้นฐาน"
; User needs to be Admin
LangString RequiresAdminUser ${LANG_THAI} "คุณต้องเป็นสมาชิกในกลุ่มของ 'Power Users' หรือ 'Administrators' เพื่อการติดตั้ง mRemoteNG"
; Start Menu items
LangString CreditsLinkName ${LANG_THAI} "Credits"
LangString CopyingLinkName ${LANG_THAI} "License"
LangString UninstallLinkName ${LANG_THAI} "Uninstall"
LangString ChangeLogLinkName ${LANG_THAI} "Version History"

BIN
Installer/RecycleBin.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

BIN
Installer/Setup_Install.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 83 KiB

View File

@@ -2,33 +2,40 @@
!include "WordFunc.nsh"
!insertmacro VersionCompare
!DEFINE PRODUCT_VERSION_MAJOR 1
!DEFINE PRODUCT_VERSION_MINOR 63
!include "..\Release\Version.nsh"
!DEFINE PRODUCT_VERSION "${PRODUCT_VERSION_MAJOR}.${PRODUCT_VERSION_MINOR}"
!DEFINE PRODUCT_VERSION_LONG "${PRODUCT_VERSION_MAJOR}.${PRODUCT_VERSION_MINOR}.0.0"
; This will be passed in using the /D switch by BUILD.CMD
!ifdef PRODUCT_VERSION_TAG
!define PRODUCT_VERSION_FRIENDLY "${PRODUCT_VERSION_SHORT}"
!define PRODUCT_VERSION_TAGGED "${PRODUCT_VERSION_SHORT}-${PRODUCT_VERSION_TAG}"
!else
!define PRODUCT_VERSION_FRIENDLY "${PRODUCT_VERSION_SHORT}"
!define PRODUCT_VERSION_TAGGED "${PRODUCT_VERSION_SHORT}"
!endif
; Global Variables
Var InstallDotNET
; Basic Config
Name "mRemoteNG ${PRODUCT_VERSION}"
OutFile "..\Release\mRemoteNG-Installer-${PRODUCT_VERSION}.exe"
Name "mRemoteNG ${PRODUCT_VERSION_FRIENDLY}"
OutFile "..\Release\mRemoteNG-Installer-${PRODUCT_VERSION_TAGGED}.exe"
SetCompressor /SOLID lzma
InstallDir "$PROGRAMFILES\mRemoteNG"
InstallDirRegKey HKLM "Software\mRemoteNG" "InstallPath"
RequestExecutionLevel admin
; Version Information
VIProductVersion ${PRODUCT_VERSION_LONG}
!DEFINE LANG_ENGLISH "1033-English"
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "mRemoteNG"
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductVersion" ${PRODUCT_VERSION_LONG}
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "Copyright <EFBFBD> 2007-2010 Felix Deimel, Riley McArdle"
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "mRemoteNG ${PRODUCT_VERSION} Installer"
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" ${PRODUCT_VERSION_LONG}
VIProductVersion ${PRODUCT_VERSION}
VIAddVersionKey "CompanyName" "Next Generation Software"
VIAddVersionKey "ProductName" "mRemoteNG"
VIAddVersionKey "ProductVersion" ${PRODUCT_VERSION}
VIAddVersionKey "LegalCopyright" "Copyright © 2007-2009 Felix Deimel, 2010-2011 Riley McArdle"
VIAddVersionKey "FileDescription" "mRemoteNG ${PRODUCT_VERSION_FRIENDLY} Installer"
VIAddVersionKey "FileVersion" ${PRODUCT_VERSION}
; Design
!define MUI_ICON "Setup_Install.ico"
!define MUI_UNICON "RecycleBin.ico"
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_BITMAP "header.bmp" ; optional
!define MUI_HEADERIMAGE_BITMAP_NOSTRETCH
@@ -48,7 +55,6 @@ VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" ${PRODUCT_VERSION_LONG}
; Finish Page
!define MUI_FINISHPAGE_RUN_NOTCHECKED
!define MUI_FINISHPAGE_RUN_Text "Launch mRemoteNG Now"
!define MUI_FINISHPAGE_RUN "$INSTDIR\mRemoteNG.exe"
!insertmacro MUI_PAGE_FINISH
@@ -56,10 +62,75 @@ VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" ${PRODUCT_VERSION_LONG}
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
; Set Language
!insertmacro MUI_LANGUAGE "English"
; Get Languages
!include "Language\languages.nsi"
; Set finish page text
!define MUI_FINISHPAGE_RUN_Text "$(LaunchMremoteNow)"
Function .onInit
ClearErrors
UserInfo::GetName
IfErrors Win9x
Pop $0
UserInfo::GetAccountType
Pop $1
# GetOriginalAccountType will check the tokens of the original user of the
# current thread/process. If the user tokens were elevated or limited for
# this process, GetOriginalAccountType will return the non-restricted
# account type.
# On Vista with UAC, for example, this is not the same value when running
# with `RequestExecutionLevel user`. GetOriginalAccountType will return
# "admin" while GetAccountType will return "user".
StrCmp $1 "Admin" 0 +3
Goto doit
StrCmp $1 "Power" 0 +3
Goto doit
StrCmp $1 "User" 0 +3
Goto noop
StrCmp $1 "Guest" 0 +3
Goto noop
MessageBox MB_OK "Unknown error"
Goto doit
Win9x:
doit:
# We can install
Call SelectLanguage
Goto end
noop:
MessageBox MB_OK "$(RequiresAdminUser)"
Quit
end:
FunctionEnd
Function SelectLanguage
;Language selection dialog
Push ""
Push ${LANG_ENGLISH}
Push ${LanguageNameEnglish}
Push ${LANG_GERMAN}
Push ${LanguageNameGerman}
Push ${LANG_DUTCH}
Push ${LanguageNameDutch}
Push ${LANG_FRENCH}
Push ${LanguageNameFrench}
Push ${LANG_POLISH}
Push ${LanguageNamePolish}
Push ${LANG_SPANISH}
Push ${LanguageNameSpanish}
Push ${LANG_CZECH}
Push ${LanguageNameCzech}
Push ${LANG_THAI}
Push ${LanguageNameThai}
Push A ; A means auto count languages
; for the auto count to work the first empty push (Push "") must remain
LangDLL::LangDialog "$(InstallerLanguage)" "$(SelectInstallerLanguage)"
Pop $LANGUAGE
StrCmp $LANGUAGE "cancel" 0 +2
Abort
; Check .NET version
StrCpy $InstallDotNET "No"
Call GetDotNETVersion
@@ -77,14 +148,15 @@ Function .onInit
${EndIf}
${If} $InstallDotNET == "Yes"
MessageBox MB_OK|MB_ICONEXCLAMATION "mRemoteNG requires Microsoft .NET Framework 2.0."
MessageBox MB_OK|MB_ICONEXCLAMATION "$(RequiresNetFramework)"
Quit
${EndIf}
FunctionEnd
Section "" ; Install
SetOutPath $INSTDIR
SetShellVarContext all
; AddFiles
File /r /x "mRemoteNG.vshost.*" "..\mRemoteV1\bin\Release\*.*"
File /r "Dependencies\*.*"
@@ -98,15 +170,18 @@ Section "" ; Install
; Start Menu
CreateDirectory "$SMPROGRAMS\mRemoteNG"
CreateShortCut "$SMPROGRAMS\mRemoteNG\$(CreditsLinkName).lnk" "$INSTDIR\CREDITS.TXT"
CreateShortCut "$SMPROGRAMS\mRemoteNG\$(CopyingLinkName).lnk" "$INSTDIR\COPYING.TXT"
CreateShortCut "$SMPROGRAMS\mRemoteNG\mRemoteNG.lnk" "$INSTDIR\mRemoteNG.exe"
CreateShortCut "$SMPROGRAMS\mRemoteNG\Uninstall.lnk" "$INSTDIR\Uninstall.exe"
CreateShortCut "$SMPROGRAMS\mRemoteNG\$(UninstallLinkName).lnk" "$INSTDIR\Uninstall.exe"
CreateShortCut "$SMPROGRAMS\mRemoteNG\$(ChangeLogLinkName).lnk" "$INSTDIR\CHANGELOG.TXT"
; Registry
WriteRegStr HKLM "Software\mRemoteNG" "InstallPath" $INSTDIR
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "DisplayName" "mRemoteNG"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "Publisher" "mRemoteNG"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "Publisher" "Next Generation Software"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "DisplayIcon" "$INSTDIR\mRemoteNG.exe"
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "EstimatedSize" 6464
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "EstimatedSize" 7080
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "DisplayVersion" ${PRODUCT_VERSION}
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "VersionMajor" ${PRODUCT_VERSION_MAJOR}
@@ -125,9 +200,10 @@ Section "un.Uninstall"
RMDIR /r $INSTDIR
; Start Menu
Delete "$SMPROGRAMS\mRemoteNG\mRemoteNG.lnk"
Delete "$SMPROGRAMS\mRemoteNG\Uninstall.lnk"
RMDir "$SMPROGRAMS\mRemoteNG"
SetShellVarContext all
RMDir /r "$SMPROGRAMS\mRemoteNG"
SetShellVarContext current
RMDir /r "$SMPROGRAMS\mRemoteNG"
; Registry
DeleteRegValue HKLM "Software\mRemoteNG" "InstallPath"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 151 KiB

After

Width:  |  Height:  |  Size: 151 KiB

View File

@@ -1,6 +1,6 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "mRemoteV1", "mRemoteV1\mRemoteV1.vbproj", "{4934A491-40BC-4E5B-9166-EA1169A220F6}"
EndProject
Global

View File

@@ -1,6 +1,5 @@
Imports System.IO
Imports System.Net
Imports mRemote.App.Runtime
Imports System.Net
Imports mRemoteNG.App.Runtime
Namespace App
Public Class Announcement

View File

@@ -1,6 +1,4 @@
Imports System.IO
Namespace App
Namespace App
Namespace Editions
Public Class Spanlink
Public Shared Enabled As Boolean = True

View File

@@ -15,7 +15,7 @@ Namespace App
Public Class Settings
#If Not PORTABLE Then
Public Shared ReadOnly SettingsPath As String = GetFolderPath(SpecialFolder.LocalApplicationData) & "\" & My.Application.Info.ProductName
Public Shared ReadOnly SettingsPath As String = GetFolderPath(SpecialFolder.ApplicationData) & "\" & My.Application.Info.ProductName
#Else
Public Shared ReadOnly SettingsPath As String = My.Application.Info.DirectoryPath
#End If
@@ -36,7 +36,7 @@ Namespace App
Public Shared ReadOnly DefaultConnectionsPath As String = App.Info.Settings.SettingsPath
Public Shared ReadOnly DefaultConnectionsFile As String = "confCons.xml"
Public Shared ReadOnly DefaultConnectionsFileNew As String = "confConsNew.xml"
Public Shared ReadOnly ConnectionFileVersion As Double = 2.2
Public Shared ReadOnly ConnectionFileVersion As Double = 2.3
End Class
Public Class Credentials

View File

@@ -87,6 +87,14 @@ Namespace App
Public Shared Function MapVirtualKey(ByVal wCode As Integer, ByVal wMapType As Integer) As Integer
End Function
<DllImport("User32")> _
Public Shared Function SetClipboardViewer(ByVal hWndNewViewer As IntPtr) As IntPtr
End Function
<DllImport("User32")> _
Public Shared Function SendMessage(ByVal Handle As IntPtr, ByVal msg As Integer, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
End Function
<DllImport("user32")> _
Public Shared Function PostMessage(ByVal hWnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Long
End Function
@@ -133,6 +141,9 @@ Namespace App
Public Const VK_CONTROL As Integer = &H11
Public Const VK_C As Integer = &H67
Public Const WM_DRAWCLIPBOARD As Integer = 776
Public Const WM_CHANGECBCHAIN As Integer = 781
#End Region
End Class
End Namespace

View File

@@ -2,6 +2,9 @@
Imports System.IO
Imports Crownwood
Imports System.Threading
Imports System.Xml
Imports System.Environment
Imports System.Management
Namespace App
Public Class Runtime
@@ -33,13 +36,12 @@ Namespace App
Public Shared LastSelected As String
Public Shared DefaultConnection As mRemote.Connection.Info
Public Shared DefaultInheritance As mRemote.Connection.Info.Inheritance
Public Shared DefaultConnection As mRemoteNG.Connection.Info
Public Shared DefaultInheritance As mRemoteNG.Connection.Info.Inheritance
Public Shared ExtApps As New ArrayList()
#End Region
Public Class Windows
Public Shared treeForm As UI.Window.Tree
Public Shared treePanel As New DockContent
@@ -53,7 +55,7 @@ Namespace App
Public Shared screenshotPanel As New DockContent
Public Shared quickyForm As UI.Window.QuickConnect
Public Shared quickyPanel As New DockContent
Public Shared optionsForm As UI.Window.Options
Public Shared optionsForm As frmOptions
Public Shared optionsPanel As New DockContent
Public Shared saveasForm As UI.Window.SaveAs
Public Shared saveasPanel As New DockContent
@@ -92,9 +94,7 @@ Namespace App
Windows.adimportPanel.Show(frmMain.pnlDock)
Case UI.Window.Type.Options
Windows.optionsForm = New UI.Window.Options(Windows.optionsPanel)
Windows.optionsPanel = Windows.optionsForm
Windows.optionsForm = New frmOptions(Windows.optionsPanel)
Windows.optionsForm.Show(frmMain.pnlDock)
Case UI.Window.Type.SaveAs
Windows.saveasForm = New UI.Window.SaveAs(Windows.saveasPanel)
@@ -146,6 +146,11 @@ Namespace App
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Show (App.Runtime.Windows) failed" & vbNewLine & ex.Message, True)
End Try
End Sub
Public Shared Sub ShowUpdatesTab()
Windows.optionsForm = New frmOptions(Windows.optionsPanel)
Windows.optionsForm.Show(frmMain.pnlDock, 5)
End Sub
End Class
Public Class Screens
@@ -202,24 +207,21 @@ Namespace App
Public Shared Sub SetDefaultLayout()
frmMain.pnlDock.Visible = False
Windows.configPanel.Show(frmMain.pnlDock, DockState.DockLeft)
frmMain.pnlDock.DockLeftPortion = 0.25
frmMain.pnlDock.DockRightPortion = 0.25
frmMain.pnlDock.DockTopPortion = 0.25
frmMain.pnlDock.DockBottomPortion = 0.25
Windows.treePanel.Show(frmMain.pnlDock, DockState.DockLeft)
For Each pane As DockPane In frmMain.pnlDock.Panes
If pane.DockState = DockState.DockLeft Then
Windows.treePanel.DockTo(pane, DockStyle.Top, 0)
Exit For
End If
Next
Windows.errorsPanel.Show(frmMain.pnlDock, DockState.DockBottomAutoHide)
Windows.sessionsPanel.Show(frmMain.pnlDock, DockState.DockBottomAutoHide)
Windows.screenshotPanel.Show(frmMain.pnlDock, DockState.DockBottomAutoHide)
Windows.screenshotForm.Hide()
Windows.configPanel.Show(frmMain.pnlDock)
Windows.configPanel.DockTo(Windows.treePanel.Pane, DockStyle.Bottom, -1)
Windows.quickyPanel.Show(frmMain.pnlDock, DockState.DockBottomAutoHide)
Windows.screenshotPanel.Show(Windows.quickyPanel.Pane, Windows.quickyPanel)
Windows.sessionsPanel.Show(Windows.quickyPanel.Pane, Windows.screenshotPanel)
Windows.errorsPanel.Show(Windows.quickyPanel.Pane, Windows.sessionsPanel)
Windows.screenshotForm.Hide()
Windows.quickyForm.Hide()
frmMain.pnlDock.Visible = True
@@ -245,9 +247,30 @@ Namespace App
End Sub
Public Shared Sub CreateLogger()
log4net.Config.XmlConfigurator.Configure(New FileInfo("mRemote.exe.config"))
log4net.Config.XmlConfigurator.Configure(New FileInfo("mRemoteNG.exe.config"))
log = log4net.LogManager.GetLogger("mRemoteNG.Log")
log.InfoFormat("{0} started.", My.Application.Info.ProductName)
log.InfoFormat("Command Line: {0}", Environment.GetCommandLineArgs)
Try
Dim servicePack As Integer
For Each managementObject As ManagementObject In New ManagementObjectSearcher("SELECT * FROM Win32_OperatingSystem").Get()
servicePack = managementObject.GetPropertyValue("ServicePackMajorVersion")
If servicePack = 0 Then
log.InfoFormat("{0} {1}", managementObject.GetPropertyValue("Caption").Trim, managementObject.GetPropertyValue("OSArchitecture"))
Else
log.InfoFormat("{0} Service Pack {1} {2}", managementObject.GetPropertyValue("Caption").Trim, servicePack.ToString, managementObject.GetPropertyValue("OSArchitecture"))
End If
Next
Catch ex As Exception
log.WarnFormat("Error retrieving operating system information from WMI. {0}", ex.Message)
End Try
log.InfoFormat("Microsoft .NET Framework {0}", System.Environment.Version.ToString)
#If Not PORTABLE Then
log.InfoFormat("{0} {1}", My.Application.Info.ProductName.ToString, My.Application.Info.Version.ToString)
#Else
log.InfoFormat("{0} {1} {2}", My.Application.Info.ProductName.ToString, My.Application.Info.Version.ToString, My.Resources.strLabelPortableEdition)
#End If
log.InfoFormat("System Culture: {0}/{1}", Threading.Thread.CurrentThread.CurrentUICulture.Name, Threading.Thread.CurrentThread.CurrentUICulture.NativeName)
End Sub
Public Shared Sub UpdateCheck()
@@ -331,7 +354,6 @@ Namespace App
NoReconnectParam = "norc"
End If
If ConsParam <> "" Then
If File.Exists(cmd(ConsParam)) = False Then
If File.Exists(My.Application.Info.DirectoryPath & "\" & cmd(ConsParam)) Then
@@ -369,7 +391,7 @@ Namespace App
My.Settings.ResetToolbars = True
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't parse command line args" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strCommandLineArgsCouldNotBeParsed & vbNewLine & ex.Message)
End Try
End Sub
@@ -385,8 +407,10 @@ Namespace App
Try
LastSQLUpdate = Nothing
RemoveHandler Tools.Misc.SQLUpdateCheckFinished, AddressOf SQLUpdateCheckFinished
tmrSqlWatcher.Stop()
tmrSqlWatcher.Close()
If tmrSqlWatcher IsNot Nothing Then
tmrSqlWatcher.Stop()
tmrSqlWatcher.Close()
End If
Catch ex As Exception
End Try
End Sub
@@ -411,20 +435,21 @@ Namespace App
If Editions.Spanlink.Enabled Then
If SaveReport() Then
' ToDo: Change Report.log location
File.Delete(My.Application.Info.DirectoryPath & "\Report.log")
End If
End If
sS.Save()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't save settings or dispose SysTray Icon" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strSettingsCouldNotBeSavedOrTrayDispose & vbNewLine & ex.Message, True)
End Try
End Sub
End Class
#Region "Default Connection"
Public Shared Function DefaultConnectionFromSettings() As mRemote.Connection.Info
DefaultConnection = New mRemote.Connection.Info
Public Shared Function DefaultConnectionFromSettings() As mRemoteNG.Connection.Info
DefaultConnection = New mRemoteNG.Connection.Info
DefaultConnection.IsDefault = True
Return DefaultConnection
@@ -434,7 +459,6 @@ Namespace App
With DefaultConnection
My.Settings.ConDefaultDescription = .Description
My.Settings.ConDefaultIcon = .Icon
My.Settings.ConDefaultPanel = .Panel
My.Settings.ConDefaultUsername = .Username
My.Settings.ConDefaultPassword = .Password
My.Settings.ConDefaultDomain = .Domain
@@ -449,6 +473,8 @@ Namespace App
My.Settings.ConDefaultCacheBitmaps = .CacheBitmaps
My.Settings.ConDefaultDisplayWallpaper = .DisplayWallpaper
My.Settings.ConDefaultDisplayThemes = .DisplayThemes
My.Settings.ConDefaultEnableFontSmoothing = .EnableFontSmoothing
My.Settings.ConDefaultEnableDesktopComposition = .EnableDesktopComposition
My.Settings.ConDefaultRedirectKeys = .RedirectKeys
My.Settings.ConDefaultRedirectDiskDrives = .RedirectDiskDrives
My.Settings.ConDefaultRedirectPrinters = .RedirectPrinters
@@ -471,13 +497,19 @@ Namespace App
My.Settings.ConDefaultVNCSmartSizeMode = .VNCSmartSizeMode.ToString
My.Settings.ConDefaultVNCViewOnly = .VNCViewOnly
My.Settings.ConDefaultExtApp = .ExtApp
My.Settings.ConDefaultRDGatewayUsageMethod = .RDGatewayUsageMethod.ToString
My.Settings.ConDefaultRDGatewayHostname = .RDGatewayHostname
My.Settings.ConDefaultRDGatewayUsername = .RDGatewayUsername
My.Settings.ConDefaultRDGatewayPassword = .RDGatewayPassword
My.Settings.ConDefaultRDGatewayDomain = .RDGatewayDomain
My.Settings.ConDefaultRDGatewayUseConnectionCredentials = .RDGatewayUseConnectionCredentials.ToString
End With
End Sub
#End Region
#Region "Default Inheritance"
Public Shared Function DefaultInheritanceFromSettings() As mRemote.Connection.Info.Inheritance
DefaultInheritance = New mRemote.Connection.Info.Inheritance(Nothing)
Public Shared Function DefaultInheritanceFromSettings() As mRemoteNG.Connection.Info.Inheritance
DefaultInheritance = New mRemoteNG.Connection.Info.Inheritance(Nothing)
DefaultInheritance.IsDefault = True
Return DefaultInheritance
@@ -503,6 +535,8 @@ Namespace App
My.Settings.InhDefaultCacheBitmaps = .CacheBitmaps
My.Settings.InhDefaultDisplayWallpaper = .DisplayWallpaper
My.Settings.InhDefaultDisplayThemes = .DisplayThemes
My.Settings.InhDefaultEnableFontSmoothing = .EnableFontSmoothing
My.Settings.InhDefaultEnableDesktopComposition = .EnableDesktopComposition
My.Settings.InhDefaultRedirectKeys = .RedirectKeys
My.Settings.InhDefaultRedirectDiskDrives = .RedirectDiskDrives
My.Settings.InhDefaultRedirectPrinters = .RedirectPrinters
@@ -513,6 +547,7 @@ Namespace App
My.Settings.InhDefaultPostExtApp = .PostExtApp
My.Settings.InhDefaultMacAddress = .MacAddress
My.Settings.InhDefaultUserField = .UserField
' VNC inheritance
My.Settings.InhDefaultVNCAuthMode = .VNCAuthMode
My.Settings.InhDefaultVNCColors = .VNCColors
My.Settings.InhDefaultVNCCompression = .VNCCompression
@@ -524,14 +559,26 @@ Namespace App
My.Settings.InhDefaultVNCProxyUsername = .VNCProxyUsername
My.Settings.InhDefaultVNCSmartSizeMode = .VNCSmartSizeMode
My.Settings.InhDefaultVNCViewOnly = .VNCViewOnly
' Ext. App inheritance
My.Settings.InhDefaultExtApp = .ExtApp
' RDP gateway inheritance
My.Settings.InhDefaultRDGatewayUsageMethod = .RDGatewayUsageMethod
My.Settings.InhDefaultRDGatewayHostname = .RDGatewayHostname
My.Settings.InhDefaultRDGatewayUsername = .RDGatewayUsername
My.Settings.InhDefaultRDGatewayPassword = .RDGatewayPassword
My.Settings.InhDefaultRDGatewayDomain = .RDGatewayDomain
My.Settings.InhDefaultRDGatewayUseConnectionCredentials = .RDGatewayUseConnectionCredentials
End With
End Sub
#End Region
#Region "Panels"
Public Shared Function AddPanel(Optional ByVal Title As String = Language.Base.NewPanel, Optional ByVal NoTabber As Boolean = False) As Form
Public Shared Function AddPanel(Optional ByVal Title As String = "", Optional ByVal NoTabber As Boolean = False) As Form
Try
If Title = "" Then
Title = My.Resources.strNewPanel
End If
Dim pnlcForm As New DockContent
Dim cForm As New UI.Window.Connection(pnlcForm)
pnlcForm = cForm
@@ -541,13 +588,13 @@ Namespace App
'create rename item
Dim cMenRen As New ToolStripMenuItem
cMenRen.Text = Language.Base.Rename
cMenRen.Text = My.Resources.strRename
cMenRen.Image = My.Resources.Rename
cMenRen.Tag = pnlcForm
AddHandler cMenRen.Click, AddressOf cMenConnectionPanelRename_Click
Dim cMenScreens As New ToolStripMenuItem
cMenScreens.Text = Language.Base.SendTo
cMenScreens.Text = My.Resources.strSendTo
cMenScreens.Image = My.Resources.Monitor
cMenScreens.Tag = pnlcForm
cMenScreens.DropDownItems.Add("Dummy")
@@ -561,11 +608,9 @@ Namespace App
pnlcForm.Show(frmMain.pnlDock, DockState.Document)
If NoTabber = True Then
If NoTabber Then
TryCast(cForm, UI.Window.Connection).TabController.Dispose()
End If
If NoTabber = False Then
Else
wL.Add(cForm)
End If
@@ -581,7 +626,7 @@ Namespace App
Dim conW As UI.Window.Connection
conW = sender.Tag
Dim nTitle As String = InputBox(Language.Base.NewTitle & ":", , sender.Tag.Text.Replace("&&", "&"))
Dim nTitle As String = InputBox(My.Resources.strNewTitle & ":", , sender.Tag.Text.Replace("&&", "&"))
If nTitle <> "" Then
conW.SetFormText(nTitle.Replace("&", "&&"))
@@ -597,7 +642,7 @@ Namespace App
cMenScreens.DropDownItems.Clear()
For i As Integer = 0 To Screen.AllScreens.Length - 1
Dim cMenScreen As New ToolStripMenuItem(Language.Base.Screen & " " & i + 1)
Dim cMenScreen As New ToolStripMenuItem(My.Resources.strScreen & " " & i + 1)
cMenScreen.Tag = New ArrayList
cMenScreen.Image = My.Resources.Monitor_GoTo
TryCast(cMenScreen.Tag, ArrayList).Add(Screen.AllScreens(i))
@@ -628,37 +673,30 @@ Namespace App
#End Region
#Region "Connections Loading/Saving"
Public Shared Sub NewConnections()
Public Shared Sub NewConnections(ByVal filename As String)
Try
cL = New Connection.List
ctL = New Container.List
Dim conL As New Config.Connections.Load
If File.Exists(App.Info.Connections.DefaultConnectionsPath & "\" & App.Info.Connections.DefaultConnectionsFile) = False Then
If Directory.Exists(App.Info.Connections.DefaultConnectionsPath) = False Then
Directory.CreateDirectory(App.Info.Connections.DefaultConnectionsPath)
End If
My.Settings.LoadConsFromCustomLocation = False
File.Copy(My.Application.Info.DirectoryPath & "\" & App.Info.Connections.DefaultConnectionsFileNew, App.Info.Connections.DefaultConnectionsPath & "\" & App.Info.Connections.DefaultConnectionsFile)
conL.ConnectionFileName = App.Info.Connections.DefaultConnectionsPath & "\" & App.Info.Connections.DefaultConnectionsFile
My.Settings.LoadConsFromCustomLocation = False
Else
Dim lD As SaveFileDialog = Tools.Controls.ConnectionsSaveAsDialog
If lD.ShowDialog = System.Windows.Forms.DialogResult.OK Then
File.Copy(My.Application.Info.DirectoryPath & "\" & App.Info.Connections.DefaultConnectionsFileNew, lD.FileName, True)
conL.ConnectionFileName = lD.FileName
Directory.CreateDirectory(Path.GetDirectoryName(filename))
Dim xW As New XmlTextWriter(filename, System.Text.Encoding.UTF8)
xW.Formatting = Formatting.Indented
xW.Indentation = 4
If conL.ConnectionFileName = App.Info.Connections.DefaultConnectionsPath & "\" & App.Info.Connections.DefaultConnectionsFile Then
My.Settings.LoadConsFromCustomLocation = False
Else
My.Settings.LoadConsFromCustomLocation = True
My.Settings.CustomConsPath = conL.ConnectionFileName
End If
Else
Exit Sub
End If
End If
xW.WriteStartDocument()
xW.WriteStartElement(My.Resources.strConnections)
xW.WriteAttributeString("Export", "", "False")
xW.WriteAttributeString("Protected", "", "GiUis20DIbnYzWPcdaQKfjE2H5jh//L5v4RGrJMGNXuIq2CttB/d/BxaBP2LwRhY")
xW.WriteAttributeString("ConfVersion", "", "2.2")
xW.WriteEndElement()
xW.WriteEndDocument()
xW.Close()
conL.ConnectionList = cL
conL.ContainerList = ctL
@@ -668,9 +706,11 @@ Namespace App
conL.RootTreeNode = Windows.treeForm.tvConnections.Nodes(0)
' Load config
conL.ConnectionFileName = filename
conL.Load()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't create new connections file" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strCouldNotCreateNewConnectionsFile & vbNewLine & ex.Message)
End Try
End Sub
@@ -689,6 +729,8 @@ Namespace App
End Sub
Public Shared Sub LoadConnections(Optional ByVal WithDialog As Boolean = False, Optional ByVal Update As Boolean = False)
Dim conL As New Config.Connections.Load
Try
Dim tmrWasEnabled As Boolean
If tmrSqlWatcher IsNot Nothing Then
@@ -707,38 +749,25 @@ Namespace App
cL = New Connection.List
ctL = New Container.List
Dim conL As New Config.Connections.Load
If My.Settings.UseSQLServer = False Then
If WithDialog Then
Dim lD As OpenFileDialog = Tools.Controls.ConnectionsLoadDialog
If lD.ShowDialog = System.Windows.Forms.DialogResult.OK Then
conL.ConnectionFileName = lD.FileName
If conL.ConnectionFileName = App.Info.Connections.DefaultConnectionsPath & "\" & App.Info.Connections.DefaultConnectionsFile Then
My.Settings.LoadConsFromCustomLocation = False
Else
My.Settings.LoadConsFromCustomLocation = True
My.Settings.CustomConsPath = conL.ConnectionFileName
End If
Else
Exit Sub
End If
Else
If My.Settings.LoadConsFromCustomLocation = False Then
conL.ConnectionFileName = App.Info.Connections.DefaultConnectionsPath & "\" & App.Info.Connections.DefaultConnectionsFile
Else
conL.ConnectionFileName = My.Settings.CustomConsPath
End If
conL.ConnectionFileName = GetStartupConnectionFileName()
End If
If File.Exists(conL.ConnectionFileName) = False Then
If WithDialog Then
mC.AddMessage(Messages.MessageClass.WarningMsg, "Connections file could not be loaded!" & vbNewLine & "Location was: " & conL.ConnectionFileName)
mC.AddMessage(Messages.MessageClass.WarningMsg, String.Format(My.Resources.strConnectionsFileCouldNotBeLoaded, conL.ConnectionFileName))
Else
mC.AddMessage(Messages.MessageClass.InformationMsg, "Connections file could not be loaded!" & vbNewLine & "Location was: " & conL.ConnectionFileName & vbNewLine & "Starting with new connections file.")
App.Runtime.NewConnections()
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strConnectionsFileCouldNotBeLoadedNew, conL.ConnectionFileName))
App.Runtime.NewConnections(conL.ConnectionFileName)
End If
Exit Sub
@@ -749,11 +778,10 @@ Namespace App
File.Copy(conL.ConnectionFileName, conL.ConnectionFileName & "_BAK", True)
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.WarningMsg, "Couldn't create backup of connections file" & vbNewLine & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.WarningMsg, My.Resources.strConnectionsFileBackupFailed & vbNewLine & vbNewLine & ex.Message)
End Try
End If
conL.ConnectionList = cL
conL.ContainerList = ctL
@@ -774,6 +802,7 @@ Namespace App
conL.UseSQL = My.Settings.UseSQLServer
conL.SQLHost = My.Settings.SQLHost
conL.SQLDatabaseName = My.Settings.SQLDatabaseName
conL.SQLUsername = My.Settings.SQLUser
conL.SQLPassword = Security.Crypt.Decrypt(My.Settings.SQLPass, App.Info.General.EncryptionKey)
conL.SQLUpdate = Update
@@ -782,16 +811,54 @@ Namespace App
If My.Settings.UseSQLServer = True Then
LastSQLUpdate = Now
Else
If conL.ConnectionFileName = App.Info.Connections.DefaultConnectionsPath & "\" & App.Info.Connections.DefaultConnectionsFile Then
My.Settings.LoadConsFromCustomLocation = False
Else
My.Settings.LoadConsFromCustomLocation = True
My.Settings.CustomConsPath = conL.ConnectionFileName
End If
End If
If tmrWasEnabled And tmrSqlWatcher IsNot Nothing Then
tmrSqlWatcher.Start()
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't load connections file" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionsFileCouldNotBeLoaded & vbNewLine & ex.Message)
If My.Settings.UseSQLServer = False Then
If Not conL.ConnectionFileName = GetStartupConnectionFileName() Then
LoadConnections()
Exit Sub
Else
MsgBox(String.Format(My.Resources.strErrorStartupConnectionFileLoad, vbNewLine, Application.ProductName, GetStartupConnectionFileName(), ex.Message), MsgBoxStyle.OkOnly + MsgBoxStyle.Critical)
Application.Exit()
End If
End If
End Try
End Sub
Protected Shared Function GetStartupConnectionFileName() As String
Dim fileName As New String("")
If My.Settings.LoadConsFromCustomLocation = False Then
Dim oldPath As String = GetFolderPath(SpecialFolder.LocalApplicationData) & "\" & My.Application.Info.ProductName & "\" & App.Info.Connections.DefaultConnectionsFile
Dim newPath As String = App.Info.Connections.DefaultConnectionsPath & "\" & App.Info.Connections.DefaultConnectionsFile
#If Not PORTABLE Then
If File.Exists(oldPath) Then
fileName = oldPath
Else
fileName = newPath
End If
#Else
fileName = newPath
#End If
Else
fileName = My.Settings.CustomConsPath
End If
Return fileName
End Function
Public Shared Sub ImportConnections()
Try
Dim lD As OpenFileDialog = Tools.Controls.ConnectionsLoadDialog
@@ -803,9 +870,9 @@ Namespace App
For i As Integer = 0 To lD.FileNames.Length - 1
nNode = Tree.Node.AddNode(Tree.Node.Type.Container, "Import #" & i)
Dim nContI As New mRemote.Container.Info()
Dim nContI As New mRemoteNG.Container.Info()
nContI.TreeNode = nNode
nContI.ConnectionInfo = New mRemote.Connection.Info(nContI)
nContI.ConnectionInfo = New mRemoteNG.Connection.Info(nContI)
If Tree.Node.SelectedNode IsNot Nothing Then
If Tree.Node.GetNodeType(Tree.Node.SelectedNode) = Tree.Node.Type.Container Then
@@ -829,7 +896,7 @@ Namespace App
Next
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't import connections file" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionsFileCouldNotBeImported & vbNewLine & ex.Message)
End Try
End Sub
@@ -844,7 +911,7 @@ Namespace App
Dim nNode As TreeNode = Tree.Node.AddNode(Tree.Node.Type.Connection, Path.GetFileNameWithoutExtension(lD.FileNames(i)))
Dim nConI As New mRemote.Connection.Info()
Dim nConI As New mRemoteNG.Connection.Info()
nConI.Inherit = New Connection.Info.Inheritance(nConI)
nConI.Name = nNode.Text
@@ -866,6 +933,8 @@ Namespace App
Select Case pValue
Case 8
nConI.Colors = Connection.Protocol.RDP.RDPColors.Colors256
Case 15
nConI.Colors = Connection.Protocol.RDP.RDPColors.Colors15Bit
Case 16
nConI.Colors = Connection.Protocol.RDP.RDPColors.Colors16Bit
Case 24
@@ -901,6 +970,18 @@ Namespace App
Else
nConI.DisplayThemes = False
End If
Case "allow font smoothing"
If pValue = 1 Then
nConI.EnableFontSmoothing = True
Else
nConI.EnableFontSmoothing = False
End If
Case "allow desktop composition"
If pValue = 1 Then
nConI.EnableDesktopComposition = True
Else
nConI.EnableDesktopComposition = False
End If
Case "redirectsmartcards"
If pValue = 1 Then
nConI.RedirectSmartCards = True
@@ -948,18 +1029,18 @@ Namespace App
Next
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't import rdp file" & vbNewLine & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpFileCouldNotBeImported & vbNewLine & vbNewLine & ex.Message)
End Try
End Sub
Public Shared Sub ImportConnectionsFromPortScan(ByVal Hosts As ArrayList, ByVal Protocol As mRemote.Connection.Protocol.Protocols)
Public Shared Sub ImportConnectionsFromPortScan(ByVal Hosts As ArrayList, ByVal Protocol As mRemoteNG.Connection.Protocol.Protocols)
For Each Host As Tools.PortScan.ScanHost In Hosts
Dim finalProt As mRemote.Connection.Protocol.Protocols
Dim finalProt As mRemoteNG.Connection.Protocol.Protocols
Dim protOK As Boolean = False
Dim nNode As TreeNode = Tree.Node.AddNode(Tree.Node.Type.Connection, Host.HostNameWithoutDomain)
Dim nConI As New mRemote.Connection.Info()
Dim nConI As New mRemoteNG.Connection.Info()
nConI.Inherit = New Connection.Info.Inheritance(nConI)
nConI.Name = Host.HostNameWithoutDomain
@@ -1074,6 +1155,7 @@ Namespace App
If My.Settings.UseSQLServer = True Then
conS.SaveFormat = Config.Connections.Save.Format.SQL
conS.SQLHost = My.Settings.SQLHost
conS.SQLDatabaseName = My.Settings.SQLDatabaseName
conS.SQLUsername = My.Settings.SQLUser
conS.SQLPassword = Security.Crypt.Decrypt(My.Settings.SQLPass, App.Info.General.EncryptionKey)
End If
@@ -1088,11 +1170,12 @@ Namespace App
tmrSqlWatcher.Start()
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't save connections file" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionsFileCouldNotBeSaved & vbNewLine & ex.Message)
End Try
End Sub
Public Shared Sub SaveConnectionsAs(ByVal SaveSecurity As Security.Save, ByVal RootNode As TreeNode)
Dim conS As New Config.Connections.Save
Try
Dim tmrWasEnabled As Boolean
@@ -1103,7 +1186,6 @@ Namespace App
End If
End If
Dim conS As New Config.Connections.Save
Dim sD As SaveFileDialog = Tools.Controls.ConnectionsSaveAsDialog
@@ -1144,7 +1226,7 @@ Namespace App
conS.Save()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't save connections file as" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, String.Format(My.Resources.strConnectionsFileCouldNotSaveAs, conS.ConnectionFileName) & vbNewLine & ex.Message)
End Try
End Sub
@@ -1156,57 +1238,31 @@ Namespace App
Public Shared Function CreateQuicky(ByVal ConString As String, Optional ByVal Protocol As Connection.Protocol.Protocols = Connection.Protocol.Protocols.NONE) As Connection.Info
Try
nCi = New Connection.Info
Dim Uri As System.Uri = New System.Uri("dummyscheme" + System.Uri.SchemeDelimiter + ConString)
If Protocol <> Connection.Protocol.Protocols.NONE Then
If Not String.IsNullOrEmpty(Uri.Host) Then
nCi = New Connection.Info
nCi.Name = String.Format(My.Resources.strQuick, Uri.Host)
nCi.Protocol = Protocol
End If
Dim qConS() As String = Split(ConString, ":")
Dim qHost As String = ""
Dim qPort As Integer = 0
For i As Integer = 0 To qConS.Length - 1
If i = 0 Then
qHost = qConS(i)
nCi.Hostname = Uri.Host
If Uri.Port = -1 Then
nCi.Port = Nothing
Else
nCi.Port = Uri.Port
End If
If i = 1 Then
Try
qPort = Int(qConS(i))
Catch ex As Exception
qHost += ":" & qConS(i)
End Try
End If
If i = 2 Then
Try
qPort = Int(qConS(i))
Catch ex As Exception
End Try
End If
Next
If qHost <> "" Then
nCi.Name = "Quick: " & qHost
nCi.Hostname = qHost
nCi.Port = qPort
nCi.IsQuicky = True
Windows.quickyForm.ConnectionInfo = nCi
If Protocol = Connection.Protocol.Protocols.NONE Then
Windows.quickyPanel.Show(frmMain.pnlDock, DockState.DockBottomAutoHide)
Else
End If
Return nCi
Else
'--------
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Creating quick connect failed" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strQuickConnectFailed & vbNewLine & ex.Message)
End Try
Return Nothing
@@ -1216,11 +1272,11 @@ Namespace App
Try
OpenConnection(Connection.Info.Force.None)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionOpenFailed & vbNewLine & ex.Message)
End Try
End Sub
Public Shared Sub OpenConnection(ByVal Force As mRemote.Connection.Info.Force)
Public Shared Sub OpenConnection(ByVal Force As mRemoteNG.Connection.Info.Force)
Try
If Windows.treeForm.tvConnections.SelectedNode.Tag Is Nothing Then
Exit Sub
@@ -1238,47 +1294,47 @@ Namespace App
Next
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionOpenFailed & vbNewLine & ex.Message)
End Try
End Sub
Public Shared Sub OpenConnection(ByVal ConnectionInfo As mRemote.Connection.Info)
Public Shared Sub OpenConnection(ByVal ConnectionInfo As mRemoteNG.Connection.Info)
Try
OpenConnection(ConnectionInfo, Connection.Info.Force.None)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionOpenFailed & vbNewLine & ex.Message)
End Try
End Sub
Public Shared Sub OpenConnection(ByVal ConnectionInfo As mRemote.Connection.Info, ByVal ConnectionForm As Form)
Public Shared Sub OpenConnection(ByVal ConnectionInfo As mRemoteNG.Connection.Info, ByVal ConnectionForm As Form)
Try
OpenConnectionFinal(ConnectionInfo, Connection.Info.Force.None, ConnectionForm)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionOpenFailed & vbNewLine & ex.Message)
End Try
End Sub
Public Shared Sub OpenConnection(ByVal ConnectionInfo As mRemote.Connection.Info, ByVal ConnectionForm As Form, ByVal Force As Connection.Info.Force)
Public Shared Sub OpenConnection(ByVal ConnectionInfo As mRemoteNG.Connection.Info, ByVal ConnectionForm As Form, ByVal Force As Connection.Info.Force)
Try
OpenConnectionFinal(ConnectionInfo, Force, ConnectionForm)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionOpenFailed & vbNewLine & ex.Message)
End Try
End Sub
Public Shared Sub OpenConnection(ByVal ConnectionInfo As mRemote.Connection.Info, ByVal Force As mRemote.Connection.Info.Force)
Public Shared Sub OpenConnection(ByVal ConnectionInfo As mRemoteNG.Connection.Info, ByVal Force As mRemoteNG.Connection.Info.Force)
Try
OpenConnectionFinal(ConnectionInfo, Force, Nothing)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionOpenFailed & vbNewLine & ex.Message)
End Try
End Sub
Private Shared Sub OpenConnectionFinal(ByVal nCi As mRemote.Connection.Info, ByVal Force As mRemote.Connection.Info.Force, ByVal ConForm As Form)
Private Shared Sub OpenConnectionFinal(ByVal nCi As mRemoteNG.Connection.Info, ByVal Force As mRemoteNG.Connection.Info.Force, ByVal ConForm As Form)
Try
If nCi.Hostname = "" And nCi.Protocol <> Connection.Protocol.Protocols.IntApp Then
mC.AddMessage(Messages.MessageClass.WarningMsg, "Cannot open connection: No hostname specified")
mC.AddMessage(Messages.MessageClass.WarningMsg, My.Resources.strConnectionOpenFailedNoHostname)
Exit Sub
End If
@@ -1295,7 +1351,7 @@ Namespace App
End If
End If
' Create connection based on protocol type
Select Case nCi.Protocol
Case Connection.Protocol.Protocols.RDP
nProt = New Connection.Protocol.RDP
@@ -1321,7 +1377,7 @@ Namespace App
nProt = New Connection.Protocol.IntApp
If nCi.ExtApp = "" Then
Throw New Exception("No Ext. App specified.")
Throw New Exception(My.Resources.strNoExtAppDefined)
End If
Case Else
Exit Sub
@@ -1371,7 +1427,6 @@ Namespace App
AddHandler nProt.Closed, AddressOf Prot_Event_Closed
AddHandler nProt.ErrorOccured, AddressOf Prot_Event_ErrorOccured
nProt.InterfaceControl = New Connection.InterfaceControl(cContainer, nProt, nCi)
nProt.Force = Force
@@ -1403,12 +1458,12 @@ Namespace App
End If
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionOpenFailed & vbNewLine & ex.Message)
End Try
End Sub
Public Shared Function SwitchToOpenConnection(ByVal nCi As Connection.Info) As Boolean
Dim IC As mRemote.Connection.InterfaceControl = FindConnectionContainer(nCi)
Dim IC As mRemoteNG.Connection.InterfaceControl = FindConnectionContainer(nCi)
If IC IsNot Nothing Then
TryCast(IC.FindForm, UI.Window.Connection).Focus()
@@ -1425,7 +1480,7 @@ Namespace App
#Region "Event Handlers"
Public Shared Sub Prot_Event_Disconnected(ByVal sender As Object, ByVal DisconnectedMessage As String)
Try
mC.AddMessage(Messages.MessageClass.InformationMsg, "Protocol Event Disconnected" & vbNewLine & "Message: " & DisconnectedMessage, True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strProtocolEventDisconnected, DisconnectedMessage), True)
Dim Prot As Connection.Protocol.Base = sender
If Prot.InterfaceControl.Info.Protocol = Connection.Protocol.Protocols.RDP Then
@@ -1434,14 +1489,14 @@ Namespace App
Dim ReasonDescription As String = Reason(1)
If ReasonCode > 3 Then
If ReasonDescription <> "" Then
mC.AddMessage(Messages.MessageClass.WarningMsg, "RDP Disconnected!" & vbNewLine & ReasonDescription & vbNewLine & "Error code " & ReasonCode & ".")
mC.AddMessage(Messages.MessageClass.WarningMsg, My.Resources.strRdpDisconnected & vbNewLine & ReasonDescription & vbNewLine & String.Format(My.Resources.strErrorCode, ReasonCode))
Else
mC.AddMessage(Messages.MessageClass.WarningMsg, "RDP Disconnected!" & vbNewLine & "Error code " & ReasonCode & ".")
mC.AddMessage(Messages.MessageClass.WarningMsg, My.Resources.strRdpDisconnected & vbNewLine & String.Format(My.Resources.strErrorCode, ReasonCode))
End If
End If
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Protocol Event Disconnected failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, String.Format(My.Resources.strProtocolEventDisconnectFailed, ex.Message), True)
End Try
End Sub
@@ -1449,15 +1504,14 @@ Namespace App
Try
Dim Prot As Connection.Protocol.Base = sender
mC.AddMessage(Messages.MessageClass.InformationMsg, "Protocol Event Closed", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, My.Resources.strConnenctionCloseEvent, True)
If App.Editions.Spanlink.Enabled Then
mC.AddMessage(Messages.MessageClass.ReportMsg, "Connection to " & Prot.InterfaceControl.Info.Hostname & " via " & Prot.InterfaceControl.Info.Protocol.ToString & " closed by user " & My.User.Name & " (Description: " & Prot.InterfaceControl.Info.Description & "; User Field: " & Prot.InterfaceControl.Info.UserField & ")")
mC.AddMessage(Messages.MessageClass.ReportMsg, String.Format(My.Resources.strConnenctionClosedByUserDetail, Prot.InterfaceControl.Info.Hostname, Prot.InterfaceControl.Info.Protocol.ToString, My.User.Name, Prot.InterfaceControl.Info.Description, Prot.InterfaceControl.Info.UserField))
Else
mC.AddMessage(Messages.MessageClass.ReportMsg, "Connection to " & Prot.InterfaceControl.Info.Hostname & " via " & Prot.InterfaceControl.Info.Protocol.ToString & " closed by user " & My.User.Name)
mC.AddMessage(Messages.MessageClass.ReportMsg, String.Format(My.Resources.strConnenctionClosedByUser, Prot.InterfaceControl.Info.Hostname, Prot.InterfaceControl.Info.Protocol.ToString, My.User.Name))
End If
Prot.InterfaceControl.Info.OpenConnections.Remove(Prot)
If Prot.InterfaceControl.Info.OpenConnections.Count < 1 And Prot.InterfaceControl.Info.IsQuicky = False Then
@@ -1471,30 +1525,30 @@ Namespace App
End If
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Protocol Event Closed failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnenctionCloseEventFailed & vbNewLine & ex.Message, True)
End Try
End Sub
Public Shared Sub Prot_Event_Connected(ByVal sender As Object)
Dim prot As mRemote.Connection.Protocol.Base = sender
Dim prot As mRemoteNG.Connection.Protocol.Base = sender
mC.AddMessage(Messages.MessageClass.InformationMsg, "Protocol Event Connected", True)
mC.AddMessage(Messages.MessageClass.ReportMsg, "Connection to " & prot.InterfaceControl.Info.Hostname & " via " & prot.InterfaceControl.Info.Protocol.ToString & " established by user " & My.User.Name & " (Description: " & prot.InterfaceControl.Info.Description & "; User Field: " & prot.InterfaceControl.Info.UserField & ")")
mC.AddMessage(Messages.MessageClass.InformationMsg, My.Resources.strConnectionEventConnected, True)
mC.AddMessage(Messages.MessageClass.ReportMsg, String.Format(My.Resources.strConnectionEventConnectedDetail, prot.InterfaceControl.Info.Hostname, prot.InterfaceControl.Info.Protocol.ToString, My.User.Name, prot.InterfaceControl.Info.Description, prot.InterfaceControl.Info.UserField))
End Sub
Public Shared Sub Prot_Event_ErrorOccured(ByVal sender As Object, ByVal ErrorMessage As String)
Try
mC.AddMessage(Messages.MessageClass.InformationMsg, "Protocol Event ErrorOccured", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, My.Resources.strConnectionEventErrorOccured, True)
Dim Prot As Connection.Protocol.Base = sender
If Prot.InterfaceControl.Info.Protocol = Connection.Protocol.Protocols.RDP Then
If ErrorMessage > -1 Then
mC.AddMessage(Messages.MessageClass.WarningMsg, "RDP Error!" & vbNewLine & "Error Code: " & ErrorMessage & vbNewLine & "Error Description: " & Connection.Protocol.RDP.FatalErrors.GetError(ErrorMessage))
mC.AddMessage(Messages.MessageClass.WarningMsg, String.Format(My.Resources.strConnectionRdpErrorDetail, ErrorMessage, Connection.Protocol.RDP.FatalErrors.GetError(ErrorMessage)))
End If
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Protocol Event ErrorOccured failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strConnectionEventConnectionFailed & vbNewLine & ex.Message, True)
End Try
End Sub
#End Region
@@ -1528,7 +1582,7 @@ Namespace App
#Region "Misc"
Public Shared Sub GoToURL(ByVal URL As String)
Dim cI As New mRemote.Connection.Info
Dim cI As New mRemoteNG.Connection.Info
cI.Name = ""
cI.Hostname = URL
@@ -1540,7 +1594,7 @@ Namespace App
cI.SetDefaultPort()
cI.IsQuicky = True
App.Runtime.OpenConnection(cI, mRemote.Connection.Info.Force.DoNotJump)
App.Runtime.OpenConnection(cI, mRemoteNG.Connection.Info.Force.DoNotJump)
End Sub
Public Shared Sub GoToWebsite()
@@ -1565,7 +1619,7 @@ Namespace App
sWr.WriteLine(Text)
sWr.Close()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Writing to report file failed!")
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strLogWriteToFileFailed)
End Try
End Sub
@@ -1581,14 +1635,14 @@ Namespace App
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't save report to final location. (App.Runtime.SaveReport)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strLogWriteToFileFinalLocationFailed & vbNewLine & ex.Message, True)
Return False
End Try
End Function
Public Shared Sub SetMainFormText(Optional ByVal ConnectionFileName As String = "")
Try
Dim txt As String = "mRemoteNG"
Dim txt As String = My.Application.Info.ProductName
If App.Editions.Spanlink.Enabled Then
txt &= " | Spanlink Communications"
@@ -1604,7 +1658,7 @@ Namespace App
ChangeMainFormText(txt)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Setting main form text failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strSettingMainFormTextFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -1662,7 +1716,7 @@ Namespace App
Private Shared Sub SQLUpdateCheckFinished(ByVal UpdateAvailable As Boolean)
If UpdateAvailable = True Then
mC.AddMessage(Messages.MessageClass.InformationMsg, "SQL Update check finished and there is an update available! Going to refresh connections.", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, My.Resources.strSqlUpdateCheckUpdateAvailable, True)
LoadConnectionsBG()
End If
End Sub

View File

@@ -0,0 +1,66 @@
Namespace App
Public Class SupportedCultures
Inherits Dictionary(Of String, String)
Private Sub New()
Dim CultureInfo As Globalization.CultureInfo
For Each CultureName As String In My.Settings.SupportedUICultures.Split(",")
Try
CultureInfo = New Globalization.CultureInfo(CultureName.Trim)
Add(CultureInfo.Name, CultureInfo.TextInfo.ToTitleCase(CultureInfo.NativeName))
Catch ex As Exception
Debug.Print(String.Format("An exception occurred while adding the culture '{0}' to the list of supported cultures. {1}", CultureName, ex.ToString))
End Try
Next
End Sub
Private Shared _Instance As SupportedCultures = Nothing
Public Shared Sub InstantiateSingleton()
If _Instance Is Nothing Then
_Instance = New SupportedCultures
End If
End Sub
Public Shared Function IsNameSupported(ByVal CultureName As String) As Boolean
Return _Instance.ContainsKey(CultureName)
End Function
Public Shared Function IsNativeNameSupported(ByVal CultureNativeName As String) As Boolean
Return _Instance.ContainsValue(CultureNativeName)
End Function
Public Shared ReadOnly Property CultureName(ByVal CultureNativeName As String) As String
Get
Dim Names(_Instance.Count) As String
Dim NativeNames(_Instance.Count) As String
_Instance.Keys.CopyTo(Names, 0)
_Instance.Values.CopyTo(NativeNames, 0)
For Index As Integer = 0 To _Instance.Count
If NativeNames(Index) = CultureNativeName Then
Return Names(Index)
End If
Next
Throw New System.Collections.Generic.KeyNotFoundException()
End Get
End Property
Public Shared ReadOnly Property CultureNativeName(ByVal CultureName As String) As String
Get
Return _Instance.Item(CultureName)
End Get
End Property
Public Shared ReadOnly Property CultureNativeNames() As List(Of String)
Get
Dim ValueList As List(Of String) = New List(Of String)
For Each Value As String In _Instance.Values
ValueList.Add(Value)
Next
Return ValueList
End Get
End Property
End Class
End Namespace

View File

@@ -1,6 +1,6 @@
Imports System.IO
Imports System.Net
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace App
Public Class Update
@@ -191,9 +191,6 @@ Namespace App
End Sub
#End Region
Public Class Info
Private _Version As Version
Public Property Version() As Version

View File

@@ -11,7 +11,7 @@
Private Sub MyApplication_Startup(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupEventArgs) Handles Me.Startup
If My.Settings.SingleInstance Then
Dim mutexID As String = "mRemote_SingleInstanceMutex"
Dim mutexID As String = "mRemoteNG_SingleInstanceMutex"
mutex = New System.Threading.Mutex(False, mutexID)

View File

@@ -1,4 +1,80 @@
1.63:
1.69 (2011-12-09):
Fixed issue #66 - Fresh Install Fails to Create Config
Fixed issue #67 - Connection file gets erased
Fixed issue #72 - scrollbars added to RDP window after minimize/restore of mRemoteNG
Disabled automatic updates in the portable edition
Fixed file name in window title changing when exporting an XML file.
Fixed Use only Notifications panel checkbox.
Updated PuTTY to version 0.61
Binaries are now digitally signed
Added Credits, License, and Version History items to the Start Menu and made Start Menu item names localizable.
1.68 (2011-07-07):
Fixed issue #48 - VerifyDatabaseVersion fails with new (empty) database tables.
Fixed issue #60 - Can't save connections file
Fixed issue #62 - Connection file error upon launch.
1.67 (2011-06-05):
Fixed migration of external tools configuration and panel layout from Local to Roaming folder.
Disable ICA Hotkeys for Citrix connections. Fixes issue with international users.
Added a language selection option so users can override the language if they don't want it automatically detected.
Added partial French translation to the application.
Addded Thai translation to the installer.
Updated graphics in the installer to mRemoteNG logo.
Fixed RD Gateway default properties and RDP reconnection count setting not being saved.
Fixed bug 33 - IPv6 doesn't work in quick Connect box.
Moved the items under Tools in the Connections panel context menu up to the top level.
Added buttons for Add Connection, Add Folder, and Sort Ascending (A-Z) to the Connections panel toolbar.
Fixed rename edit control staying open when collapsing all folders.
Changed sorting to sort all subfolders below the selected folder.
Allow sorting of connections if a connection entry is selected.
Fixed adding a connection entry if nothing is selected in the tree.
Added 15-bit Color RDP setting.
Fixed loading of RDP Colors setting from SQL.
Added Font Smoothing and Desktop Composition RDP settings.
Improved error handling when loading XML connection files.
Added the mRemoteNG icon to the list of selectable icons for connection entries.
Added confirmation before closing connection tabs.
Fixed bug 42 - Maximized location not remembered with multiple monitors.
Improved loading and saving of window location.
Removed flickering on start up.
Changed the Options page into a normal dialog.
Improved Reset Layout function.
Changed to use full four part version numbers with major, minor, build, and revision.
Changed hard coded SQL database name into a user configurable setting.
Fixed tab order of controls in Options dialog.
Fixed bug 45 - Changing some settings in the config file may not save.
1.66 (2011-05-02):
Fixed connections not working
1.65 (2011-05-02):
Fixed Ctrl-Tab and Ctrl-Shift-Tab not working in any other applications while mRemoteNG is running
Ctrl-Tab and Ctrl-Shift-Tab no longer work to switch tabs within mRemoteNG
Fixed bug 36 - Install creates shortcuts only for the installing user
Fixed bug 38 - Application uses the wrong Application Data settings folder (in Local Settings)
Added code to the installer to check that the user is in the 'Power Users' or 'Administrators' group
1.64 (2011-04-27):
Fixed bug 6 - VNC CTRL+key & keyboard combo mappings are broken
Fixed bug 12 - Tab switch is not working in config panel
Fixed bug 14 - RDP Connection authentication problem
Fixed bug 22 - External App parameter macro expansion doesn't work with "try to integrate"
Fixed bug 25 - Unhandled exception when mRemoteNG opens
Added multilanguage support and German translation to the application
Added Czech, Dutch, French, German, Polish, and Spanish translations to the installer
Added Ctrl-Tab hotkey to switch to the next tab and Ctrl-Shift-Tab to switch to the previous tab
Added Tab key to cycle through entries in the Config grid and Shift-Tab to cycle in reverse
Added ability to configure external tools to run before or after a connection is established
Fixed missing parameters in macro expansion for external tools
Fixed RD Gateway and other inheritance bugs
Changed how new connection files are created
Changed the internal namespace of the application to mRemoteNG instead of mRemote
Added credit for the DockPanel Suite to the About page
Updated DockPanel Suite to version 2.5 RC1
Updated VNCSharpNG to correct Ctrl and Alt key pass-through behavior
1.63 (2010-02-02):
New icon and logo
Fixed problems moving or resizing the main window while PuTTY (SSH/telnet/rlogin/raw) connections are open
Fixed PuTTY processes not closing on Vista and 7 with UAC enabled
@@ -13,7 +89,7 @@
Popups can now be allowed in Internet Explorer by holding Ctrl+Alt when clicking a link
Added PuTTY Settings item to tab context menu
1.62:
1.62 (2010-01-19):
Switched to VncSharp, an open source VNC component
VNC is supported again except for the following features:
Windows authentication
@@ -29,11 +105,11 @@
Added RDP, VNC and ICA version numbers to Components Check page
Fixed a bug with the inheritance buttons on the Config panel disappearing after awhile
1.61:
1.61 (2010-01-14):
Removed unlicensed SmartCode Solutions ViewerX VNC Viewer ActiveX
This version of mRemoteNG does not support VNC
1.60:
1.60 (2010-01-09):
Changed name to mRemoteNG
Fixed menu bar not staying docked to left side
Removed snakes game Easter egg
@@ -502,7 +578,7 @@ V0.0.3.2:
V0.0.3.0:
Added Options Tab
Load connections file from different location
Save/Dont Save connections file on exit
Save/Don't Save connections file on exit
Show current tab name in window title
Added drag and drop functionality to the connections tree
Added feature to hide top bar
@@ -512,7 +588,7 @@ V0.0.3.0:
V0.0.2.7:
Added feature to save connection settings to all connections in the selected container
Icon choosing bug fixed
Taskbar button had no text when in fullscreen fixed
Taskbar button had no text when in fullscreen - fixed
Fixed bug in Quick Connect GUI
Disabled "Display Wallpaper" and "Display Themes" checkboxes as these features are not implemented

View File

@@ -1,6 +1,7 @@
Imports System.Windows.Forms
Imports System.Xml
Imports mRemote.App.Runtime
Imports System.Globalization
Imports mRemoteNG.App.Runtime
Imports System.Data
Imports System.Data.SqlClient
Imports System.IO
@@ -17,8 +18,6 @@ Namespace Config
Private sqlQuery As SqlCommand
Private sqlRd As SqlDataReader
Private sqlDB As String = "mRemote"
Private selNode As TreeNode
#End Region
@@ -43,6 +42,16 @@ Namespace Config
End Set
End Property
Private _SQLDatabaseName As String
Public Property SQLDatabaseName() As String
Get
Return _SQLDatabaseName
End Get
Set(ByVal value As String)
_SQLDatabaseName = value
End Set
End Property
Private _SQLUsername As String
Public Property SQLUsername() As String
Get
@@ -83,10 +92,6 @@ Namespace Config
End Set
End Property
Private _ConnectionFileName As String
Public Property ConnectionFileName() As String
Get
@@ -180,9 +185,9 @@ Namespace Config
App.Runtime.ConnectionsFileLoaded = False
If _SQLUsername <> "" Then
sqlCon = New SqlConnection("Data Source=" & _SQLHost & ";Initial Catalog=" & sqlDB & ";User Id=" & _SQLUsername & ";Password=" & _SQLPassword)
sqlCon = New SqlConnection("Data Source=" & _SQLHost & ";Initial Catalog=" & _SQLDatabaseName & ";User Id=" & _SQLUsername & ";Password=" & _SQLPassword)
Else
sqlCon = New SqlConnection("Data Source=" & _SQLHost & ";Initial Catalog=" & sqlDB & ";Integrated Security=True")
sqlCon = New SqlConnection("Data Source=" & _SQLHost & ";Initial Catalog=" & _SQLDatabaseName & ";Integrated Security=True")
End If
sqlCon.Open()
@@ -201,10 +206,8 @@ Namespace Config
sqlRd.Read()
End If
Dim originalCulture As System.Globalization.CultureInfo = My.Application.Culture
My.Application.ChangeCulture("en-US")
Me.confVersion = Convert.ToDouble(sqlRd.Item("confVersion"))
My.Application.ChangeCulture(originalCulture.ToString)
Dim enCulture As CultureInfo = New CultureInfo("en-US")
Me.confVersion = Convert.ToDouble(sqlRd.Item("confVersion"), enCulture)
Dim rootNode As TreeNode
rootNode = New TreeNode(sqlRd.Item("Name"))
@@ -266,7 +269,7 @@ Namespace Config
sqlCon.Close()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "LoadFromSQL failed (Config.Connections.Load)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strLoadFromSqlFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -412,7 +415,7 @@ Namespace Config
'AddNodesFromSQL(tNode)
End While
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "AddNodesFromSQL failed (Config.Connections.Load)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strAddNodesFromSqlFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -537,9 +540,9 @@ Namespace Config
End If
If Me.confVersion >= 2.2 Then
conI.RDGatewayUsageMethod = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.RDP.RDGatewayUsageMethod), .Item("RDGatewayUsageMethod"))
conI.RDGatewayUsageMethod = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.RDP.RDGatewayUsageMethod), .Item("RDGatewayUsageMethod"))
conI.RDGatewayHostname = .Item("RDGatewayHostname")
conI.RDGatewayUseConnectionCredentials = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.RDP.RDGatewayUseConnectionCredentials), .Item("RDGatewayUseConnectionCredentials"))
conI.RDGatewayUseConnectionCredentials = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.RDP.RDGatewayUseConnectionCredentials), .Item("RDGatewayUseConnectionCredentials"))
conI.RDGatewayUsername = .Item("RDGatewayUsername")
conI.RDGatewayPassword = Security.Crypt.Decrypt(.Item("RDGatewayPassword"), pW)
conI.RDGatewayDomain = .Item("RDGatewayDomain")
@@ -550,6 +553,13 @@ Namespace Config
conI.Inherit.RDGatewayDomain = .Item("InheritRDGatewayDomain")
End If
If Me.confVersion >= 2.3 Then
conI.EnableFontSmoothing = .Item("EnableFontSmoothing")
conI.EnableDesktopComposition = .Item("EnableDesktopComposition")
conI.Inherit.EnableFontSmoothing = .Item("InheritEnableFontSmoothing")
conI.Inherit.EnableDesktopComposition = .Item("InheritEnableDesktopComposition")
End If
If SQLUpdate = True Then
conI.PleaseConnect = .Item("Connected")
End If
@@ -557,7 +567,7 @@ Namespace Config
Return conI
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "GetConnectionInfoFromSQL failed (Config.Connections.Load)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strGetConnectionInfoFromSqlFailed & vbNewLine & ex.Message, True)
End Try
Return Nothing
@@ -625,12 +635,10 @@ Namespace Config
End If
If xDom.DocumentElement.HasAttribute("ConfVersion") Then
Dim originalCulture As System.Globalization.CultureInfo = My.Application.Culture
My.Application.ChangeCulture("en-US")
Me.confVersion = Convert.ToDouble(xDom.DocumentElement.Attributes("ConfVersion").Value)
My.Application.ChangeCulture(originalCulture.ToString)
Dim enCulture As System.Globalization.CultureInfo = New CultureInfo("en-US")
Me.confVersion = Convert.ToDouble(xDom.DocumentElement.Attributes("ConfVersion").Value, enCulture)
Else
mC.AddMessage(Messages.MessageClass.WarningMsg, "You are trying to load a connection file that was created using an very early version of mRemote, this could result in an runtime error." & vbNewLine & "If you run into such an error, please create a new connection file!")
mC.AddMessage(Messages.MessageClass.WarningMsg, My.Resources.strOldConffile)
End If
' SECTION 2. Initialize the treeview control.
@@ -668,7 +676,7 @@ Namespace Config
End If
If Me._Import = True And imp = False Then
mC.AddMessage(Messages.MessageClass.InformationMsg, "You cannot import a normal connection file." & vbNewLine & "Please use File - Load Connections for normal connection files!")
mC.AddMessage(Messages.MessageClass.InformationMsg, My.Resources.strCannotImportNormalSessionFile)
Exit Sub
End If
@@ -707,7 +715,8 @@ Namespace Config
App.Runtime.Windows.treeForm.InitialRefresh()
Catch ex As Exception
App.Runtime.ConnectionsFileLoaded = False
mC.AddMessage(Messages.MessageClass.ErrorMsg, "LoadFromXML failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strLoadFromXmlFailed & vbNewLine & ex.Message, True)
Throw
End Try
End Sub
@@ -783,14 +792,14 @@ Namespace Config
inTreeNode.Text = inXmlNode.Attributes("Name").Value.Trim
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "AddNodeFromXML failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strAddNodeFromXmlFailed & vbNewLine & ex.Message, True)
End Try
End Sub
Private Function GetConnectionInfoFromXml(ByVal xxNode As XmlNode) As Connection.Info
Try
Dim conI As New Connection.Info
Dim conI As New Connection.Info
Try
With xxNode
If Me.confVersion > 0.1 Then '0.2
conI.Name = .Attributes("Name").Value
@@ -886,6 +895,8 @@ Namespace Config
conI.Colors = Connection.Protocol.RDP.RDPColors.Colors24Bit
Case 3
conI.Colors = Connection.Protocol.RDP.RDPColors.Colors32Bit
Case 4
conI.Colors = Connection.Protocol.RDP.RDPColors.Colors15Bit
End Select
conI.RedirectSound = .Attributes("RedirectSound").Value
@@ -921,7 +932,7 @@ Namespace Config
conI.Inherit = New Connection.Info.Inheritance(conI, .Attributes("Inherit").Value)
conI.Icon = .Attributes("Icon").Value.Replace(".ico", "")
conI.Panel = "General"
conI.Panel = My.Resources.strGeneral
End If
If Me.confVersion > 1.4 Then '1.5
@@ -929,7 +940,7 @@ Namespace Config
End If
If Me.confVersion > 1.5 Then '1.6
conI.ICAEncryption = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.ICA.EncryptionStrength), .Attributes("ICAEncryptionStrength").Value)
conI.ICAEncryption = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.ICA.EncryptionStrength), .Attributes("ICAEncryptionStrength").Value)
conI.Inherit.ICAEncryption = .Attributes("InheritICAEncryptionStrength").Value
conI.PreExtApp = .Attributes("PreExtApp").Value
@@ -939,16 +950,16 @@ Namespace Config
End If
If Me.confVersion > 1.6 Then '1.7
conI.VNCCompression = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.VNC.Compression), .Attributes("VNCCompression").Value)
conI.VNCEncoding = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.VNC.Encoding), .Attributes("VNCEncoding").Value)
conI.VNCAuthMode = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.VNC.AuthMode), .Attributes("VNCAuthMode").Value)
conI.VNCProxyType = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.VNC.ProxyType), .Attributes("VNCProxyType").Value)
conI.VNCCompression = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.VNC.Compression), .Attributes("VNCCompression").Value)
conI.VNCEncoding = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.VNC.Encoding), .Attributes("VNCEncoding").Value)
conI.VNCAuthMode = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.VNC.AuthMode), .Attributes("VNCAuthMode").Value)
conI.VNCProxyType = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.VNC.ProxyType), .Attributes("VNCProxyType").Value)
conI.VNCProxyIP = .Attributes("VNCProxyIP").Value
conI.VNCProxyPort = .Attributes("VNCProxyPort").Value
conI.VNCProxyUsername = .Attributes("VNCProxyUsername").Value
conI.VNCProxyPassword = Security.Crypt.Decrypt(.Attributes("VNCProxyPassword").Value, pW)
conI.VNCColors = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.VNC.Colors), .Attributes("VNCColors").Value)
conI.VNCSmartSizeMode = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.VNC.SmartSizeMode), .Attributes("VNCSmartSizeMode").Value)
conI.VNCColors = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.VNC.Colors), .Attributes("VNCColors").Value)
conI.VNCSmartSizeMode = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.VNC.SmartSizeMode), .Attributes("VNCSmartSizeMode").Value)
conI.VNCViewOnly = .Attributes("VNCViewOnly").Value
conI.Inherit.VNCCompression = .Attributes("InheritVNCCompression").Value
@@ -965,13 +976,13 @@ Namespace Config
End If
If Me.confVersion > 1.7 Then '1.8
conI.RDPAuthenticationLevel = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.RDP.AuthenticationLevel), .Attributes("RDPAuthenticationLevel").Value)
conI.RDPAuthenticationLevel = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.RDP.AuthenticationLevel), .Attributes("RDPAuthenticationLevel").Value)
conI.Inherit.RDPAuthenticationLevel = .Attributes("InheritRDPAuthenticationLevel").Value
End If
If Me.confVersion > 1.8 Then '1.9
conI.RenderingEngine = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.HTTPBase.RenderingEngine), .Attributes("RenderingEngine").Value)
conI.RenderingEngine = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.HTTPBase.RenderingEngine), .Attributes("RenderingEngine").Value)
conI.MacAddress = .Attributes("MacAddress").Value
conI.Inherit.RenderingEngine = .Attributes("InheritRenderingEngine").Value
@@ -989,28 +1000,40 @@ Namespace Config
End If
If Me.confVersion > 2.1 Then '2.2
conI.RDGatewayUsageMethod = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.RDP.RDGatewayUsageMethod), .Attributes("RDGatewayUsageMethod").Value)
' Get settings
conI.RDGatewayUsageMethod = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.RDP.RDGatewayUsageMethod), .Attributes("RDGatewayUsageMethod").Value)
conI.RDGatewayHostname = .Attributes("RDGatewayHostname").Value
conI.RDGatewayUseConnectionCredentials = Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.RDP.RDGatewayUseConnectionCredentials), .Attributes("RDGatewayUseConnectionCredentials").Value)
conI.RDGatewayUseConnectionCredentials = Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.RDP.RDGatewayUseConnectionCredentials), .Attributes("RDGatewayUseConnectionCredentials").Value)
conI.RDGatewayUsername = .Attributes("RDGatewayUsername").Value
conI.RDGatewayPassword = Security.Crypt.Decrypt(.Attributes("RDGatewayPassword").Value, pW)
conI.RDGatewayDomain = .Attributes("RDGatewayDomain").Value
' Get inheritance settings
conI.Inherit.RDGatewayUsageMethod = .Attributes("InheritRDGatewayUsageMethod").Value
conI.Inherit.RDGatewayHostname = .Attributes("InheritRDGatewayHostname").Value
conI.Inherit.RDGatewayUseConnectionCredentials = .Attributes("InheritRDGatewayUseConnectionCredentials").Value
conI.Inherit.RDGatewayUsername = .Attributes("InheritRDGatewayUsername").Value
conI.Inherit.RDGatewayPassword = .Attributes("InheritRDGatewayPassword").Value
conI.Inherit.RDGatewayDomain = .Attributes("InheritRDGatewayDomain").Value
End If
End With
Return conI
If Me.confVersion > 2.2 Then '2.3
' Get settings
conI.EnableFontSmoothing = .Attributes("EnableFontSmoothing").Value
conI.EnableDesktopComposition = .Attributes("EnableDesktopComposition").Value
' Get inheritance settings
conI.Inherit.EnableFontSmoothing = .Attributes("InheritEnableFontSmoothing").Value
conI.Inherit.EnableDesktopComposition = .Attributes("InheritEnableDesktopComposition").Value
End If
End With
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "GetConnectionInfoFromXml failed" & vbNewLine & ex.Message, True)
Return Nothing
mC.AddMessage(Messages.MessageClass.ErrorMsg, String.Format(My.Resources.strGetConnectionInfoFromXmlFailed, conI.Name, Me.ConnectionFileName, ex.Message), False)
End Try
Return conI
End Function
Private Function Authenticate(ByVal Value As String, ByVal CompareToOriginalValue As Boolean, Optional ByVal RootInfo As mRemote.Root.Info = Nothing) As Boolean
Private Function Authenticate(ByVal Value As String, ByVal CompareToOriginalValue As Boolean, Optional ByVal RootInfo As mRemoteNG.Root.Info = Nothing) As Boolean
If CompareToOriginalValue Then
Do Until Security.Crypt.Decrypt(Value, pW) <> Value
pW = Tools.Misc.PasswordDialog(False)

View File

@@ -1,9 +1,11 @@
Imports System.Windows.Forms
Imports System.Xml
Imports System.IO
Imports mRemote.App.Runtime
Imports System.Globalization
Imports mRemoteNG.App.Runtime
Imports System.Data.SqlClient
Imports mRemote.Tools.Misc
Imports mRemoteNG.Tools.Misc
Imports mRemoteNG.My.Resources
Namespace Config
Namespace Connections
@@ -23,8 +25,6 @@ Namespace Config
Private xW As XmlTextWriter
Private pW As String = App.Info.General.EncryptionKey
Private sqlDB As String = "mRemote"
Private sqlCon As SqlConnection
Private sqlQuery As SqlCommand
Private sqlWr As Integer
@@ -44,6 +44,16 @@ Namespace Config
End Set
End Property
Private _SQLDatabaseName As String
Public Property SQLDatabaseName() As String
Get
Return _SQLDatabaseName
End Get
Set(ByVal value As String)
_SQLDatabaseName = value
End Set
End Property
Private _SQLUsername As String
Public Property SQLUsername() As String
Get
@@ -147,39 +157,77 @@ Namespace Config
SaveToVRE()
Case Format.vRDCSV
SaveTovRDCSV()
Case Format.mRXML Or Format.None
SaveToXML()
If My.Settings.EncryptCompleteConnectionsFile Then
EncryptCompleteFile()
End If
SetMainFormText(_ConnectionFileName)
Case Else
SaveToXML()
If My.Settings.EncryptCompleteConnectionsFile Then
EncryptCompleteFile()
End If
SetMainFormText(_ConnectionFileName)
If Not _Export Then SetMainFormText(_ConnectionFileName)
End Select
End Sub
#End Region
#Region "SQL"
Private Function VerifyDatabaseVersion(ByVal sqlConnection As SqlConnection) As Boolean
Dim isVerified As Boolean = False
Dim sqlDataReader As SqlDataReader = Nothing
Dim databaseVersion As System.Version = Nothing
Try
Dim sqlCommand As New SqlCommand("SELECT * FROM tblRoot", sqlConnection)
sqlDataReader = sqlCommand.ExecuteReader()
If (Not sqlDataReader.HasRows) Then Return True ' assume new empty database
sqlDataReader.Read()
Dim enCulture As CultureInfo = New CultureInfo("en-US")
databaseVersion = New System.Version(Convert.ToDouble(sqlDataReader.Item("confVersion"), enCulture))
sqlDataReader.Close()
If databaseVersion.CompareTo(New System.Version(2, 2)) = 0 Then ' 2.2
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format("Upgrading database from version {0} to version {1}.", databaseVersion.ToString, "2.3"))
sqlCommand = New SqlCommand("ALTER TABLE tblCons ADD EnableFontSmoothing bit NOT NULL DEFAULT 0, EnableDesktopComposition bit NOT NULL DEFAULT 0, InheritEnableFontSmoothing bit NOT NULL DEFAULT 0, InheritEnableDesktopComposition bit NOT NULL DEFAULT 0;", sqlConnection)
sqlCommand.ExecuteNonQuery()
databaseVersion = New System.Version(2, 3)
End If
If databaseVersion.CompareTo(New System.Version(2, 3)) = 0 Then ' 2.3
isVerified = True
End If
If isVerified = False Then
mC.AddMessage(Messages.MessageClass.WarningMsg, String.Format(strErrorBadDatabaseVersion, databaseVersion.ToString, My.Application.Info.ProductName))
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, String.Format(strErrorVerifyDatabaseVersionFailed, ex.Message))
Finally
If sqlDataReader IsNot Nothing Then
If Not sqlDataReader.IsClosed Then sqlDataReader.Close()
End If
End Try
Return isVerified
End Function
Private Sub SaveToSQL()
If _SQLUsername <> "" Then
sqlCon = New SqlConnection("Data Source=" & _SQLHost & ";Initial Catalog=" & sqlDB & ";User Id=" & _SQLUsername & ";Password=" & _SQLPassword)
sqlCon = New SqlConnection("Data Source=" & _SQLHost & ";Initial Catalog=" & _SQLDatabaseName & ";User Id=" & _SQLUsername & ";Password=" & _SQLPassword)
Else
sqlCon = New SqlConnection("Data Source=" & _SQLHost & ";Initial Catalog=" & sqlDB & ";Integrated Security=True")
sqlCon = New SqlConnection("Data Source=" & _SQLHost & ";Initial Catalog=" & _SQLDatabaseName & ";Integrated Security=True")
End If
sqlCon.Open()
If Not VerifyDatabaseVersion(sqlCon) Then
mC.AddMessage(Messages.MessageClass.ErrorMsg, strErrorConnectionListSaveFailed)
Return
End If
Dim tN As TreeNode
tN = RootTreeNode.Clone
Dim strProtected As String
If tN.Tag IsNot Nothing Then
If TryCast(tN.Tag, mRemote.Root.Info).Password = True Then
pW = TryCast(tN.Tag, mRemote.Root.Info).PasswordString
If TryCast(tN.Tag, mRemoteNG.Root.Info).Password = True Then
pW = TryCast(tN.Tag, mRemoteNG.Root.Info).PasswordString
strProtected = Security.Crypt.Encrypt("ThisIsProtected", pW)
Else
strProtected = Security.Crypt.Encrypt("ThisIsNotProtected", pW)
@@ -191,14 +239,10 @@ Namespace Config
sqlQuery = New SqlCommand("DELETE FROM tblRoot", sqlCon)
sqlWr = sqlQuery.ExecuteNonQuery
Dim originalCulture As System.Globalization.CultureInfo = My.Application.Culture
My.Application.ChangeCulture("en-US")
sqlQuery = New SqlCommand("INSERT INTO tblRoot (Name, Export, Protected, ConfVersion) VALUES('" & PrepareValueForDB(tN.Text) & "', 0, '" & strProtected & "'," & App.Info.Connections.ConnectionFileVersion & ")", sqlCon)
My.Application.ChangeCulture(originalCulture.ToString)
Dim enCulture As CultureInfo = New CultureInfo("en-US")
sqlQuery = New SqlCommand("INSERT INTO tblRoot (Name, Export, Protected, ConfVersion) VALUES('" & PrepareValueForDB(tN.Text) & "', 0, '" & strProtected & "'," & App.Info.Connections.ConnectionFileVersion.ToString(enCulture) & ")", sqlCon)
sqlWr = sqlQuery.ExecuteNonQuery
sqlQuery = New SqlCommand("DELETE FROM tblCons", sqlCon)
sqlWr = sqlQuery.ExecuteNonQuery
@@ -223,14 +267,14 @@ Namespace Config
sqlQuery = New SqlCommand("INSERT INTO tblCons (Name, Type, Expanded, Description, Icon, Panel, Username, " & _
"DomainName, Password, Hostname, Protocol, PuttySession, " & _
"Port, ConnectToConsole, RenderingEngine, ICAEncryptionStrength, RDPAuthenticationLevel, Colors, Resolution, DisplayWallpaper, " & _
"DisplayThemes, CacheBitmaps, RedirectDiskDrives, RedirectPorts, " & _
"DisplayThemes, EnableFontSmoothing, EnableDesktopComposition, CacheBitmaps, RedirectDiskDrives, RedirectPorts, " & _
"RedirectPrinters, RedirectSmartCards, RedirectSound, RedirectKeys, " & _
"Connected, PreExtApp, PostExtApp, MacAddress, UserField, ExtApp, VNCCompression, VNCEncoding, VNCAuthMode, " & _
"VNCProxyType, VNCProxyIP, VNCProxyPort, VNCProxyUsername, VNCProxyPassword, " & _
"VNCColors, VNCSmartSizeMode, VNCViewOnly, " & _
"RDGatewayUsageMethod, RDGatewayHostname, RDGatewayUseConnectionCredentials, RDGatewayUsername, RDGatewayPassword, RDGatewayDomain, " & _
"InheritCacheBitmaps, InheritColors, " & _
"InheritDescription, InheritDisplayThemes, InheritDisplayWallpaper, InheritDomain, " & _
"InheritDescription, InheritDisplayThemes, InheritDisplayWallpaper, InheritEnableFontSmoothing, InheritEnableDesktopComposition, InheritDomain, " & _
"InheritIcon, InheritPanel, InheritPassword, InheritPort, " & _
"InheritProtocol, InheritPuttySession, InheritRedirectDiskDrives, " & _
"InheritRedirectKeys, InheritRedirectPorts, InheritRedirectPrinters, " & _
@@ -311,6 +355,8 @@ Namespace Config
sqlQuery.CommandText &= "'" & .Resolution.ToString & "',"
sqlQuery.CommandText &= "'" & .DisplayWallpaper & "',"
sqlQuery.CommandText &= "'" & .DisplayThemes & "',"
sqlQuery.CommandText &= "'" & .EnableFontSmoothing & "',"
sqlQuery.CommandText &= "'" & .EnableDesktopComposition & "',"
sqlQuery.CommandText &= "'" & .CacheBitmaps & "',"
sqlQuery.CommandText &= "'" & .RedirectDiskDrives & "',"
sqlQuery.CommandText &= "'" & .RedirectPorts & "',"
@@ -372,6 +418,8 @@ Namespace Config
sqlQuery.CommandText &= "'" & .Description & "',"
sqlQuery.CommandText &= "'" & .DisplayThemes & "',"
sqlQuery.CommandText &= "'" & .DisplayWallpaper & "',"
sqlQuery.CommandText &= "'" & .EnableFontSmoothing & "',"
sqlQuery.CommandText &= "'" & .EnableDesktopComposition & "',"
sqlQuery.CommandText &= "'" & .Domain & "',"
sqlQuery.CommandText &= "'" & .Icon & "',"
sqlQuery.CommandText &= "'" & .Panel & "',"
@@ -534,18 +582,16 @@ Namespace Config
If exp Then
xW.WriteAttributeString("Protected", "", Security.Crypt.Encrypt("ThisIsNotProtected", pW))
Else
If TryCast(tN.Tag, mRemote.Root.Info).Password = True Then
pW = TryCast(tN.Tag, mRemote.Root.Info).PasswordString
If TryCast(tN.Tag, mRemoteNG.Root.Info).Password = True Then
pW = TryCast(tN.Tag, mRemoteNG.Root.Info).PasswordString
xW.WriteAttributeString("Protected", "", Security.Crypt.Encrypt("ThisIsProtected", pW))
Else
xW.WriteAttributeString("Protected", "", Security.Crypt.Encrypt("ThisIsNotProtected", pW))
End If
End If
Dim originalCulture As System.Globalization.CultureInfo = My.Application.Culture
My.Application.ChangeCulture("en-US")
xW.WriteAttributeString("ConfVersion", "", App.Info.Connections.ConnectionFileVersion)
My.Application.ChangeCulture(originalCulture.ToString)
Dim enCulture As System.Globalization.CultureInfo = New CultureInfo("en-US")
xW.WriteAttributeString("ConfVersion", "", App.Info.Connections.ConnectionFileVersion.ToString(enCulture))
Dim tNC As TreeNodeCollection
tNC = tN.Nodes
@@ -639,6 +685,10 @@ Namespace Config
xW.WriteAttributeString("DisplayThemes", "", curConI.DisplayThemes)
xW.WriteAttributeString("EnableFontSmoothing", "", curConI.EnableFontSmoothing)
xW.WriteAttributeString("EnableDesktopComposition", "", curConI.EnableDesktopComposition)
xW.WriteAttributeString("CacheBitmaps", "", curConI.CacheBitmaps)
xW.WriteAttributeString("RedirectDiskDrives", "", curConI.RedirectDiskDrives)
@@ -706,6 +756,8 @@ Namespace Config
xW.WriteAttributeString("InheritDescription", "", curConI.Inherit.Description)
xW.WriteAttributeString("InheritDisplayThemes", "", curConI.Inherit.DisplayThemes)
xW.WriteAttributeString("InheritDisplayWallpaper", "", curConI.Inherit.DisplayWallpaper)
xW.WriteAttributeString("InheritEnableFontSmoothing", "", curConI.Inherit.EnableFontSmoothing)
xW.WriteAttributeString("InheritEnableDesktopComposition", "", curConI.Inherit.EnableDesktopComposition)
xW.WriteAttributeString("InheritDomain", "", curConI.Inherit.Domain)
xW.WriteAttributeString("InheritIcon", "", curConI.Inherit.Icon)
xW.WriteAttributeString("InheritPanel", "", curConI.Inherit.Panel)
@@ -753,6 +805,8 @@ Namespace Config
xW.WriteAttributeString("InheritDescription", "", False)
xW.WriteAttributeString("InheritDisplayThemes", "", False)
xW.WriteAttributeString("InheritDisplayWallpaper", "", False)
xW.WriteAttributeString("InheritEnableFontSmoothing", "", False)
xW.WriteAttributeString("InheritEnableDesktopComposition", "", False)
xW.WriteAttributeString("InheritDomain", "", False)
xW.WriteAttributeString("InheritIcon", "", False)
xW.WriteAttributeString("InheritPanel", "", False)
@@ -833,10 +887,10 @@ Namespace Config
csvLn += "Domain;"
End If
csvLn += "Hostname;Protocol;PuttySession;Port;ConnectToConsole;RenderingEngine;ICAEncryptionStrength;RDPAuthenticationLevel;Colors;Resolution;DisplayWallpaper;DisplayThemes;CacheBitmaps;RedirectDiskDrives;RedirectPorts;RedirectPrinters;RedirectSmartCards;RedirectSound;RedirectKeys;PreExtApp;PostExtApp;MacAddress;UserField;ExtApp;VNCCompression;VNCEncoding;VNCAuthMode;VNCProxyType;VNCProxyIP;VNCProxyPort;VNCProxyUsername;VNCProxyPassword;VNCColors;VNCSmartSizeMode;VNCViewOnly;RDGatewayUsageMethod;RDGatewayHostname;RDGatewayUseConnectionCredentials;RDGatewayUsername;RDGatewayPassword;RDGatewayDomain;"
csvLn += "Hostname;Protocol;PuttySession;Port;ConnectToConsole;RenderingEngine;ICAEncryptionStrength;RDPAuthenticationLevel;Colors;Resolution;DisplayWallpaper;DisplayThemes;EnableFontSmoothing;EnableDesktopComposition;CacheBitmaps;RedirectDiskDrives;RedirectPorts;RedirectPrinters;RedirectSmartCards;RedirectSound;RedirectKeys;PreExtApp;PostExtApp;MacAddress;UserField;ExtApp;VNCCompression;VNCEncoding;VNCAuthMode;VNCProxyType;VNCProxyIP;VNCProxyPort;VNCProxyUsername;VNCProxyPassword;VNCColors;VNCSmartSizeMode;VNCViewOnly;RDGatewayUsageMethod;RDGatewayHostname;RDGatewayUseConnectionCredentials;RDGatewayUsername;RDGatewayPassword;RDGatewayDomain;"
If SaveSecurity.Inheritance Then
csvLn += "InheritCacheBitmaps;InheritColors;InheritDescription;InheritDisplayThemes;InheritDisplayWallpaper;InheritDomain;InheritIcon;InheritPanel;InheritPassword;InheritPort;InheritProtocol;InheritPuttySession;InheritRedirectDiskDrives;InheritRedirectKeys;InheritRedirectPorts;InheritRedirectPrinters;InheritRedirectSmartCards;InheritRedirectSound;InheritResolution;InheritUseConsoleSession;InheritRenderingEngine;InheritUsername;InheritICAEncryptionStrength;InheritRDPAuthenticationLevel;InheritPreExtApp;InheritPostExtApp;InheritMacAddress;InheritUserField;InheritExtApp;InheritVNCCompression;InheritVNCEncoding;InheritVNCAuthMode;InheritVNCProxyType;InheritVNCProxyIP;InheritVNCProxyPort;InheritVNCProxyUsername;InheritVNCProxyPassword;InheritVNCColors;InheritVNCSmartSizeMode;InheritVNCViewOnly;InheritRDGatewayUsageMethod;InheritRDGatewayHostname;InheritRDGatewayUseConnectionCredentials;InheritRDGatewayUsername;InheritRDGatewayPassword;InheritRDGatewayDomain"
csvLn += "InheritCacheBitmaps;InheritColors;InheritDescription;InheritDisplayThemes;InheritDisplayWallpaper;InheritEnableFontSmoothing;InheritEnableDesktopComposition;InheritDomain;InheritIcon;InheritPanel;InheritPassword;InheritPort;InheritProtocol;InheritPuttySession;InheritRedirectDiskDrives;InheritRedirectKeys;InheritRedirectPorts;InheritRedirectPrinters;InheritRedirectSmartCards;InheritRedirectSound;InheritResolution;InheritUseConsoleSession;InheritRenderingEngine;InheritUsername;InheritICAEncryptionStrength;InheritRDPAuthenticationLevel;InheritPreExtApp;InheritPostExtApp;InheritMacAddress;InheritUserField;InheritExtApp;InheritVNCCompression;InheritVNCEncoding;InheritVNCAuthMode;InheritVNCProxyType;InheritVNCProxyIP;InheritVNCProxyPort;InheritVNCProxyUsername;InheritVNCProxyPassword;InheritVNCColors;InheritVNCSmartSizeMode;InheritVNCViewOnly;InheritRDGatewayUsageMethod;InheritRDGatewayHostname;InheritRDGatewayUseConnectionCredentials;InheritRDGatewayUsername;InheritRDGatewayPassword;InheritRDGatewayDomain"
End If
csvWr.WriteLine(csvLn)
@@ -887,10 +941,10 @@ Namespace Config
csvLn += con.Domain & ";"
End If
csvLn += con.Hostname & ";" & con.Protocol.ToString & ";" & con.PuttySession & ";" & con.Port & ";" & con.UseConsoleSession & ";" & con.RenderingEngine.ToString & ";" & con.ICAEncryption.ToString & ";" & con.RDPAuthenticationLevel.ToString & ";" & con.Colors.ToString & ";" & con.Resolution.ToString & ";" & con.DisplayWallpaper & ";" & con.DisplayThemes & ";" & con.CacheBitmaps & ";" & con.RedirectDiskDrives & ";" & con.RedirectPorts & ";" & con.RedirectPrinters & ";" & con.RedirectSmartCards & ";" & con.RedirectSound.ToString & ";" & con.RedirectKeys & ";" & con.PreExtApp & ";" & con.PostExtApp & ";" & con.MacAddress & ";" & con.UserField & ";" & con.ExtApp & ";" & con.VNCCompression.ToString & ";" & con.VNCEncoding.ToString & ";" & con.VNCAuthMode.ToString & ";" & con.VNCProxyType.ToString & ";" & con.VNCProxyIP & ";" & con.VNCProxyPort & ";" & con.VNCProxyUsername & ";" & con.VNCProxyPassword & ";" & con.VNCColors.ToString & ";" & con.VNCSmartSizeMode.ToString & ";" & con.VNCViewOnly & ";"
csvLn += con.Hostname & ";" & con.Protocol.ToString & ";" & con.PuttySession & ";" & con.Port & ";" & con.UseConsoleSession & ";" & con.RenderingEngine.ToString & ";" & con.ICAEncryption.ToString & ";" & con.RDPAuthenticationLevel.ToString & ";" & con.Colors.ToString & ";" & con.Resolution.ToString & ";" & con.DisplayWallpaper & ";" & con.DisplayThemes & ";" & con.EnableFontSmoothing & ";" & con.EnableDesktopComposition & ";" & con.CacheBitmaps & ";" & con.RedirectDiskDrives & ";" & con.RedirectPorts & ";" & con.RedirectPrinters & ";" & con.RedirectSmartCards & ";" & con.RedirectSound.ToString & ";" & con.RedirectKeys & ";" & con.PreExtApp & ";" & con.PostExtApp & ";" & con.MacAddress & ";" & con.UserField & ";" & con.ExtApp & ";" & con.VNCCompression.ToString & ";" & con.VNCEncoding.ToString & ";" & con.VNCAuthMode.ToString & ";" & con.VNCProxyType.ToString & ";" & con.VNCProxyIP & ";" & con.VNCProxyPort & ";" & con.VNCProxyUsername & ";" & con.VNCProxyPassword & ";" & con.VNCColors.ToString & ";" & con.VNCSmartSizeMode.ToString & ";" & con.VNCViewOnly & ";"
If SaveSecurity.Inheritance Then
csvLn += con.Inherit.CacheBitmaps & ";" & con.Inherit.Colors & ";" & con.Inherit.Description & ";" & con.Inherit.DisplayThemes & ";" & con.Inherit.DisplayWallpaper & ";" & con.Inherit.Domain & ";" & con.Inherit.Icon & ";" & con.Inherit.Panel & ";" & con.Inherit.Password & ";" & con.Inherit.Port & ";" & con.Inherit.Protocol & ";" & con.Inherit.PuttySession & ";" & con.Inherit.RedirectDiskDrives & ";" & con.Inherit.RedirectKeys & ";" & con.Inherit.RedirectPorts & ";" & con.Inherit.RedirectPrinters & ";" & con.Inherit.RedirectSmartCards & ";" & con.Inherit.RedirectSound & ";" & con.Inherit.Resolution & ";" & con.Inherit.UseConsoleSession & ";" & con.Inherit.RenderingEngine & ";" & con.Inherit.Username & ";" & con.Inherit.ICAEncryption & ";" & con.Inherit.RDPAuthenticationLevel & ";" & con.Inherit.PreExtApp & ";" & con.Inherit.PostExtApp & ";" & con.Inherit.MacAddress & ";" & con.Inherit.UserField & ";" & con.Inherit.ExtApp & ";" & con.Inherit.VNCCompression & ";" & con.Inherit.VNCEncoding & ";" & con.Inherit.VNCAuthMode & ";" & con.Inherit.VNCProxyType & ";" & con.Inherit.VNCProxyIP & ";" & con.Inherit.VNCProxyPort & ";" & con.Inherit.VNCProxyUsername & ";" & con.Inherit.VNCProxyPassword & ";" & con.Inherit.VNCColors & ";" & con.Inherit.VNCSmartSizeMode & ";" & con.Inherit.VNCViewOnly
csvLn += con.Inherit.CacheBitmaps & ";" & con.Inherit.Colors & ";" & con.Inherit.Description & ";" & con.Inherit.DisplayThemes & ";" & con.Inherit.DisplayWallpaper & ";" & con.Inherit.EnableFontSmoothing & ";" & con.Inherit.EnableDesktopComposition & ";" & con.Inherit.Domain & ";" & con.Inherit.Icon & ";" & con.Inherit.Panel & ";" & con.Inherit.Password & ";" & con.Inherit.Port & ";" & con.Inherit.Protocol & ";" & con.Inherit.PuttySession & ";" & con.Inherit.RedirectDiskDrives & ";" & con.Inherit.RedirectKeys & ";" & con.Inherit.RedirectPorts & ";" & con.Inherit.RedirectPrinters & ";" & con.Inherit.RedirectSmartCards & ";" & con.Inherit.RedirectSound & ";" & con.Inherit.Resolution & ";" & con.Inherit.UseConsoleSession & ";" & con.Inherit.RenderingEngine & ";" & con.Inherit.Username & ";" & con.Inherit.ICAEncryption & ";" & con.Inherit.RDPAuthenticationLevel & ";" & con.Inherit.PreExtApp & ";" & con.Inherit.PostExtApp & ";" & con.Inherit.MacAddress & ";" & con.Inherit.UserField & ";" & con.Inherit.ExtApp & ";" & con.Inherit.VNCCompression & ";" & con.Inherit.VNCEncoding & ";" & con.Inherit.VNCAuthMode & ";" & con.Inherit.VNCProxyType & ";" & con.Inherit.VNCProxyIP & ";" & con.Inherit.VNCProxyPort & ";" & con.Inherit.VNCProxyUsername & ";" & con.Inherit.VNCProxyPassword & ";" & con.Inherit.VNCColors & ";" & con.Inherit.VNCSmartSizeMode & ";" & con.Inherit.VNCViewOnly
End If
csvWr.WriteLine(csvLn)

View File

@@ -1,7 +1,8 @@
Imports System.IO
Imports WeifenLuo.WinFormsUI.Docking
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.Xml
Imports System.Environment
Namespace Config
Namespace Settings
@@ -37,28 +38,44 @@ Namespace Config
My.Settings.UpdatePending = False
End If
If My.Settings.MainFormLocation <> New Point(999, 999) Then
.Location = My.Settings.MainFormLocation
App.SupportedCultures.InstantiateSingleton()
If Not My.Settings.OverrideUICulture = "" And App.SupportedCultures.IsNameSupported(My.Settings.OverrideUICulture) Then
Threading.Thread.CurrentThread.CurrentUICulture = New Globalization.CultureInfo(My.Settings.OverrideUICulture)
log.InfoFormat("Override Culture: {0}/{1}", Threading.Thread.CurrentThread.CurrentUICulture.Name, Threading.Thread.CurrentThread.CurrentUICulture.NativeName)
End If
If My.Settings.MainFormSize <> Nothing Then
.Size = My.Settings.MainFormSize
End If
'check if form is visible
Dim curScreen As Screen = Screen.FromHandle(.Handle)
If .Right < curScreen.Bounds.Left Or .Left > curScreen.Bounds.Right _
Or .Top * -1 > curScreen.Bounds.Top * -1 Or .Bottom > curScreen.Bounds.Bottom Then
.Location = curScreen.Bounds.Location
End If
If My.Settings.MainFormState = Nothing Or My.Settings.MainFormState = FormWindowState.Minimized Then
.WindowState = FormWindowState.Normal
.WindowState = FormWindowState.Normal
If My.Settings.MainFormState = FormWindowState.Normal Then
If Not My.Settings.MainFormLocation.IsEmpty Then .Location = My.Settings.MainFormLocation
If Not My.Settings.MainFormSize.IsEmpty Then .Size = My.Settings.MainFormSize
Else
.WindowState = My.Settings.MainFormState
If Not My.Settings.MainFormRestoreLocation.IsEmpty Then .Location = My.Settings.MainFormRestoreLocation
If Not My.Settings.MainFormRestoreSize.IsEmpty Then .Size = My.Settings.MainFormRestoreSize
End If
If My.Settings.MainFormState = FormWindowState.Maximized Then
.WindowState = FormWindowState.Maximized
End If
' Make sure the form is visible on the screen
Const minHorizontal As Integer = 300
Const minVertical As Integer = 150
Dim screenBounds As Drawing.Rectangle = Screen.FromHandle(.Handle).Bounds
Dim newBounds As Drawing.Rectangle = .Bounds
If newBounds.Right < screenBounds.Left + minHorizontal Then
newBounds.X = screenBounds.Left + minHorizontal - newBounds.Width
End If
If newBounds.Left > screenBounds.Right - minHorizontal Then
newBounds.X = screenBounds.Right - minHorizontal
End If
If newBounds.Bottom < screenBounds.Top + minVertical Then
newBounds.Y = screenBounds.Top + minVertical - newBounds.Height
End If
If newBounds.Top > screenBounds.Bottom - minVertical Then
newBounds.Y = screenBounds.Bottom - minVertical
End If
.Location = newBounds.Location
If My.Settings.MainFormKiosk = True Then
Tools.Misc.Fullscreen.EnterFullscreen()
@@ -159,8 +176,15 @@ Namespace Config
Loop
Startup.CreatePanels()
If File.Exists(App.Info.Settings.SettingsPath & "\" & App.Info.Settings.LayoutFileName) And My.Settings.ResetPanels = False Then
.pnlDock.LoadFromXml(App.Info.Settings.SettingsPath & "\" & App.Info.Settings.LayoutFileName, AddressOf GetContentFromPersistString)
Dim oldPath As String = GetFolderPath(SpecialFolder.LocalApplicationData) & "\" & My.Application.Info.ProductName & "\" & App.Info.Settings.LayoutFileName
Dim newPath As String = App.Info.Settings.SettingsPath & "\" & App.Info.Settings.LayoutFileName
If File.Exists(newPath) Then
.pnlDock.LoadFromXml(newPath, AddressOf GetContentFromPersistString)
#If Not PORTABLE Then
ElseIf File.Exists(oldPath) Then
.pnlDock.LoadFromXml(oldPath, AddressOf GetContentFromPersistString)
#End If
Else
Startup.SetDefaultLayout()
End If
@@ -172,13 +196,19 @@ Namespace Config
End Sub
Public Sub LoadExternalAppsFromXML()
If File.Exists(App.Info.Settings.SettingsPath & "\" & App.Info.Settings.ExtAppsFilesName) = False Then
Dim oldPath As String = GetFolderPath(SpecialFolder.LocalApplicationData) & "\" & My.Application.Info.ProductName & "\" & App.Info.Settings.ExtAppsFilesName
Dim newPath As String = App.Info.Settings.SettingsPath & "\" & App.Info.Settings.ExtAppsFilesName
Dim xDom As New XmlDocument()
If File.Exists(newPath) Then
xDom.Load(newPath)
#If Not PORTABLE Then
ElseIf File.Exists(oldPath) Then
xDom.Load(oldPath)
#End If
Else
Exit Sub
End If
Dim xDom As New XmlDocument()
xDom.Load(App.Info.Settings.SettingsPath & "\" & App.Info.Settings.ExtAppsFilesName)
For Each xEl As XmlElement In xDom.DocumentElement.ChildNodes
Dim extA As New Tools.ExternalApp
extA.DisplayName = xEl.Attributes("DisplayName").Value
@@ -206,6 +236,11 @@ Namespace Config
#Region "Private Methods"
Private Function GetContentFromPersistString(ByVal persistString As String) As IDockContent
' pnlLayout.xml persistence XML fix for refactoring to mRemoteNG
If (persistString.StartsWith("mRemote.")) Then
persistString = persistString.Replace("mRemote.", "mRemoteNG.")
End If
Try
If persistString = GetType(UI.Window.Config).ToString Then
Return Windows.configPanel

View File

@@ -1,6 +1,7 @@
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.Xml
Imports System.IO
Imports mRemoteNG.Tools.WindowPlacement
Namespace Config
Namespace Settings
@@ -25,12 +26,18 @@ Namespace Config
Public Sub Save()
Try
With Me._MainForm
If .WindowState = FormWindowState.Normal Then
My.Settings.MainFormLocation = .Location
My.Settings.MainFormSize = .Size
Else
My.Settings.MainFormLocation = .RestoreBounds.Location
My.Settings.MainFormSize = .RestoreBounds.Size
Dim windowPlacement As New Tools.WindowPlacement(_MainForm)
If .WindowState = FormWindowState.Minimized And windowPlacement.RestoreToMaximized Then
.Opacity = 0
.WindowState = FormWindowState.Maximized
End If
My.Settings.MainFormLocation = .Location
My.Settings.MainFormSize = .Size
If Not .WindowState = FormWindowState.Normal Then
My.Settings.MainFormRestoreLocation = .RestoreBounds.Location
My.Settings.MainFormRestoreSize = .RestoreBounds.Size
End If
My.Settings.MainFormState = .WindowState

View File

@@ -1,5 +1,5 @@
Imports System.ComponentModel
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace Connection
Public Class Icon

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
Imports System.Windows.Forms
Imports System.Drawing
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace Connection
Public Class InterfaceControl

View File

@@ -1,5 +1,3 @@
Imports System.Windows.Forms
Namespace Connection
Public Class List
Inherits CollectionBase

View File

@@ -1,6 +1,6 @@
Imports System.Windows.Forms
Imports System.Threading
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace Connection
Namespace Protocol
@@ -39,12 +39,12 @@ Namespace Connection
End Property
#End Region
Private _Force As mRemote.Connection.Info.Force
Public Property Force() As mRemote.Connection.Info.Force
Private _Force As mRemoteNG.Connection.Info.Force
Public Property Force() As mRemoteNG.Connection.Info.Force
Get
Return Me._Force
End Get
Set(ByVal value As mRemote.Connection.Info.Force)
Set(ByVal value As mRemoteNG.Connection.Info.Force)
Me._Force = value
End Set
End Property

View File

@@ -1,6 +1,3 @@
Imports System.Windows.Forms
Imports mRemote.App.Runtime
Namespace Connection
Namespace Protocol
Public Class HTTP

View File

@@ -1,6 +1,7 @@
Imports System.Windows.Forms
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.ComponentModel
Imports mRemoteNG.Tools.LocalizedAttributes
Namespace Connection
Namespace Protocol
@@ -26,7 +27,7 @@ Namespace Connection
NewExtended()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't create new Connection.Protocol.HTTPBase" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strHttpConnectionFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -64,7 +65,7 @@ Namespace Connection
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't SetProps (Connection.Protocol.HTTPBase)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strHttpSetPropsFailed & vbNewLine & ex.Message, True)
Return False
End Try
End Function
@@ -107,7 +108,7 @@ Namespace Connection
MyBase.Connect()
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't Connect (Connection.Protocol.HTTPBase)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strHttpConnectFailed & vbNewLine & ex.Message, True)
Return False
End Try
End Function
@@ -163,16 +164,16 @@ Namespace Connection
End If
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.WarningMsg, "wBrowser_DocumentTitleChanged (Connection.Protocol.HTTPBase) failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.WarningMsg, My.Resources.strHttpDocumentTileChangeFailed & vbNewLine & ex.Message, True)
End Try
End Sub
#End Region
#Region "Enums"
Public Enum RenderingEngine
<Description("Internet Explorer")> _
<LocalizedDescription("strHttpInternetExplorer")> _
IE = 1
<Description("Gecko (Firefox)")> _
<LocalizedDescription("strHttpGecko")> _
Gecko = 2
End Enum

View File

@@ -1,5 +1,5 @@
Imports System.Windows.Forms
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace Connection
Namespace Protocol

View File

@@ -1,7 +1,8 @@
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.Threading
Imports AxWFICALib
Imports System.ComponentModel
Imports mRemoteNG.Tools.LocalizedAttributes
Namespace Connection
Namespace Protocol
@@ -18,7 +19,7 @@ Namespace Connection
Try
Me.Control = New AxICAClient
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't create new Connection.Protocol.ICA" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIcaControlFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -45,13 +46,37 @@ Namespace Connection
Me.SetSecurity()
'Disable hotkeys for international users
ICA.Hotkey1Shift = Nothing
ICA.Hotkey1Char = Nothing
ICA.Hotkey2Shift = Nothing
ICA.Hotkey2Char = Nothing
ICA.Hotkey3Shift = Nothing
ICA.Hotkey3Char = Nothing
ICA.Hotkey4Shift = Nothing
ICA.Hotkey4Char = Nothing
ICA.Hotkey5Shift = Nothing
ICA.Hotkey5Char = Nothing
ICA.Hotkey6Shift = Nothing
ICA.Hotkey6Char = Nothing
ICA.Hotkey7Shift = Nothing
ICA.Hotkey7Char = Nothing
ICA.Hotkey8Shift = Nothing
ICA.Hotkey8Char = Nothing
ICA.Hotkey9Shift = Nothing
ICA.Hotkey9Char = Nothing
ICA.Hotkey10Shift = Nothing
ICA.Hotkey10Char = Nothing
ICA.Hotkey11Shift = Nothing
ICA.Hotkey11Char = Nothing
ICA.PersistentCacheEnabled = Info.CacheBitmaps
ICA.Title = Info.Name
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't SetProps (Connection.Protocol.ICA)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIcaSetPropsFailed & vbNewLine & ex.Message, True)
Return False
End Try
End Function
@@ -64,7 +89,7 @@ Namespace Connection
MyBase.Connect()
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed!" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIcaConnectionFailed & vbNewLine & ex.Message)
Return False
End Try
End Function
@@ -110,7 +135,7 @@ Namespace Connection
ICA.Domain = _dom
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "ICA SetCredentials failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIcaSetCredentialsFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -135,7 +160,7 @@ Namespace Connection
ICA.SetWindowSize(WFICALib.ICAWindowType.WindowTypeClient, RDP.Resolutions.Items(Int(Info.Resolution)).Width, RDP.Resolutions.Items(Int(Info.Resolution)).Height, 0)
End Select
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "ICA SetResolution failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIcaSetResolutionFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -143,6 +168,8 @@ Namespace Connection
Select Case Info.Colors
Case RDP.RDPColors.Colors256
ICA.SetProp("DesiredColor", 2)
Case RDP.RDPColors.Colors15Bit
ICA.SetProp("DesiredColor", 4)
Case RDP.RDPColors.Colors16Bit
ICA.SetProp("DesiredColor", 4)
Case Else
@@ -174,7 +201,7 @@ Namespace Connection
AddHandler ICA.OnConnectFailed, AddressOf ICAEvent_OnConnectFailed
AddHandler ICA.OnDisconnect, AddressOf ICAEvent_OnDisconnect
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "ICA SetEventHandlers failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIcaSetEventHandlersFailed & vbNewLine & ex.Message, True)
End Try
End Sub
#End Region
@@ -229,15 +256,15 @@ Namespace Connection
End Enum
Public Enum EncryptionStrength
<Description("Basic")> _
<LocalizedDescription("strEncBasic")> _
EncrBasic = 1
<Description("128 Bit (logon only)")> _
<LocalizedDescription("strEnc128BitLogonOnly")> _
Encr128BitLogonOnly = 127
<Description("40 Bit")> _
<LocalizedDescription("strEnc40Bit")> _
Encr40Bit = 40
<Description("56 Bit")> _
<LocalizedDescription("strEnc56Bit")> _
Encr56Bit = 56
<Description("128 Bit")> _
<LocalizedDescription("strEnc128Bit")> _
Encr128Bit = 128
End Enum
#End Region

View File

@@ -1,8 +1,6 @@
Imports mRemote.App.Native
Imports mRemoteNG.App.Native
Imports System.Threading
Imports Microsoft.Win32
Imports System.Drawing
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace Connection
Namespace Protocol
@@ -112,12 +110,11 @@ Namespace Connection
IntAppHandle = IntAppProcess.MainWindowHandle
mC.AddMessage(Messages.MessageClass.InformationMsg, My.Resources.strIntAppStuff, True)
mC.AddMessage(Messages.MessageClass.InformationMsg, "--- IntApp Stuff ---", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, "IntApp Handle: " & IntAppHandle.ToString, True)
mC.AddMessage(Messages.MessageClass.InformationMsg, "IntApp Title: " & IntAppProcess.MainWindowTitle, True)
mC.AddMessage(Messages.MessageClass.InformationMsg, "IntApp Handle: " & Me.InterfaceControl.Parent.Handle.ToString, True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strIntAppHandle, IntAppHandle.ToString), True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strIntAppTitle, IntAppProcess.MainWindowTitle), True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strIntAppParentHandle, Me.InterfaceControl.Parent.Handle.ToString), True)
SetParent(Me.IntAppHandle, Me.InterfaceControl.Parent.Handle)
SetWindowLong(Me.IntAppHandle, 0, WS_VISIBLE)
@@ -128,7 +125,7 @@ Namespace Connection
MyBase.Connect()
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't Connect" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIntAppConnectionFailed & vbNewLine & ex.Message)
Return False
End Try
End Function
@@ -138,7 +135,7 @@ Namespace Connection
Try
SetForegroundWindow(IntAppHandle)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't Focus (Connection.Protocol.IntApp)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIntAppFocusFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -146,7 +143,7 @@ Namespace Connection
Try
MoveWindow(IntAppHandle, -SystemInformation.FrameBorderSize.Width, -(SystemInformation.CaptionHeight + SystemInformation.FrameBorderSize.Height), Me.InterfaceControl.Width + (SystemInformation.FrameBorderSize.Width * 2), Me.InterfaceControl.Height + SystemInformation.CaptionHeight + (SystemInformation.FrameBorderSize.Height * 2), True)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't Resize (Connection.Protocol.IntApp)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIntAppResizeFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -156,7 +153,7 @@ Namespace Connection
IntAppProcess.Kill()
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Killing IntApp Process failed (Connection.Protocol.IntApp)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIntAppKillFailed & vbNewLine & ex.Message, True)
End Try
Try
@@ -164,7 +161,7 @@ Namespace Connection
IntAppProcess.Dispose()
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Dispose of IntApp process failed (Connection.Protocol.IntApp)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strIntAppDisposeFailed & vbNewLine & ex.Message, True)
End Try
MyBase.Close()

View File

@@ -1,29 +1,30 @@
Imports System.ComponentModel
Imports mRemoteNG.Tools.LocalizedAttributes
Namespace Connection
Namespace Protocol
Public Enum Protocols
<Description("RDP")> _
<LocalizedDescription("strRDP")> _
RDP = 0
<Description("VNC")> _
<LocalizedDescription("strVnc")> _
VNC = 1
<Description("SSH1")> _
<LocalizedDescription("strSsh1")> _
SSH1 = 2
<Description("SSH2")> _
<LocalizedDescription("strSsh2")> _
SSH2 = 3
<Description("Telnet")> _
<LocalizedDescription("strTelnet")> _
Telnet = 4
<Description("Rlogin")> _
<LocalizedDescription("strRlogin")> _
Rlogin = 5
<Description("RAW")> _
<LocalizedDescription("strRAW")> _
RAW = 6
<Description("HTTP")> _
<LocalizedDescription("strHttp")> _
HTTP = 7
<Description("HTTPS")> _
<LocalizedDescription("strHttps")> _
HTTPS = 8
<Description("ICA")> _
<LocalizedDescription("strICA")> _
ICA = 9
<Description("Ext. App")> _
<LocalizedDescription("strExtApp")> _
IntApp = 20
<Browsable(False)> _
NONE = 999

View File

@@ -1,8 +1,8 @@
Imports mRemote.App.Native
Imports mRemoteNG.App.Native
Imports System.Threading
Imports Microsoft.Win32
Imports System.Drawing
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace Connection
Namespace Protocol
@@ -165,11 +165,11 @@ Namespace Connection
PuttyHandle = PuttyProcess.MainWindowHandle
mC.AddMessage(Messages.MessageClass.InformationMsg, "--- PuTTY Stuff ---", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, My.Resources.strPuttyStuff, True)
mC.AddMessage(Messages.MessageClass.InformationMsg, "PuTTY Handle: " & PuttyHandle.ToString, True)
mC.AddMessage(Messages.MessageClass.InformationMsg, "PuTTY Title: " & PuttyProcess.MainWindowTitle, True)
mC.AddMessage(Messages.MessageClass.InformationMsg, "Panel Handle: " & Me.InterfaceControl.Parent.Handle.ToString, True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strPuttyHandle, PuttyHandle.ToString), True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strPuttyTitle, PuttyProcess.MainWindowTitle), True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strPuttyParentHandle, Me.InterfaceControl.Parent.Handle.ToString), True)
SetParent(PuttyHandle, InterfaceControl.Parent.Handle)
ShowWindow(PuttyHandle, SW_SHOWMAXIMIZED)
@@ -178,7 +178,7 @@ Namespace Connection
MyBase.Connect()
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't Connect" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strPuttyConnectionFailed & vbNewLine & ex.Message)
Return False
End Try
End Function
@@ -187,7 +187,7 @@ Namespace Connection
Try
'SetForegroundWindow(PuttyHandle)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't Focus (Connection.Protocol.PuttyBase)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strPuttyFocusFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -195,7 +195,7 @@ Namespace Connection
Try
MoveWindow(PuttyHandle, -SystemInformation.FrameBorderSize.Width, -(SystemInformation.CaptionHeight + SystemInformation.FrameBorderSize.Height), Me.InterfaceControl.Width + (SystemInformation.FrameBorderSize.Width * 2), Me.InterfaceControl.Height + SystemInformation.CaptionHeight + (SystemInformation.FrameBorderSize.Height * 2), True)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't Resize (Connection.Protocol.PuttyBase)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strPuttyResizeFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -205,13 +205,13 @@ Namespace Connection
PuttyProcess.Kill()
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Killing Putty Process failed (Connection.Protocol.PuttyBase)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strPuttyKillFailed & vbNewLine & ex.Message, True)
End Try
Try
PuttyProcess.Dispose()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Dispose of Putty process failed (Connection.Protocol.PuttyBase)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strPuttyDisposeFailed & vbNewLine & ex.Message, True)
End Try
MyBase.Close()
@@ -222,7 +222,7 @@ Namespace Connection
PostMessage(Me.PuttyHandle, WM_SYSCOMMAND, IDM_RECONF, 0)
SetForegroundWindow(Me.PuttyHandle)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "ShowSettingsDialog failed (Connection.Protocol.PuttyBase)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strPuttyShowSettingsDialogFailed & vbNewLine & ex.Message, True)
End Try
End Sub
#End Region
@@ -244,7 +244,7 @@ Namespace Connection
Return arrKeys
Catch ex As Exception
App.Runtime.mC.AddMessage(Messages.MessageClass.WarningMsg, "Couldn't get Putty sessions" & vbNewLine & ex.Message, True)
App.Runtime.mC.AddMessage(Messages.MessageClass.WarningMsg, My.Resources.strPuttyGetSessionsFailed & vbNewLine & ex.Message, True)
Return Nothing
End Try
End Function
@@ -258,9 +258,9 @@ Namespace Connection
p = Process.Start(pSI)
p.WaitForExit()
mRemote.Connection.PuttySession.PuttySessions = GetSessions()
mRemoteNG.Connection.PuttySession.PuttySessions = GetSessions()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't Start Putty (Connection.Protocol.PuttyBase)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strPuttyStartFailed & vbNewLine & ex.Message, True)
End Try
End Sub
#End Region

View File

@@ -3,7 +3,8 @@ Imports System.Threading
Imports AxMSTSCLib
Imports EOLWTSCOM
Imports System.ComponentModel
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports mRemoteNG.Tools.LocalizedAttributes
Namespace Connection
Namespace Protocol
@@ -58,11 +59,10 @@ Namespace Connection
System.Windows.Forms.Application.DoEvents()
Loop
Catch comEx As System.Runtime.InteropServices.COMException
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Couldn't create RDP control, please check mRemote requirements." & vbNewLine & vbNewLine & comEx.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpControlCreationFailed & vbNewLine & vbNewLine & comEx.Message)
RDP.Dispose()
Return False
End Try
Me.RDPVersion = New Version(RDP.Version)
@@ -75,7 +75,7 @@ Namespace Connection
'not user changeable
RDP.AdvancedSettings2.GrabFocusOnConnect = True
RDP.AdvancedSettings3.EnableAutoReconnect = True
RDP.AdvancedSettings3.MaxReconnectAttempts = 3
RDP.AdvancedSettings3.MaxReconnectAttempts = My.Settings.RdpReconnectionCount
RDP.AdvancedSettings2.keepAliveInterval = 60000 'in milliseconds (10.000 = 10 seconds)
RDP.AdvancedSettings5.AuthenticationLevel = 0
RDP.AdvancedSettings.EncryptionEnabled = 1
@@ -96,11 +96,13 @@ Namespace Connection
Me.SetPerformanceFlags()
RDP.ConnectingText = Language.Base.Connecting
RDP.ConnectingText = My.Resources.strConnecting
Control.Anchor = AnchorStyles.None
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetProps failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetPropsFailed & vbNewLine & ex.Message, True)
Return False
End Try
End Function
@@ -113,7 +115,7 @@ Namespace Connection
MyBase.Connect()
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed!" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpConnectionOpenFailed & vbNewLine & ex.Message)
End Try
Return False
@@ -123,7 +125,7 @@ Namespace Connection
Try
RDP.Disconnect()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP Disconnect failed, trying to close" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpDisconnectFailed & vbNewLine & ex.Message, True)
MyBase.Close()
End Try
End Sub
@@ -132,7 +134,7 @@ Namespace Connection
Try
Me.Fullscreen = Not Me.Fullscreen
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP ToggleFullscreen failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpToggleFullscreenFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -140,7 +142,7 @@ Namespace Connection
Try
Me.SmartSize = Not Me.SmartSize
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP ToggleSmartSize failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpToggleSmartSizeFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -150,16 +152,22 @@ Namespace Connection
RDP.Focus()
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP Focus failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpFocusFailed & vbNewLine & ex.Message, True)
End Try
End Sub
Public Overrides Sub Resize()
Control.Location = InterfaceControl.Location
Control.Size = InterfaceControl.Size
MyBase.Resize()
End Sub
#End Region
#Region "Private Methods"
Private Sub SetRDGateway()
Try
If RDP.TransportSettings.GatewayIsSupported = 1 Then
mC.AddMessage(Messages.MessageClass.InformationMsg, "RD Gateway is supported", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, My.Resources.strRdpGatewayIsSupported, True)
If Me.Info.RDGatewayUsageMethod <> RDGatewayUsageMethod.Never Then
RDP.TransportSettings2.GatewayProfileUsageMethod = 1
RDP.TransportSettings.GatewayUsageMethod = Me.Info.RDGatewayUsageMethod
@@ -175,10 +183,10 @@ Namespace Connection
End If
End If
Else
mC.AddMessage(Messages.MessageClass.InformationMsg, "RD Gateway is not supported", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, My.Resources.strRdpGatewayNotSupported, True)
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetRDGateway failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetGatewayFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -186,31 +194,31 @@ Namespace Connection
Try
If (Me.Force And Connection.Info.Force.UseConsoleSession) = Connection.Info.Force.UseConsoleSession Then
If RDPVersion < Versions.RDC61 Then
mC.AddMessage(Messages.MessageClass.InformationMsg, "Setting Console switch for RDC 6.0", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strRdpSetConsoleSwitch, "6.0"), True)
RDP.AdvancedSettings2.ConnectToServerConsole = True
Else
mC.AddMessage(Messages.MessageClass.InformationMsg, "Setting Console switch for RDC 6.1", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strRdpSetConsoleSwitch, "6.1"), True)
RDP.AdvancedSettings6.ConnectToAdministerServer = True
End If
ElseIf (Me.Force And Connection.Info.Force.DontUseConsoleSession) = Connection.Info.Force.DontUseConsoleSession Then
If RDPVersion < Versions.RDC61 Then
mC.AddMessage(Messages.MessageClass.InformationMsg, "Setting Console switch for RDC 6.0", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strRdpSetConsoleSwitch, "6.0"), True)
RDP.AdvancedSettings2.ConnectToServerConsole = False
Else
mC.AddMessage(Messages.MessageClass.InformationMsg, "Setting Console switch for RDC 6.1", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strRdpSetConsoleSwitch, "6.1"), True)
RDP.AdvancedSettings6.ConnectToAdministerServer = False
End If
Else
If RDPVersion < Versions.RDC61 Then
mC.AddMessage(Messages.MessageClass.InformationMsg, "Setting Console switch for RDC 6.0", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strRdpSetConsoleSwitch, "6.0"), True)
RDP.AdvancedSettings2.ConnectToServerConsole = Me.Info.UseConsoleSession
Else
mC.AddMessage(Messages.MessageClass.InformationMsg, "Setting Console switch for RDC 6.1", True)
mC.AddMessage(Messages.MessageClass.InformationMsg, String.Format(My.Resources.strRdpSetConsoleSwitch, "6.1"), True)
RDP.AdvancedSettings6.ConnectToAdministerServer = Me.Info.UseConsoleSession
End If
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetUseConsoleSession failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetConsoleSessionFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -253,7 +261,7 @@ Namespace Connection
RDP.Domain = _dom
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetCredentials failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetCredentialsFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -284,7 +292,7 @@ Namespace Connection
RDP.DesktopHeight = Resolutions.Items(Int(Me.Info.Resolution)).Height
End Select
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetResolution failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetResolutionFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -294,7 +302,7 @@ Namespace Connection
RDP.AdvancedSettings2.RDPPort = Me.Info.Port
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetPort failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetPortFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -307,7 +315,7 @@ Namespace Connection
RDP.FullScreen = True
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetRedirectKeys failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetRedirectKeysFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -319,7 +327,7 @@ Namespace Connection
RDP.AdvancedSettings2.RedirectSmartCards = Me.Info.RedirectSmartCards
RDP.SecuredSettings2.AudioRedirectionMode = Int(Me.Info.RedirectSound)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetRedirection failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetRedirectionFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -334,9 +342,17 @@ Namespace Connection
pFlags += Int(Connection.Protocol.RDP.RDPPerformanceFlags.DisableWallpaper)
End If
RDP.AdvancedSettings2.PerformanceFlags = pFlags
If Me.Info.EnableFontSmoothing Then
pFlags += Int(Connection.Protocol.RDP.RDPPerformanceFlags.EnableFontSmoothing)
End If
If Me.Info.EnableDesktopComposition Then
pFlags += Int(Connection.Protocol.RDP.RDPPerformanceFlags.EnableDesktopComposition)
End If
RDP.AdvancedSettings.PerformanceFlags = pFlags
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetPerformanceFlags failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetPerformanceFlagsFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -344,7 +360,7 @@ Namespace Connection
Try
RDP.AdvancedSettings5.AuthenticationLevel = Me.Info.RDPAuthenticationLevel
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetAuthenticationLevel failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetAuthenticationLevelFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -356,7 +372,7 @@ Namespace Connection
AddHandler RDP.OnDisconnected, AddressOf RDPEvent_OnDisconnected
AddHandler RDP.OnLeaveFullScreenMode, AddressOf RDPEvent_OnLeaveFullscreenMode
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP SetEventHandlers failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpSetEventHandlersFailed & vbNewLine & ex.Message, True)
End Try
End Sub
#End Region
@@ -408,46 +424,52 @@ Namespace Connection
End Enum
Public Enum RDPColors
<Description(Language.Base.RDP256Colors)> _
<LocalizedDescription("strRDP256Colors")> _
Colors256 = 8
<Description("16 Bit")> _
<LocalizedDescription("strRDP32768Colors")> _
Colors15Bit = 15
<LocalizedDescription("strRDP65536Colors")> _
Colors16Bit = 16
<Description("24 Bit")> _
<LocalizedDescription("strRDP16777216Colors")> _
Colors24Bit = 24
<Description("32 Bit")> _
<LocalizedDescription("strRDP4294967296Colors")> _
Colors32Bit = 32
End Enum
Public Enum RDPSounds
<Description(Language.Base.RDPSoundBringToThisComputer)> _
<LocalizedDescription("strRDPSoundBringToThisComputer")> _
BringToThisComputer = 0
<Description(Language.Base.RDPSoundLeaveAtRemoteComputer)> _
<LocalizedDescription("strRDPSoundLeaveAtRemoteComputer")> _
LeaveAtRemoteComputer = 1
<Description(Language.Base.RDPSoundDoNotPlay)> _
<LocalizedDescription("strRDPSoundDoNotPlay")> _
DoNotPlay = 2
End Enum
Private Enum RDPPerformanceFlags
<Description("Disable Wallpaper")> _
DisableWallpaper = 1
<Description("Disable Full Window drag")> _
DisableFullWindowDrag = 2
<Description("Disable Menu Animations")> _
DisableMenuAnimations = 4
<Description("Disable Themes")> _
DisableThemes = 8
<Description("Disable Cursor Shadow")> _
DisableCursorShadow = 20
<Description("Disable Cursor blinking")> _
DisableCursorBlinking = 40
<Description("strRDPDisableWallpaper")> _
DisableWallpaper = &H1
<Description("strRDPDisableFullWindowdrag")> _
DisableFullWindowDrag = &H2
<Description("strRDPDisableMenuAnimations")> _
DisableMenuAnimations = &H4
<Description("strRDPDisableThemes")> _
DisableThemes = &H8
<Description("strRDPDisableCursorShadow")> _
DisableCursorShadow = &H20
<Description("strRDPDisableCursorblinking")> _
DisableCursorBlinking = &H40
<Description("strRDPEnableFontSmoothing")> _
EnableFontSmoothing = &H80
<Description("strRDPEnableDesktopComposition")> _
EnableDesktopComposition = &H100
End Enum
Public Enum RDPResolutions
<Description(Language.Base.RDPFitToPanel)> _
<LocalizedDescription("strRDPFitToPanel")> _
FitToWindow
<Description(Language.Base.Fullscreen)> _
<LocalizedDescription("strFullscreen")> _
Fullscreen
<Description(Language.Base.RDPSmartSize)> _
<LocalizedDescription("strRDPSmartSize")> _
SmartSize
<Description("640x480")> _
Res640x480
@@ -488,27 +510,27 @@ Namespace Connection
End Enum
Public Enum AuthenticationLevel
<Description(Language.Base.AlwaysConnectEvenIfAuthFails)> _
<LocalizedDescription("strAlwaysConnectEvenIfAuthFails")> _
NoAuth = 0
<Description(Language.Base.DontConnectWhenAuthFails)> _
<LocalizedDescription("strDontConnectWhenAuthFails")> _
AuthRequired = 1
<Description(Language.Base.WarnIfAuthFails)> _
<LocalizedDescription("strWarnIfAuthFails")> _
WarnOnFailedAuth = 2
End Enum
Public Enum RDGatewayUsageMethod
<Description("Never")> _
<LocalizedDescription("strNever")> _
Never = 0 ' TSC_PROXY_MODE_NONE_DIRECT
<Description("Always")> _
<LocalizedDescription("strAlways")> _
Always = 1 ' TSC_PROXY_MODE_DIRECT
<Description("Detect")> _
<LocalizedDescription("strDetect")> _
Detect = 2 ' TSC_PROXY_MODE_DETECT
End Enum
Public Enum RDGatewayUseConnectionCredentials
<Description("Use a different username and password")> _
<LocalizedDescription("strUseDifferentUsernameAndPassword")> _
No = 0
<Description("Use the same username and password")> _
<LocalizedDescription("strUseSameUsernameAndPassword")> _
Yes = 1
End Enum
#End Region
@@ -557,7 +579,7 @@ Namespace Connection
End If
Next
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP AddResolutions failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpAddResolutionsFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -584,7 +606,7 @@ Namespace Connection
Return nRes
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "RDP Add (Resolutions) failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpAddResolutionFailed & vbNewLine & ex.Message, True)
End Try
Return Nothing
@@ -612,7 +634,7 @@ Namespace Connection
Return True
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "OpenConnection failed (TerminalSessions)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpOpenConnectionFailed & vbNewLine & ex.Message, True)
End Try
Return False
@@ -623,7 +645,7 @@ Namespace Connection
oWTSCOM.WTSCloseServer(ServerHandle)
ServerHandle = 0
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "CloseConnection failed (TerminalSessions)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpCloseConnectionFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -646,14 +668,14 @@ Namespace Connection
If SessionUser <> "" Then
If SessionState = 0 Then
colSessions.Add(SessionID, Language.Base.Active, SessionUser, SessionName)
colSessions.Add(SessionID, My.Resources.strActive, SessionUser, SessionName)
Else
colSessions.Add(SessionID, Language.Base.Inactive, SessionUser, SessionName)
colSessions.Add(SessionID, My.Resources.strInactive, SessionUser, SessionName)
End If
End If
Next
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "GetSessions failed (TerminalSessions)" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpGetSessionsFailed & vbNewLine & ex.Message, True)
End Try
Return colSessions
@@ -692,7 +714,7 @@ Namespace Connection
List.Add(newSes)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Add Session failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpAddSessionFailed & vbNewLine & ex.Message, True)
End Try
Return newSes
@@ -751,23 +773,23 @@ Namespace Connection
#Region "Fatal Errors"
Public Class FatalErrors
Protected Shared _description() As String = { _
0 = "An unknown error has occurred.", _
1 = "Internal error code 1.", _
2 = "An out-of-memory error has occurred.", _
3 = "A window-creation error has occurred.", _
4 = "Internal error code 2.", _
5 = "Internal error code 3. This is not a valid state.", _
6 = "Internal error code 4.", _
7 = "An unrecoverable error has occurred during client connection.", _
100 = "Winsock initialization error." _
0 = My.Resources.strRdpErrorUnknown, _
1 = My.Resources.strRdpErrorCode1, _
2 = My.Resources.strRdpErrorOutOfMemory, _
3 = My.Resources.strRdpErrorWindowCreation, _
4 = My.Resources.strRdpErrorCode2, _
5 = My.Resources.strRdpErrorCode3, _
6 = My.Resources.strRdpErrorCode4, _
7 = My.Resources.strRdpErrorConnection, _
100 = My.Resources.strRdpErrorWinsock _
}
Public Shared Function GetError(ByVal id As String) As String
Try
Return (_description(id))
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "GetError failed (FatalErrors)" & vbNewLine & ex.Message, True)
Return String.Format("An unknown fatal RDP error has occurred. Error code {0}.", id)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strRdpErrorGetFailure & vbNewLine & ex.Message, True)
Return String.Format(My.Resources.strRdpErrorUnknown, id)
End Try
End Function
End Class

View File

@@ -1,6 +1,6 @@
Imports mRemote.App.Runtime
Imports VncSharp
Imports mRemoteNG.App.Runtime
Imports System.ComponentModel
Imports mRemoteNG.Tools.LocalizedAttributes
Namespace Connection
Namespace Protocol
@@ -105,14 +105,14 @@ Namespace Connection
' VNC.RestrictPixel = False
'End If
'VNC.ConnectingText = Language.Base.Connecting & " (SmartCode VNC viewer)"
'VNC.DisconnectedText = Language.Base.Disconnected
'VNC.ConnectingText = My.Resources.strInheritConnecting & " (SmartCode VNC viewer)"
'VNC.DisconnectedText = My.Resources.strInheritDisconnected
'VNC.MessageBoxes = False
'VNC.EndInit()
Return True
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "VNC SetProps failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strVncSetPropsFailed & vbNewLine & ex.Message, True)
Return False
End Try
End Function
@@ -123,7 +123,7 @@ Namespace Connection
Try
VNC.Connect(Me.Info.Hostname, Me.Info.VNCViewOnly, Info.VNCSmartSizeMode <> SmartSizeMode.SmartSNo)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Opening connection failed" & vbNewLine & ex.Message)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strVncConnectionOpenFailed & vbNewLine & ex.Message)
Return False
End Try
@@ -134,7 +134,7 @@ Namespace Connection
Try
VNC.Disconnect()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "VNC Disconnect failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strVncConnectionDisconnectFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -147,7 +147,7 @@ Namespace Connection
VNC.SendSpecialKeys(SpecialKeys.CtrlEsc)
End Select
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "VNC SendSpecialKeys failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strVncSendSpecialKeysFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -156,7 +156,7 @@ Namespace Connection
SmartSize = Not SmartSize
RefreshScreen()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "VNC ToggleSmartSize failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strVncToggleSmartSizeFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -164,7 +164,7 @@ Namespace Connection
Try
ViewOnly = Not ViewOnly
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "VNC ToggleViewOnly failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strVncToggleViewOnlyFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -177,7 +177,7 @@ Namespace Connection
' mC.AddMessage(Messages.MessageClass.InformationMsg, "VNC Server doesn't support chat")
'End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "VNC StartChat failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strVncStartChatFailed & vbNewLine & ex.Message, True)
End Try
End Sub
@@ -197,7 +197,7 @@ Namespace Connection
Try
VNC.FullScreenUpdate()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "VNC RefreshScreen failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strVncRefreshFailed & vbNewLine & ex.Message, True)
End Try
End Sub
#End Region
@@ -207,11 +207,12 @@ Namespace Connection
Try
AddHandler VNC.ConnectComplete, AddressOf VNCEvent_Connected
AddHandler VNC.ConnectionLost, AddressOf VNCEvent_Disconnected
AddHandler mRemoteNG.frmMain.clipboardchange, AddressOf VNCEvent_ClipboardChanged
If Not String.IsNullOrEmpty(Info.Password) Then
VNC.GetPassword = AddressOf VNCEvent_Authenticate
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "VNC SetEventHandlers failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strVncSetEventHandlersFailed & vbNewLine & ex.Message, True)
End Try
End Sub
#End Region
@@ -227,6 +228,10 @@ Namespace Connection
MyBase.Close()
End Sub
Private Sub VNCEvent_ClipboardChanged()
Me.VNC.FillServerClipboard()
End Sub
Private Function VNCEvent_Authenticate() As String
Return Info.Password
End Function
@@ -243,7 +248,7 @@ Namespace Connection
End Enum
Public Enum Compression
<Description(Language.Base.NoCompression)> _
<LocalizedDescription("strNoCompression")> _
CompNone = 99
<Description("0")> _
Comp0 = 0
@@ -287,36 +292,36 @@ Namespace Connection
End Enum
Public Enum AuthMode
<Description("VNC")> _
<LocalizedDescription("VNC")> _
AuthVNC
<Description("Windows")> _
<LocalizedDescription("Windows")> _
AuthWin
End Enum
Public Enum ProxyType
<Description(Language.Base.None)> _
<LocalizedDescription("strNone")> _
ProxyNone
<Description("HTTP")> _
<LocalizedDescription("strHttp")> _
ProxyHTTP
<Description("Socks 5")> _
<LocalizedDescription("strSocks5")> _
ProxySocks5
<Description("Ultra VNC Repeater")> _
<LocalizedDescription("strUltraVncRepeater")> _
ProxyUltra
End Enum
Public Enum Colors
<Description(Language.Base.Normal)> _
<LocalizedDescription("strNormal")> _
ColNormal
<Description("8-bit")> _
Col8Bit
End Enum
Public Enum SmartSizeMode
<Description(Language.Base.NoSmartSize)> _
<LocalizedDescription("strNoSmartSize")> _
SmartSNo
<Description(Language.Base.Free)> _
<LocalizedDescription("strFree")> _
SmartSFree
<Description(Language.Base.Aspect)> _
<LocalizedDescription("strAspect")> _
SmartSAspect
End Enum
#End Region

View File

@@ -1,4 +1,4 @@
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace Connection
Public Class QuickConnect
@@ -13,7 +13,7 @@ Namespace Connection
End If
Next
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "QuickConnect History Exists failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strQuickConnectHistoryExistsFailed & vbNewLine & ex.Message, True)
End Try
Return False
@@ -23,7 +23,7 @@ Namespace Connection
Try
qBox.Items.Insert(0, Text)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "QuickConnect History Add failed" & vbNewLine & ex.Message, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, My.Resources.strQuickConnectAddFailed & vbNewLine & ex.Message, True)
End Try
End Sub
End Class

View File

@@ -1,21 +1,21 @@
Imports System.Windows.Forms
Imports System.ComponentModel
Imports mRemote.Tools.Misc.PropertyGridCategory
Imports mRemoteNG.Tools.LocalizedAttributes
Namespace Container
<DefaultProperty("Name")> _
Public Class Info
#Region "Properties"
Private _Name As String = "New Container"
<Category(Category1 & "Display"), _
Browsable(True), _
[ReadOnly](False), _
Bindable(False), _
DefaultValue(""), _
DesignOnly(False), _
DisplayName(Language.Base.Props_Name), _
Description("Enter a name"), _
Attributes.Container()> _
<LocalizedCategory("strCategoryDisplay", 1), _
Browsable(True), _
[ReadOnly](False), _
Bindable(False), _
DefaultValue(""), _
DesignOnly(False), _
LocalizedDisplayName("strPropertyNameName"), _
LocalizedDescription("strPropertyDescriptionName"), _
Attributes.Container()> _
Public Property Name() As String
Get
Return Me._ConnectionInfo.Name

View File

@@ -1,5 +1,3 @@
Imports System.Windows.Forms
Namespace Container
Public Class List
Inherits CollectionBase

View File

@@ -1,15 +1,14 @@
Imports System.ComponentModel
Imports mRemote.Tools.Misc.PropertyGridCategory
Imports mRemote.Tools.Misc.PropertyGridValue
Imports mRemoteNG.Tools.LocalizedAttributes
Namespace Credential
Public Class Info
#Region "1 Display"
Private _Name As String
<Category(Category1 & "Display"), _
Browsable(True), _
DisplayName(Language.Base.Props_Name), _
Description("Enter a name")> _
<LocalizedCategory("strCategoryDisplay", 1), _
Browsable(True), _
LocalizedDisplayName("strPropertyNameName"), _
LocalizedDescription("strPropertyDescriptionName")> _
Public Property Name() As String
Get
Return _Name
@@ -20,10 +19,10 @@ Namespace Credential
End Property
Private _Description As String
<Category(Category1 & "Description"), _
Browsable(True), _
DisplayName(Language.Base.Props_Description), _
Description("Enter a description")> _
<LocalizedCategory("strCategoryDisplay", 1), _
Browsable(True), _
LocalizedDisplayName("strPropertyNameDescription"), _
LocalizedDescription("strPropertyDescriptionDescription")> _
Public Property Description() As String
Get
Return _Description
@@ -35,10 +34,10 @@ Namespace Credential
#End Region
#Region "2 Credentials"
Private _Username As String
<Category(Category2 & "Credentials"), _
<LocalizedCategory("strCategoryCredentials", 2), _
Browsable(True), _
DisplayName(Language.Base.Props_Username), _
Description("Enter a username")> _
LocalizedDisplayName("strPropertyNameUsername"), _
LocalizedDescription("strPropertyDescriptionUsername")> _
Public Property Username() As String
Get
Return _Username
@@ -49,10 +48,10 @@ Namespace Credential
End Property
Private _Password As String
<Category(Category2 & "Credentials"), _
<LocalizedCategory("strCategoryCredentials", 2), _
Browsable(True), _
DisplayName(Language.Base.Props_Password), _
Description("Enter a password"), _
LocalizedDisplayName("strPropertyNamePassword"), _
LocalizedDescription("strPropertyDescriptionPassword"), _
PasswordPropertyText(True)> _
Public Property Password() As String
Get
@@ -64,10 +63,10 @@ Namespace Credential
End Property
Private _Domain As String
<Category(Category2 & "Credentials"), _
<LocalizedCategory("strCategoryCredentials", 2), _
Browsable(True), _
DisplayName(Language.Base.Props_Domain), _
Description("Enter a domain")> _
LocalizedDisplayName("strPropertyNameDomain"), _
LocalizedDescription("strPropertyDescriptionDomain")> _
Public Property Domain() As String
Get
Return _Domain

View File

@@ -46,7 +46,7 @@ Partial Class frmChoosePanel
Me.btnOK.Name = "btnOK"
Me.btnOK.Size = New System.Drawing.Size(69, 23)
Me.btnOK.TabIndex = 20
Me.btnOK.Text = Language.Base.Button_OK
Me.btnOK.Text = My.Resources.strButtonOK
Me.btnOK.UseVisualStyleBackColor = True
'
'lblDescription
@@ -55,18 +55,18 @@ Partial Class frmChoosePanel
Me.lblDescription.Name = "lblDescription"
Me.lblDescription.Size = New System.Drawing.Size(229, 29)
Me.lblDescription.TabIndex = 0
Me.lblDescription.Text = Language.Base.SelectAPanel
Me.lblDescription.Text = My.Resources.strLabelSelectPanel
'
'btnNew
'
Me.btnNew.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.btnNew.Image = Global.mRemote.My.Resources.Resources.Panel_Add
Me.btnNew.Image = Global.mRemoteNG.My.Resources.Resources.Panel_Add
Me.btnNew.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft
Me.btnNew.Location = New System.Drawing.Point(10, 44)
Me.btnNew.Name = "btnNew"
Me.btnNew.Size = New System.Drawing.Size(57, 23)
Me.btnNew.TabIndex = 40
Me.btnNew.Text = Language.Base.Button_New
Me.btnNew.Text = My.Resources.strButtonNew
Me.btnNew.TextAlign = System.Drawing.ContentAlignment.MiddleRight
Me.btnNew.UseVisualStyleBackColor = True
'
@@ -78,7 +78,7 @@ Partial Class frmChoosePanel
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(69, 23)
Me.btnCancel.TabIndex = 30
Me.btnCancel.Text = Language.Base.Button_Cancel
Me.btnCancel.Text = My.Resources.strButtonCancel
Me.btnCancel.UseVisualStyleBackColor = True
'
'frmChoosePanel
@@ -94,13 +94,13 @@ Partial Class frmChoosePanel
Me.Controls.Add(Me.btnOK)
Me.Controls.Add(Me.cbPanels)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
Me.Icon = Global.mRemote.My.Resources.Resources.Panels_Icon
Me.Icon = Global.mRemoteNG.My.Resources.Resources.Panels_Icon
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmChoosePanel"
Me.ShowInTaskbar = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent
Me.Text = Language.Base.SelectPanel
Me.Text = My.Resources.strTitleSelectPanel
Me.ResumeLayout(False)
End Sub

View File

@@ -1,4 +1,4 @@
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Public Class frmChoosePanel
Public Property Panel() As String
@@ -17,11 +17,11 @@ Public Class frmChoosePanel
End Sub
Private Sub ApplyLanguage()
btnOK.Text = Language.Base.Button_OK
lblDescription.Text = Language.Base.SelectAPanel
btnNew.Text = Language.Base.Button_New
btnCancel.Text = Language.Base.Button_Cancel
Text = Language.Base.SelectPanel
btnOK.Text = My.Resources.strButtonOK
lblDescription.Text = My.Resources.strLabelSelectPanel
btnNew.Text = My.Resources.strButtonNew
btnCancel.Text = My.Resources.strButtonCancel
Text = My.Resources.strTitleSelectPanel
End Sub
Private Sub AddAvailablePanels()
@@ -42,7 +42,7 @@ Public Class frmChoosePanel
End Sub
Private Sub btnNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNew.Click
Dim pnlName As String = InputBox(Language.Base.PanelName & ":", Language.Base.NewPanel, Language.Base.NewPanel)
Dim pnlName As String = InputBox(My.Resources.strPanelName & ":", My.Resources.strNewPanel, My.Resources.strNewPanel)
If pnlName <> "" Then
AddPanel(pnlName)

View File

@@ -23,31 +23,45 @@ Partial Class frmMain
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container
Dim DockPanelSkin3 As WeifenLuo.WinFormsUI.Docking.DockPanelSkin = New WeifenLuo.WinFormsUI.Docking.DockPanelSkin
Dim AutoHideStripSkin3 As WeifenLuo.WinFormsUI.Docking.AutoHideStripSkin = New WeifenLuo.WinFormsUI.Docking.AutoHideStripSkin
Dim DockPanelGradient7 As WeifenLuo.WinFormsUI.Docking.DockPanelGradient = New WeifenLuo.WinFormsUI.Docking.DockPanelGradient
Dim TabGradient15 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim DockPaneStripSkin3 As WeifenLuo.WinFormsUI.Docking.DockPaneStripSkin = New WeifenLuo.WinFormsUI.Docking.DockPaneStripSkin
Dim DockPaneStripGradient3 As WeifenLuo.WinFormsUI.Docking.DockPaneStripGradient = New WeifenLuo.WinFormsUI.Docking.DockPaneStripGradient
Dim TabGradient16 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim DockPanelGradient8 As WeifenLuo.WinFormsUI.Docking.DockPanelGradient = New WeifenLuo.WinFormsUI.Docking.DockPanelGradient
Dim TabGradient17 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim DockPaneStripToolWindowGradient3 As WeifenLuo.WinFormsUI.Docking.DockPaneStripToolWindowGradient = New WeifenLuo.WinFormsUI.Docking.DockPaneStripToolWindowGradient
Dim TabGradient18 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim TabGradient19 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim DockPanelGradient9 As WeifenLuo.WinFormsUI.Docking.DockPanelGradient = New WeifenLuo.WinFormsUI.Docking.DockPanelGradient
Dim TabGradient20 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim TabGradient21 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim DockPanelSkin1 As WeifenLuo.WinFormsUI.Docking.DockPanelSkin = New WeifenLuo.WinFormsUI.Docking.DockPanelSkin
Dim AutoHideStripSkin1 As WeifenLuo.WinFormsUI.Docking.AutoHideStripSkin = New WeifenLuo.WinFormsUI.Docking.AutoHideStripSkin
Dim DockPanelGradient1 As WeifenLuo.WinFormsUI.Docking.DockPanelGradient = New WeifenLuo.WinFormsUI.Docking.DockPanelGradient
Dim TabGradient1 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim DockPaneStripSkin1 As WeifenLuo.WinFormsUI.Docking.DockPaneStripSkin = New WeifenLuo.WinFormsUI.Docking.DockPaneStripSkin
Dim DockPaneStripGradient1 As WeifenLuo.WinFormsUI.Docking.DockPaneStripGradient = New WeifenLuo.WinFormsUI.Docking.DockPaneStripGradient
Dim TabGradient2 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim DockPanelGradient2 As WeifenLuo.WinFormsUI.Docking.DockPanelGradient = New WeifenLuo.WinFormsUI.Docking.DockPanelGradient
Dim TabGradient3 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim DockPaneStripToolWindowGradient1 As WeifenLuo.WinFormsUI.Docking.DockPaneStripToolWindowGradient = New WeifenLuo.WinFormsUI.Docking.DockPaneStripToolWindowGradient
Dim TabGradient4 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim TabGradient5 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim DockPanelGradient3 As WeifenLuo.WinFormsUI.Docking.DockPanelGradient = New WeifenLuo.WinFormsUI.Docking.DockPanelGradient
Dim TabGradient6 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim TabGradient7 As WeifenLuo.WinFormsUI.Docking.TabGradient = New WeifenLuo.WinFormsUI.Docking.TabGradient
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmMain))
Me.pnlDock = New WeifenLuo.WinFormsUI.Docking.DockPanel
Me.msMain = New System.Windows.Forms.MenuStrip
Me.mMenFile = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileNewConnection = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileNewFolder = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileSep1 = New System.Windows.Forms.ToolStripSeparator
Me.mMenFileNew = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileLoad = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileSep1 = New System.Windows.Forms.ToolStripSeparator
Me.mMenFileSave = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileSaveAs = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileSep2 = New System.Windows.Forms.ToolStripSeparator
Me.mMenFileImportExport = New System.Windows.Forms.ToolStripMenuItem
Me.ImportFromXMLFileToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem
Me.ImportFromRDPFileToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem
Me.ImportFromActiveDirectoryToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem
Me.ImportFromPortScanToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem
Me.ToolStripSeparator6 = New System.Windows.Forms.ToolStripSeparator
Me.ExportToXMLFileToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileSep3 = New System.Windows.Forms.ToolStripSeparator
Me.mMenFileDelete = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileRename = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileDuplicate = New System.Windows.Forms.ToolStripMenuItem
Me.mMenFileSep4 = New System.Windows.Forms.ToolStripSeparator
Me.mMenFileExit = New System.Windows.Forms.ToolStripMenuItem
Me.mMenView = New System.Windows.Forms.ToolStripMenuItem
Me.mMenViewAddConnectionPanel = New System.Windows.Forms.ToolStripMenuItem
@@ -63,6 +77,7 @@ Partial Class frmMain
Me.mMenViewJumpToConnectionsConfig = New System.Windows.Forms.ToolStripMenuItem
Me.mMenViewJumpToSessionsScreenshots = New System.Windows.Forms.ToolStripMenuItem
Me.mMenViewJumpToErrorsInfos = New System.Windows.Forms.ToolStripMenuItem
Me.mMenViewResetLayout = New System.Windows.Forms.ToolStripMenuItem
Me.mMenViewSep2 = New System.Windows.Forms.ToolStripSeparator
Me.mMenViewQuickConnectToolbar = New System.Windows.Forms.ToolStripMenuItem
Me.mMenViewExtAppsToolbar = New System.Windows.Forms.ToolStripMenuItem
@@ -92,21 +107,28 @@ Partial Class frmMain
Me.lblQuickConnect = New System.Windows.Forms.ToolStripLabel
Me.cmbQuickConnect = New System.Windows.Forms.ToolStripComboBox
Me.tsContainer = New System.Windows.Forms.ToolStripContainer
Me.tsQuickConnect = New System.Windows.Forms.ToolStrip
Me.btnQuickyPlay = New System.Windows.Forms.ToolStripSplitButton
Me.mMenQuickyCon = New System.Windows.Forms.ToolStripMenuItem
Me.tsExtAppsToolbar = New System.Windows.Forms.ToolStrip
Me.cMenExtAppsToolbar = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.cMenToolbarShowText = New System.Windows.Forms.ToolStripMenuItem
Me.tsQuickConnect = New System.Windows.Forms.ToolStrip
Me.btnQuickyPlay = New System.Windows.Forms.ToolStripSplitButton
Me.mMenQuickyCon = New System.Windows.Forms.ToolStripMenuItem
Me.ToolStrip1 = New System.Windows.Forms.ToolStrip
Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton
Me.ToolStripButton2 = New System.Windows.Forms.ToolStripButton
Me.ToolStripButton3 = New System.Windows.Forms.ToolStripButton
Me.ToolStripSplitButton1 = New System.Windows.Forms.ToolStripDropDownButton
Me.ToolStripMenuItem1 = New System.Windows.Forms.ToolStripMenuItem
Me.ToolStripMenuItem2 = New System.Windows.Forms.ToolStripMenuItem
Me.tmrShowUpdate = New System.Windows.Forms.Timer(Me.components)
Me.tmrAutoSave = New System.Windows.Forms.Timer(Me.components)
Me.mMenViewResetLayout = New System.Windows.Forms.ToolStripMenuItem
Me.msMain.SuspendLayout()
Me.tsContainer.ContentPanel.SuspendLayout()
Me.tsContainer.TopToolStripPanel.SuspendLayout()
Me.tsContainer.SuspendLayout()
Me.tsQuickConnect.SuspendLayout()
Me.cMenExtAppsToolbar.SuspendLayout()
Me.tsQuickConnect.SuspendLayout()
Me.ToolStrip1.SuspendLayout()
Me.SuspendLayout()
'
'pnlDock
@@ -119,51 +141,51 @@ Partial Class frmMain
Me.pnlDock.DocumentStyle = WeifenLuo.WinFormsUI.Docking.DocumentStyle.DockingWindow
Me.pnlDock.Location = New System.Drawing.Point(0, 0)
Me.pnlDock.Name = "pnlDock"
Me.pnlDock.Size = New System.Drawing.Size(842, 449)
DockPanelGradient7.EndColor = System.Drawing.SystemColors.ControlLight
DockPanelGradient7.StartColor = System.Drawing.SystemColors.ControlLight
AutoHideStripSkin3.DockStripGradient = DockPanelGradient7
TabGradient15.EndColor = System.Drawing.SystemColors.Control
TabGradient15.StartColor = System.Drawing.SystemColors.Control
TabGradient15.TextColor = System.Drawing.SystemColors.ControlDarkDark
AutoHideStripSkin3.TabGradient = TabGradient15
DockPanelSkin3.AutoHideStripSkin = AutoHideStripSkin3
TabGradient16.EndColor = System.Drawing.SystemColors.ControlLightLight
TabGradient16.StartColor = System.Drawing.SystemColors.ControlLightLight
TabGradient16.TextColor = System.Drawing.SystemColors.ControlText
DockPaneStripGradient3.ActiveTabGradient = TabGradient16
DockPanelGradient8.EndColor = System.Drawing.SystemColors.Control
DockPanelGradient8.StartColor = System.Drawing.SystemColors.Control
DockPaneStripGradient3.DockStripGradient = DockPanelGradient8
TabGradient17.EndColor = System.Drawing.SystemColors.ControlLight
TabGradient17.StartColor = System.Drawing.SystemColors.ControlLight
TabGradient17.TextColor = System.Drawing.SystemColors.ControlText
DockPaneStripGradient3.InactiveTabGradient = TabGradient17
DockPaneStripSkin3.DocumentGradient = DockPaneStripGradient3
TabGradient18.EndColor = System.Drawing.SystemColors.ActiveCaption
TabGradient18.LinearGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical
TabGradient18.StartColor = System.Drawing.SystemColors.GradientActiveCaption
TabGradient18.TextColor = System.Drawing.SystemColors.ActiveCaptionText
DockPaneStripToolWindowGradient3.ActiveCaptionGradient = TabGradient18
TabGradient19.EndColor = System.Drawing.SystemColors.Control
TabGradient19.StartColor = System.Drawing.SystemColors.Control
TabGradient19.TextColor = System.Drawing.SystemColors.ControlText
DockPaneStripToolWindowGradient3.ActiveTabGradient = TabGradient19
DockPanelGradient9.EndColor = System.Drawing.SystemColors.ControlLight
DockPanelGradient9.StartColor = System.Drawing.SystemColors.ControlLight
DockPaneStripToolWindowGradient3.DockStripGradient = DockPanelGradient9
TabGradient20.EndColor = System.Drawing.SystemColors.GradientInactiveCaption
TabGradient20.LinearGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical
TabGradient20.StartColor = System.Drawing.SystemColors.GradientInactiveCaption
TabGradient20.TextColor = System.Drawing.SystemColors.ControlText
DockPaneStripToolWindowGradient3.InactiveCaptionGradient = TabGradient20
TabGradient21.EndColor = System.Drawing.Color.Transparent
TabGradient21.StartColor = System.Drawing.Color.Transparent
TabGradient21.TextColor = System.Drawing.SystemColors.ControlDarkDark
DockPaneStripToolWindowGradient3.InactiveTabGradient = TabGradient21
DockPaneStripSkin3.ToolWindowGradient = DockPaneStripToolWindowGradient3
DockPanelSkin3.DockPaneStripSkin = DockPaneStripSkin3
Me.pnlDock.Skin = DockPanelSkin3
Me.pnlDock.Size = New System.Drawing.Size(842, 424)
DockPanelGradient1.EndColor = System.Drawing.SystemColors.ControlLight
DockPanelGradient1.StartColor = System.Drawing.SystemColors.ControlLight
AutoHideStripSkin1.DockStripGradient = DockPanelGradient1
TabGradient1.EndColor = System.Drawing.SystemColors.Control
TabGradient1.StartColor = System.Drawing.SystemColors.Control
TabGradient1.TextColor = System.Drawing.SystemColors.ControlDarkDark
AutoHideStripSkin1.TabGradient = TabGradient1
DockPanelSkin1.AutoHideStripSkin = AutoHideStripSkin1
TabGradient2.EndColor = System.Drawing.SystemColors.ControlLightLight
TabGradient2.StartColor = System.Drawing.SystemColors.ControlLightLight
TabGradient2.TextColor = System.Drawing.SystemColors.ControlText
DockPaneStripGradient1.ActiveTabGradient = TabGradient2
DockPanelGradient2.EndColor = System.Drawing.SystemColors.Control
DockPanelGradient2.StartColor = System.Drawing.SystemColors.Control
DockPaneStripGradient1.DockStripGradient = DockPanelGradient2
TabGradient3.EndColor = System.Drawing.SystemColors.ControlLight
TabGradient3.StartColor = System.Drawing.SystemColors.ControlLight
TabGradient3.TextColor = System.Drawing.SystemColors.ControlText
DockPaneStripGradient1.InactiveTabGradient = TabGradient3
DockPaneStripSkin1.DocumentGradient = DockPaneStripGradient1
TabGradient4.EndColor = System.Drawing.SystemColors.ActiveCaption
TabGradient4.LinearGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical
TabGradient4.StartColor = System.Drawing.SystemColors.GradientActiveCaption
TabGradient4.TextColor = System.Drawing.SystemColors.ActiveCaptionText
DockPaneStripToolWindowGradient1.ActiveCaptionGradient = TabGradient4
TabGradient5.EndColor = System.Drawing.SystemColors.Control
TabGradient5.StartColor = System.Drawing.SystemColors.Control
TabGradient5.TextColor = System.Drawing.SystemColors.ControlText
DockPaneStripToolWindowGradient1.ActiveTabGradient = TabGradient5
DockPanelGradient3.EndColor = System.Drawing.SystemColors.ControlLight
DockPanelGradient3.StartColor = System.Drawing.SystemColors.ControlLight
DockPaneStripToolWindowGradient1.DockStripGradient = DockPanelGradient3
TabGradient6.EndColor = System.Drawing.SystemColors.GradientInactiveCaption
TabGradient6.LinearGradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical
TabGradient6.StartColor = System.Drawing.SystemColors.GradientInactiveCaption
TabGradient6.TextColor = System.Drawing.SystemColors.ControlText
DockPaneStripToolWindowGradient1.InactiveCaptionGradient = TabGradient6
TabGradient7.EndColor = System.Drawing.Color.Transparent
TabGradient7.StartColor = System.Drawing.Color.Transparent
TabGradient7.TextColor = System.Drawing.SystemColors.ControlDarkDark
DockPaneStripToolWindowGradient1.InactiveTabGradient = TabGradient7
DockPaneStripSkin1.ToolWindowGradient = DockPaneStripToolWindowGradient1
DockPanelSkin1.DockPaneStripSkin = DockPaneStripSkin1
Me.pnlDock.Skin = DockPanelSkin1
Me.pnlDock.TabIndex = 13
'
'msMain
@@ -182,60 +204,151 @@ Partial Class frmMain
'
'mMenFile
'
Me.mMenFile.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mMenFileNew, Me.mMenFileLoad, Me.mMenFileSep1, Me.mMenFileSave, Me.mMenFileSaveAs, Me.mMenFileSep2, Me.mMenFileExit})
Me.mMenFile.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mMenFileNewConnection, Me.mMenFileNewFolder, Me.mMenFileSep1, Me.mMenFileNew, Me.mMenFileLoad, Me.mMenFileSave, Me.mMenFileSaveAs, Me.mMenFileSep2, Me.mMenFileImportExport, Me.mMenFileSep3, Me.mMenFileDelete, Me.mMenFileRename, Me.mMenFileDuplicate, Me.mMenFileSep4, Me.mMenFileExit})
Me.mMenFile.Name = "mMenFile"
Me.mMenFile.Size = New System.Drawing.Size(37, 20)
Me.mMenFile.Text = "&File"
'
'mMenFileNew
'mMenFileNewConnection
'
Me.mMenFileNew.Image = Global.mRemote.My.Resources.Resources.Connections_New
Me.mMenFileNew.Name = "mMenFileNew"
Me.mMenFileNew.ShortcutKeys = CType((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.N), System.Windows.Forms.Keys)
Me.mMenFileNew.Size = New System.Drawing.Size(256, 22)
Me.mMenFileNew.Text = "New Connections"
Me.mMenFileNewConnection.Image = Global.mRemoteNG.My.Resources.Resources.Connection_Add
Me.mMenFileNewConnection.Name = "mMenFileNewConnection"
Me.mMenFileNewConnection.ShortcutKeys = CType((System.Windows.Forms.Keys.Shift Or System.Windows.Forms.Keys.F4), System.Windows.Forms.Keys)
Me.mMenFileNewConnection.Size = New System.Drawing.Size(334, 22)
Me.mMenFileNewConnection.Text = "New Connection"
'
'mMenFileLoad
'mMenFileNewFolder
'
Me.mMenFileLoad.Image = Global.mRemote.My.Resources.Resources.Connections_Load
Me.mMenFileLoad.Name = "mMenFileLoad"
Me.mMenFileLoad.ShortcutKeys = CType((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.O), System.Windows.Forms.Keys)
Me.mMenFileLoad.Size = New System.Drawing.Size(256, 22)
Me.mMenFileLoad.Text = "Open Connections"
Me.mMenFileNewFolder.Image = Global.mRemoteNG.My.Resources.Resources.Folder_Add
Me.mMenFileNewFolder.Name = "mMenFileNewFolder"
Me.mMenFileNewFolder.ShortcutKeys = System.Windows.Forms.Keys.F7
Me.mMenFileNewFolder.Size = New System.Drawing.Size(334, 22)
Me.mMenFileNewFolder.Text = "New Folder"
'
'mMenFileSep1
'
Me.mMenFileSep1.Name = "mMenFileSep1"
Me.mMenFileSep1.Size = New System.Drawing.Size(253, 6)
Me.mMenFileSep1.Size = New System.Drawing.Size(331, 6)
'
'mMenFileNew
'
Me.mMenFileNew.Image = Global.mRemoteNG.My.Resources.Resources.Connections_New
Me.mMenFileNew.Name = "mMenFileNew"
Me.mMenFileNew.ShortcutKeys = CType((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.N), System.Windows.Forms.Keys)
Me.mMenFileNew.Size = New System.Drawing.Size(334, 22)
Me.mMenFileNew.Text = "New Connection File"
'
'mMenFileLoad
'
Me.mMenFileLoad.Image = Global.mRemoteNG.My.Resources.Resources.Connections_Load
Me.mMenFileLoad.Name = "mMenFileLoad"
Me.mMenFileLoad.ShortcutKeys = CType((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.O), System.Windows.Forms.Keys)
Me.mMenFileLoad.Size = New System.Drawing.Size(334, 22)
Me.mMenFileLoad.Text = "Open Connection File..."
'
'mMenFileSave
'
Me.mMenFileSave.Image = Global.mRemote.My.Resources.Resources.Connections_Save
Me.mMenFileSave.Image = Global.mRemoteNG.My.Resources.Resources.Connections_Save
Me.mMenFileSave.Name = "mMenFileSave"
Me.mMenFileSave.ShortcutKeys = CType((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.S), System.Windows.Forms.Keys)
Me.mMenFileSave.Size = New System.Drawing.Size(256, 22)
Me.mMenFileSave.Text = "Save Connections"
Me.mMenFileSave.Size = New System.Drawing.Size(334, 22)
Me.mMenFileSave.Text = "Save Connection File"
'
'mMenFileSaveAs
'
Me.mMenFileSaveAs.Image = Global.mRemote.My.Resources.Resources.Connections_SaveAs
Me.mMenFileSaveAs.Image = Global.mRemoteNG.My.Resources.Resources.Connections_SaveAs
Me.mMenFileSaveAs.Name = "mMenFileSaveAs"
Me.mMenFileSaveAs.ShortcutKeys = CType(((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.Shift) _
Or System.Windows.Forms.Keys.S), System.Windows.Forms.Keys)
Me.mMenFileSaveAs.Size = New System.Drawing.Size(256, 22)
Me.mMenFileSaveAs.Text = "Save Connections As"
Me.mMenFileSaveAs.Size = New System.Drawing.Size(334, 22)
Me.mMenFileSaveAs.Text = "Save Connection File As..."
'
'mMenFileSep2
'
Me.mMenFileSep2.Name = "mMenFileSep2"
Me.mMenFileSep2.Size = New System.Drawing.Size(253, 6)
Me.mMenFileSep2.Size = New System.Drawing.Size(331, 6)
'
'mMenFileImportExport
'
Me.mMenFileImportExport.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ImportFromXMLFileToolStripMenuItem, Me.ImportFromRDPFileToolStripMenuItem, Me.ImportFromActiveDirectoryToolStripMenuItem, Me.ImportFromPortScanToolStripMenuItem, Me.ToolStripSeparator6, Me.ExportToXMLFileToolStripMenuItem})
Me.mMenFileImportExport.Name = "mMenFileImportExport"
Me.mMenFileImportExport.Size = New System.Drawing.Size(334, 22)
Me.mMenFileImportExport.Text = "Import/Export Folder"
Me.mMenFileImportExport.Visible = False
'
'ImportFromXMLFileToolStripMenuItem
'
Me.ImportFromXMLFileToolStripMenuItem.Name = "ImportFromXMLFileToolStripMenuItem"
Me.ImportFromXMLFileToolStripMenuItem.Size = New System.Drawing.Size(235, 22)
Me.ImportFromXMLFileToolStripMenuItem.Text = "Import from XML File..."
'
'ImportFromRDPFileToolStripMenuItem
'
Me.ImportFromRDPFileToolStripMenuItem.Name = "ImportFromRDPFileToolStripMenuItem"
Me.ImportFromRDPFileToolStripMenuItem.Size = New System.Drawing.Size(235, 22)
Me.ImportFromRDPFileToolStripMenuItem.Text = "Import from RDP File..."
'
'ImportFromActiveDirectoryToolStripMenuItem
'
Me.ImportFromActiveDirectoryToolStripMenuItem.Name = "ImportFromActiveDirectoryToolStripMenuItem"
Me.ImportFromActiveDirectoryToolStripMenuItem.Size = New System.Drawing.Size(235, 22)
Me.ImportFromActiveDirectoryToolStripMenuItem.Text = "Import from Active Directory..."
'
'ImportFromPortScanToolStripMenuItem
'
Me.ImportFromPortScanToolStripMenuItem.Name = "ImportFromPortScanToolStripMenuItem"
Me.ImportFromPortScanToolStripMenuItem.Size = New System.Drawing.Size(235, 22)
Me.ImportFromPortScanToolStripMenuItem.Text = "Import from Port Scan..."
'
'ToolStripSeparator6
'
Me.ToolStripSeparator6.Name = "ToolStripSeparator6"
Me.ToolStripSeparator6.Size = New System.Drawing.Size(232, 6)
'
'ExportToXMLFileToolStripMenuItem
'
Me.ExportToXMLFileToolStripMenuItem.Name = "ExportToXMLFileToolStripMenuItem"
Me.ExportToXMLFileToolStripMenuItem.Size = New System.Drawing.Size(235, 22)
Me.ExportToXMLFileToolStripMenuItem.Text = "Export to XML File..."
'
'mMenFileSep3
'
Me.mMenFileSep3.Name = "mMenFileSep3"
Me.mMenFileSep3.Size = New System.Drawing.Size(331, 6)
Me.mMenFileSep3.Visible = False
'
'mMenFileDelete
'
Me.mMenFileDelete.Image = Global.mRemoteNG.My.Resources.Resources.Delete
Me.mMenFileDelete.Name = "mMenFileDelete"
Me.mMenFileDelete.Size = New System.Drawing.Size(334, 22)
Me.mMenFileDelete.Text = "Delete..."
'
'mMenFileRename
'
Me.mMenFileRename.Image = Global.mRemoteNG.My.Resources.Resources.Rename
Me.mMenFileRename.Name = "mMenFileRename"
Me.mMenFileRename.Size = New System.Drawing.Size(334, 22)
Me.mMenFileRename.Text = "Rename"
'
'mMenFileDuplicate
'
Me.mMenFileDuplicate.Image = Global.mRemoteNG.My.Resources.Resources.Connection_Duplicate
Me.mMenFileDuplicate.Name = "mMenFileDuplicate"
Me.mMenFileDuplicate.Size = New System.Drawing.Size(334, 22)
Me.mMenFileDuplicate.Text = "Duplicate"
'
'mMenFileSep4
'
Me.mMenFileSep4.Name = "mMenFileSep4"
Me.mMenFileSep4.Size = New System.Drawing.Size(331, 6)
'
'mMenFileExit
'
Me.mMenFileExit.Image = Global.mRemote.My.Resources.Resources.Quit
Me.mMenFileExit.Image = Global.mRemoteNG.My.Resources.Resources.Quit
Me.mMenFileExit.Name = "mMenFileExit"
Me.mMenFileExit.ShortcutKeys = CType((System.Windows.Forms.Keys.Alt Or System.Windows.Forms.Keys.F4), System.Windows.Forms.Keys)
Me.mMenFileExit.Size = New System.Drawing.Size(256, 22)
Me.mMenFileExit.Size = New System.Drawing.Size(334, 22)
Me.mMenFileExit.Text = "Exit"
'
'mMenView
@@ -247,14 +360,14 @@ Partial Class frmMain
'
'mMenViewAddConnectionPanel
'
Me.mMenViewAddConnectionPanel.Image = Global.mRemote.My.Resources.Resources.Panel_Add
Me.mMenViewAddConnectionPanel.Image = Global.mRemoteNG.My.Resources.Resources.Panel_Add
Me.mMenViewAddConnectionPanel.Name = "mMenViewAddConnectionPanel"
Me.mMenViewAddConnectionPanel.Size = New System.Drawing.Size(228, 22)
Me.mMenViewAddConnectionPanel.Text = "Add Connection Panel"
'
'mMenViewConnectionPanels
'
Me.mMenViewConnectionPanels.Image = Global.mRemote.My.Resources.Resources.Panels
Me.mMenViewConnectionPanels.Image = Global.mRemoteNG.My.Resources.Resources.Panels
Me.mMenViewConnectionPanels.Name = "mMenViewConnectionPanels"
Me.mMenViewConnectionPanels.Size = New System.Drawing.Size(228, 22)
Me.mMenViewConnectionPanels.Text = "Connection Panels"
@@ -268,7 +381,7 @@ Partial Class frmMain
'
Me.mMenViewConnections.Checked = True
Me.mMenViewConnections.CheckState = System.Windows.Forms.CheckState.Checked
Me.mMenViewConnections.Image = Global.mRemote.My.Resources.Resources.Root
Me.mMenViewConnections.Image = Global.mRemoteNG.My.Resources.Resources.Root
Me.mMenViewConnections.Name = "mMenViewConnections"
Me.mMenViewConnections.Size = New System.Drawing.Size(228, 22)
Me.mMenViewConnections.Text = "Connections"
@@ -295,7 +408,7 @@ Partial Class frmMain
'
Me.mMenViewErrorsAndInfos.Checked = True
Me.mMenViewErrorsAndInfos.CheckState = System.Windows.Forms.CheckState.Checked
Me.mMenViewErrorsAndInfos.Image = Global.mRemote.My.Resources.Resources.ErrorsAndInfos
Me.mMenViewErrorsAndInfos.Image = Global.mRemoteNG.My.Resources.Resources.ErrorsAndInfos
Me.mMenViewErrorsAndInfos.Name = "mMenViewErrorsAndInfos"
Me.mMenViewErrorsAndInfos.Size = New System.Drawing.Size(228, 22)
Me.mMenViewErrorsAndInfos.Text = "Errors and Infos"
@@ -315,7 +428,7 @@ Partial Class frmMain
'mMenViewJumpTo
'
Me.mMenViewJumpTo.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mMenViewJumpToConnectionsConfig, Me.mMenViewJumpToSessionsScreenshots, Me.mMenViewJumpToErrorsInfos})
Me.mMenViewJumpTo.Image = Global.mRemote.My.Resources.Resources.JumpTo
Me.mMenViewJumpTo.Image = Global.mRemoteNG.My.Resources.Resources.JumpTo
Me.mMenViewJumpTo.Name = "mMenViewJumpTo"
Me.mMenViewJumpTo.Size = New System.Drawing.Size(228, 22)
Me.mMenViewJumpTo.Text = "Jump To"
@@ -325,7 +438,7 @@ Partial Class frmMain
Me.mMenViewJumpToConnectionsConfig.Name = "mMenViewJumpToConnectionsConfig"
Me.mMenViewJumpToConnectionsConfig.ShortcutKeys = CType(((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.Alt) _
Or System.Windows.Forms.Keys.C), System.Windows.Forms.Keys)
Me.mMenViewJumpToConnectionsConfig.Size = New System.Drawing.Size(260, 22)
Me.mMenViewJumpToConnectionsConfig.Size = New System.Drawing.Size(262, 22)
Me.mMenViewJumpToConnectionsConfig.Text = "Connections && Config"
'
'mMenViewJumpToSessionsScreenshots
@@ -333,7 +446,7 @@ Partial Class frmMain
Me.mMenViewJumpToSessionsScreenshots.Name = "mMenViewJumpToSessionsScreenshots"
Me.mMenViewJumpToSessionsScreenshots.ShortcutKeys = CType(((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.Alt) _
Or System.Windows.Forms.Keys.S), System.Windows.Forms.Keys)
Me.mMenViewJumpToSessionsScreenshots.Size = New System.Drawing.Size(260, 22)
Me.mMenViewJumpToSessionsScreenshots.Size = New System.Drawing.Size(262, 22)
Me.mMenViewJumpToSessionsScreenshots.Text = "Sessions && Screenshots"
'
'mMenViewJumpToErrorsInfos
@@ -341,9 +454,15 @@ Partial Class frmMain
Me.mMenViewJumpToErrorsInfos.Name = "mMenViewJumpToErrorsInfos"
Me.mMenViewJumpToErrorsInfos.ShortcutKeys = CType(((System.Windows.Forms.Keys.Control Or System.Windows.Forms.Keys.Alt) _
Or System.Windows.Forms.Keys.E), System.Windows.Forms.Keys)
Me.mMenViewJumpToErrorsInfos.Size = New System.Drawing.Size(260, 22)
Me.mMenViewJumpToErrorsInfos.Size = New System.Drawing.Size(262, 22)
Me.mMenViewJumpToErrorsInfos.Text = "Errors && Infos"
'
'mMenViewResetLayout
'
Me.mMenViewResetLayout.Name = "mMenViewResetLayout"
Me.mMenViewResetLayout.Size = New System.Drawing.Size(228, 22)
Me.mMenViewResetLayout.Text = "Reset Layout"
'
'mMenViewSep2
'
Me.mMenViewSep2.Name = "mMenViewSep2"
@@ -351,7 +470,7 @@ Partial Class frmMain
'
'mMenViewQuickConnectToolbar
'
Me.mMenViewQuickConnectToolbar.Image = Global.mRemote.My.Resources.Resources.Play_Quick
Me.mMenViewQuickConnectToolbar.Image = Global.mRemoteNG.My.Resources.Resources.Play_Quick
Me.mMenViewQuickConnectToolbar.Name = "mMenViewQuickConnectToolbar"
Me.mMenViewQuickConnectToolbar.Size = New System.Drawing.Size(228, 22)
Me.mMenViewQuickConnectToolbar.Text = "Quick Connect Toolbar"
@@ -370,7 +489,7 @@ Partial Class frmMain
'
'mMenViewFullscreen
'
Me.mMenViewFullscreen.Image = Global.mRemote.My.Resources.Resources.Fullscreen
Me.mMenViewFullscreen.Image = Global.mRemoteNG.My.Resources.Resources.Fullscreen
Me.mMenViewFullscreen.Name = "mMenViewFullscreen"
Me.mMenViewFullscreen.ShortcutKeys = System.Windows.Forms.Keys.F11
Me.mMenViewFullscreen.Size = New System.Drawing.Size(228, 22)
@@ -385,17 +504,18 @@ Partial Class frmMain
'
'mMenToolsSSHTransfer
'
Me.mMenToolsSSHTransfer.Image = Global.mRemote.My.Resources.Resources.SSHTransfer
Me.mMenToolsSSHTransfer.Image = Global.mRemoteNG.My.Resources.Resources.SSHTransfer
Me.mMenToolsSSHTransfer.Name = "mMenToolsSSHTransfer"
Me.mMenToolsSSHTransfer.Size = New System.Drawing.Size(184, 22)
Me.mMenToolsSSHTransfer.Text = "SSH File Transfer"
'
'mMenToolsUVNCSC
'
Me.mMenToolsUVNCSC.Image = Global.mRemote.My.Resources.Resources.UVNC_SC
Me.mMenToolsUVNCSC.Image = Global.mRemoteNG.My.Resources.Resources.UVNC_SC
Me.mMenToolsUVNCSC.Name = "mMenToolsUVNCSC"
Me.mMenToolsUVNCSC.Size = New System.Drawing.Size(184, 22)
Me.mMenToolsUVNCSC.Text = "UltraVNC SingleClick"
Me.mMenToolsUVNCSC.Visible = False
'
'mMenToolsExternalApps
'
@@ -406,7 +526,7 @@ Partial Class frmMain
'
'mMenToolsPortScan
'
Me.mMenToolsPortScan.Image = Global.mRemote.My.Resources.Resources.PortScan
Me.mMenToolsPortScan.Image = Global.mRemoteNG.My.Resources.Resources.PortScan
Me.mMenToolsPortScan.Name = "mMenToolsPortScan"
Me.mMenToolsPortScan.Size = New System.Drawing.Size(184, 22)
Me.mMenToolsPortScan.Text = "Port Scan"
@@ -418,7 +538,7 @@ Partial Class frmMain
'
'mMenToolsComponentsCheck
'
Me.mMenToolsComponentsCheck.Image = Global.mRemote.My.Resources.Resources.ComponentsCheck
Me.mMenToolsComponentsCheck.Image = Global.mRemoteNG.My.Resources.Resources.ComponentsCheck
Me.mMenToolsComponentsCheck.Name = "mMenToolsComponentsCheck"
Me.mMenToolsComponentsCheck.Size = New System.Drawing.Size(184, 22)
Me.mMenToolsComponentsCheck.Text = "Components Check"
@@ -460,7 +580,7 @@ Partial Class frmMain
'
'mMenInfoDonate
'
Me.mMenInfoDonate.Image = Global.mRemote.My.Resources.Resources.Donate
Me.mMenInfoDonate.Image = Global.mRemoteNG.My.Resources.Resources.Donate
Me.mMenInfoDonate.Name = "mMenInfoDonate"
Me.mMenInfoDonate.Size = New System.Drawing.Size(190, 22)
Me.mMenInfoDonate.Text = "Donate"
@@ -473,7 +593,7 @@ Partial Class frmMain
'
'mMenInfoBugReport
'
Me.mMenInfoBugReport.Image = Global.mRemote.My.Resources.Resources.Bug
Me.mMenInfoBugReport.Image = Global.mRemoteNG.My.Resources.Resources.Bug
Me.mMenInfoBugReport.Name = "mMenInfoBugReport"
Me.mMenInfoBugReport.Size = New System.Drawing.Size(190, 22)
Me.mMenInfoBugReport.Text = "Report a Bug"
@@ -485,14 +605,14 @@ Partial Class frmMain
'
'mMenInfoAnnouncements
'
Me.mMenInfoAnnouncements.Image = Global.mRemote.My.Resources.Resources.News
Me.mMenInfoAnnouncements.Image = Global.mRemoteNG.My.Resources.Resources.News
Me.mMenInfoAnnouncements.Name = "mMenInfoAnnouncements"
Me.mMenInfoAnnouncements.Size = New System.Drawing.Size(190, 22)
Me.mMenInfoAnnouncements.Text = "Announcements"
'
'mMenToolsUpdate
'
Me.mMenToolsUpdate.Image = Global.mRemote.My.Resources.Resources.Update
Me.mMenToolsUpdate.Image = Global.mRemoteNG.My.Resources.Resources.Update
Me.mMenToolsUpdate.Name = "mMenToolsUpdate"
Me.mMenToolsUpdate.Size = New System.Drawing.Size(190, 22)
Me.mMenToolsUpdate.Text = "Check for Updates"
@@ -504,7 +624,7 @@ Partial Class frmMain
'
'mMenInfoAbout
'
Me.mMenInfoAbout.Image = Global.mRemote.My.Resources.Resources.mRemote
Me.mMenInfoAbout.Image = Global.mRemoteNG.My.Resources.Resources.mRemote
Me.mMenInfoAbout.Name = "mMenInfoAbout"
Me.mMenInfoAbout.Size = New System.Drawing.Size(190, 22)
Me.mMenInfoAbout.Text = "About mRemoteNG"
@@ -525,7 +645,7 @@ Partial Class frmMain
Me.cmbQuickConnect.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend
Me.cmbQuickConnect.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems
Me.cmbQuickConnect.Name = "cmbQuickConnect"
Me.cmbQuickConnect.Size = New System.Drawing.Size(120, 25)
Me.cmbQuickConnect.Size = New System.Drawing.Size(200, 25)
'
'tsContainer
'
@@ -538,7 +658,7 @@ Partial Class frmMain
'
Me.tsContainer.ContentPanel.Controls.Add(Me.pnlDock)
Me.tsContainer.ContentPanel.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional
Me.tsContainer.ContentPanel.Size = New System.Drawing.Size(842, 449)
Me.tsContainer.ContentPanel.Size = New System.Drawing.Size(842, 424)
Me.tsContainer.Dock = System.Windows.Forms.DockStyle.Fill
'
'tsContainer.LeftToolStripPanel
@@ -559,37 +679,9 @@ Partial Class frmMain
Me.tsContainer.TopToolStripPanel.Controls.Add(Me.msMain)
Me.tsContainer.TopToolStripPanel.Controls.Add(Me.tsQuickConnect)
Me.tsContainer.TopToolStripPanel.Controls.Add(Me.tsExtAppsToolbar)
Me.tsContainer.TopToolStripPanel.Controls.Add(Me.ToolStrip1)
Me.tsContainer.TopToolStripPanel.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional
'
'tsQuickConnect
'
Me.tsQuickConnect.Dock = System.Windows.Forms.DockStyle.None
Me.tsQuickConnect.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.lblQuickConnect, Me.cmbQuickConnect, Me.btnQuickyPlay, Me.mMenQuickyCon})
Me.tsQuickConnect.Location = New System.Drawing.Point(3, 24)
Me.tsQuickConnect.Name = "tsQuickConnect"
Me.tsQuickConnect.Size = New System.Drawing.Size(251, 25)
Me.tsQuickConnect.TabIndex = 18
'
'btnQuickyPlay
'
Me.btnQuickyPlay.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
Me.btnQuickyPlay.Image = Global.mRemote.My.Resources.Resources.Play_Quick
Me.btnQuickyPlay.ImageTransparentColor = System.Drawing.Color.Magenta
Me.btnQuickyPlay.Name = "btnQuickyPlay"
Me.btnQuickyPlay.Size = New System.Drawing.Size(32, 22)
Me.btnQuickyPlay.Text = "Connect"
'
'mMenQuickyCon
'
Me.mMenQuickyCon.AutoSize = False
Me.mMenQuickyCon.AutoToolTip = True
Me.mMenQuickyCon.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
Me.mMenQuickyCon.Image = Global.mRemote.My.Resources.Resources.Root
Me.mMenQuickyCon.ImageTransparentColor = System.Drawing.Color.Magenta
Me.mMenQuickyCon.Name = "mMenQuickyCon"
Me.mMenQuickyCon.Size = New System.Drawing.Size(30, 22)
Me.mMenQuickyCon.Text = "Connections"
'
'tsExtAppsToolbar
'
Me.tsExtAppsToolbar.ContextMenuStrip = Me.cMenExtAppsToolbar
@@ -613,6 +705,91 @@ Partial Class frmMain
Me.cMenToolbarShowText.Size = New System.Drawing.Size(128, 22)
Me.cMenToolbarShowText.Text = "Show Text"
'
'tsQuickConnect
'
Me.tsQuickConnect.Dock = System.Windows.Forms.DockStyle.None
Me.tsQuickConnect.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.lblQuickConnect, Me.cmbQuickConnect, Me.btnQuickyPlay, Me.mMenQuickyCon})
Me.tsQuickConnect.Location = New System.Drawing.Point(3, 24)
Me.tsQuickConnect.Name = "tsQuickConnect"
Me.tsQuickConnect.Size = New System.Drawing.Size(331, 25)
Me.tsQuickConnect.TabIndex = 18
'
'btnQuickyPlay
'
Me.btnQuickyPlay.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
Me.btnQuickyPlay.Image = Global.mRemoteNG.My.Resources.Resources.Play_Quick
Me.btnQuickyPlay.ImageTransparentColor = System.Drawing.Color.Magenta
Me.btnQuickyPlay.Name = "btnQuickyPlay"
Me.btnQuickyPlay.Size = New System.Drawing.Size(32, 22)
Me.btnQuickyPlay.Text = "Connect"
'
'mMenQuickyCon
'
Me.mMenQuickyCon.AutoSize = False
Me.mMenQuickyCon.AutoToolTip = True
Me.mMenQuickyCon.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
Me.mMenQuickyCon.Image = Global.mRemoteNG.My.Resources.Resources.Root
Me.mMenQuickyCon.ImageTransparentColor = System.Drawing.Color.Magenta
Me.mMenQuickyCon.Name = "mMenQuickyCon"
Me.mMenQuickyCon.Size = New System.Drawing.Size(30, 22)
Me.mMenQuickyCon.Text = "Connections"
'
'ToolStrip1
'
Me.ToolStrip1.Dock = System.Windows.Forms.DockStyle.None
Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripButton1, Me.ToolStripButton2, Me.ToolStripButton3, Me.ToolStripSplitButton1})
Me.ToolStrip1.Location = New System.Drawing.Point(3, 74)
Me.ToolStrip1.Name = "ToolStrip1"
Me.ToolStrip1.Size = New System.Drawing.Size(264, 25)
Me.ToolStrip1.TabIndex = 19
Me.ToolStrip1.Visible = False
'
'ToolStripButton1
'
Me.ToolStripButton1.Image = Global.mRemoteNG.My.Resources.Resources.Play
Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta
Me.ToolStripButton1.Name = "ToolStripButton1"
Me.ToolStripButton1.Size = New System.Drawing.Size(72, 22)
Me.ToolStripButton1.Text = "Connect"
'
'ToolStripButton2
'
Me.ToolStripButton2.Image = Global.mRemoteNG.My.Resources.Resources.Screenshot
Me.ToolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta
Me.ToolStripButton2.Name = "ToolStripButton2"
Me.ToolStripButton2.Size = New System.Drawing.Size(85, 22)
Me.ToolStripButton2.Text = "Screenshot"
'
'ToolStripButton3
'
Me.ToolStripButton3.Image = Global.mRemoteNG.My.Resources.Resources.Refresh
Me.ToolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta
Me.ToolStripButton3.Name = "ToolStripButton3"
Me.ToolStripButton3.Size = New System.Drawing.Size(66, 22)
Me.ToolStripButton3.Text = "Refresh"
'
'ToolStripSplitButton1
'
Me.ToolStripSplitButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
Me.ToolStripSplitButton1.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripMenuItem1, Me.ToolStripMenuItem2})
Me.ToolStripSplitButton1.Image = Global.mRemoteNG.My.Resources.Resources.Keyboard
Me.ToolStripSplitButton1.ImageTransparentColor = System.Drawing.Color.Magenta
Me.ToolStripSplitButton1.Name = "ToolStripSplitButton1"
Me.ToolStripSplitButton1.Size = New System.Drawing.Size(29, 22)
Me.ToolStripSplitButton1.Text = "Special Keys"
'
'ToolStripMenuItem1
'
Me.ToolStripMenuItem1.Name = "ToolStripMenuItem1"
Me.ToolStripMenuItem1.Size = New System.Drawing.Size(135, 22)
Me.ToolStripMenuItem1.Text = "Ctrl-Alt-Del"
'
'ToolStripMenuItem2
'
Me.ToolStripMenuItem2.Name = "ToolStripMenuItem2"
Me.ToolStripMenuItem2.Size = New System.Drawing.Size(135, 22)
Me.ToolStripMenuItem2.Text = "Ctrl-Esc"
'
'tmrShowUpdate
'
Me.tmrShowUpdate.Enabled = True
@@ -622,21 +799,16 @@ Partial Class frmMain
'
Me.tmrAutoSave.Interval = 10000
'
'mMenViewResetLayout
'
Me.mMenViewResetLayout.Name = "mMenViewResetLayout"
Me.mMenViewResetLayout.Size = New System.Drawing.Size(228, 22)
Me.mMenViewResetLayout.Text = "Reset Layout"
'
'frmMain
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(842, 523)
Me.Controls.Add(Me.tsContainer)
Me.Icon = Global.mRemote.My.Resources.Resources.mRemote_Icon
Me.Icon = Global.mRemoteNG.My.Resources.Resources.mRemote_Icon
Me.MainMenuStrip = Me.msMain
Me.Name = "frmMain"
Me.Opacity = 0
Me.Text = "mRemoteNG"
Me.msMain.ResumeLayout(False)
Me.msMain.PerformLayout()
@@ -645,9 +817,11 @@ Partial Class frmMain
Me.tsContainer.TopToolStripPanel.PerformLayout()
Me.tsContainer.ResumeLayout(False)
Me.tsContainer.PerformLayout()
Me.cMenExtAppsToolbar.ResumeLayout(False)
Me.tsQuickConnect.ResumeLayout(False)
Me.tsQuickConnect.PerformLayout()
Me.cMenExtAppsToolbar.ResumeLayout(False)
Me.ToolStrip1.ResumeLayout(False)
Me.ToolStrip1.PerformLayout()
Me.ResumeLayout(False)
End Sub
@@ -660,10 +834,9 @@ Partial Class frmMain
Friend WithEvents mMenInfo As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileNew As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileLoad As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileSep1 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents mMenFileSave As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileSaveAs As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileSep2 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents mMenFileSep1 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents mMenFileExit As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenToolsSep1 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents mMenToolsOptions As System.Windows.Forms.ToolStripMenuItem
@@ -713,5 +886,27 @@ Partial Class frmMain
Friend WithEvents mMenInfoForum As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenToolsUpdate As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenViewResetLayout As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileDuplicate As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileSep2 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents mMenFileNewConnection As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileNewFolder As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileImportExport As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents ImportFromXMLFileToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents ImportFromRDPFileToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents ImportFromActiveDirectoryToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents ImportFromPortScanToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents ToolStripSeparator6 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents ExportToXMLFileToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileSep3 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents mMenFileDelete As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileRename As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents mMenFileSep4 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip
Friend WithEvents ToolStripButton1 As System.Windows.Forms.ToolStripButton
Friend WithEvents ToolStripButton2 As System.Windows.Forms.ToolStripButton
Friend WithEvents ToolStripButton3 As System.Windows.Forms.ToolStripButton
Friend WithEvents ToolStripSplitButton1 As System.Windows.Forms.ToolStripDropDownButton
Friend WithEvents ToolStripMenuItem1 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents ToolStripMenuItem2 As System.Windows.Forms.ToolStripMenuItem
End Class

View File

@@ -124,8 +124,8 @@
<data name="mMenViewConfig.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALAgAA
CwIBm8luNgAAArhJREFUOE91U91LU3EYnt0GjUYSgv+EoDeCgXkhiuBAL7swoTWUEryYF2JXQlebTIlK
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAK/wAA
Cv8BNGKaggAAArhJREFUOE91U91LU3EYnt0GjUYSgv+EoDeCgXkhiuBAL7swoTWUEryYF2JXQlebTIlK
pA1bmfODND+DpqUzt5Vfm7NtZx9n52xnui9zm/m5p9/vlINcHnjhnPf83ud5n/d9fhIAkv9FQ0NDrU6n
29fr9cnS0tKqq87lFQ8MDNxqaWm5oVKpjPFEEql0Gp2dnYb29vbrGo3m9mWgHIDBYGh7PzmZ1en1gtE4
kgoLEYTCAmLxOE5OTzExMXHw2mAQTCZT9vmLF8oLIBFAJpNde/N2iGP5EOKJhBh70SjYIAchEsHu3h4O
@@ -143,8 +143,8 @@
<data name="mMenViewSessions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALAgAA
CwIBm8luNgAAA4RJREFUOE9lk21MU3cUh/9L5pxabCoz2YsmLiwbDp0TddMU1sLo7e3LtZTSQim2ILft
YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAK/wAA
Cv8BNGKaggAAA4RJREFUOE9lk21MU3cUh/9L5pxabCoz2YsmLiwbDp0TddMU1sLo7e3LtZTSQim2ILft
ENoKtIVSXksEKRStwwoVDSZGCGPIyDbYCG5s02TZFudCtiDIjNFszjiWrFmZWf3tln2Z8uHJOV/Oc345
ySEAyP9hd24gcUo4zKmJrzRlJk6HVIJol4IfrcsQ3M1LfaaUShE8KdnKJ3EeGY6LatIEy7iFG/i+DP6V
EPMUAsrVCKr5aFcKYN2bEMnf94KqlE4mVurllYJgFo/EOZ6xZkso+zl80KDExVoanqxE2IU8FO5YjSbd
@@ -275,6 +275,9 @@
<metadata name="cMenExtAppsToolbar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 56</value>
</metadata>
<metadata name="ToolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>184, 56</value>
</metadata>
<metadata name="tmrShowUpdate.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>112, 17</value>
</metadata>

View File

@@ -1,30 +1,45 @@
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.Reflection
Imports Crownwood
Imports mRemote.App.Native
Imports mRemoteNG.App.Native
Imports System.Runtime.InteropServices
Imports PSTaskDialog
Public Class frmMain
Public prevWindowsState As FormWindowState
Public Shared Event clipboardchange()
Private fpChainedWindowHandle As IntPtr
#Region "Properties"
Private _IsClosing As Boolean = False
Public ReadOnly Property IsClosing() As Boolean
Get
Return _IsClosing
End Get
End Property
#End Region
#Region "Startup & Shutdown"
Private Sub frmMain_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
'insert enable edition code here
App.Editions.Spanlink.Enabled = False
ApplyLanguage()
Startup.CreateLogger()
' Create gui config load and save objects
sL = New Config.Settings.Load(Me)
sS = New Config.Settings.Save(Me)
' Load GUI Configuration
sL.Load()
Debug.Print("---------------------------" & vbNewLine & "[START] - " & Now)
Startup.ParseCommandLineArgs()
ApplyLanguage()
sL = New Config.Settings.Load(Me)
sS = New Config.Settings.Save(Me)
Startup.CreateLogger()
sL.Load()
fpChainedWindowHandle = SetClipboardViewer(Me.Handle)
mC = New Messages.Collector(Windows.errorsForm)
@@ -50,64 +65,102 @@ Public Class frmMain
Windows.Show(UI.Window.Type.ComponentsCheck)
End If
#If Not PORTABLE Then
If Not My.Settings.CheckForUpdatesAsked Then
Windows.Show(UI.Window.Type.Options)
Windows.optionsForm.ShowUpdatesTab()
My.Settings.CheckForUpdatesAsked = True
Dim CommandButtons() As String = {My.Resources.strAskUpdatesCommandRecommended, My.Resources.strAskUpdatesCommandCustom, My.Resources.strAskUpdatesCommandAskLater}
Dim Result As DialogResult = cTaskDialog.ShowTaskDialogBox(Me, My.Application.Info.ProductName, My.Resources.strAskUpdatesMainInstruction, String.Format(My.Resources.strAskUpdatesContent, My.Application.Info.ProductName), "", "", "", "", String.Join("|", CommandButtons), eTaskDialogButtons.None, eSysIcons.Question, eSysIcons.Question)
If cTaskDialog.CommandButtonResult = 0 Or cTaskDialog.CommandButtonResult = 1 Then
My.Settings.CheckForUpdatesAsked = True
End If
If cTaskDialog.CommandButtonResult = 1 Then
Windows.ShowUpdatesTab()
End If
End If
Startup.UpdateCheck()
Startup.AnnouncementCheck()
#Else
mMenInfoAnnouncements.Visible = False
mMenToolsUpdate.Visible = False
mMenInfoSep2.Visible = False
#End If
Startup.CreateSQLUpdateHandlerAndStartTimer()
AddSysMenuItems()
AddHandler Microsoft.Win32.SystemEvents.DisplaySettingsChanged, AddressOf DisplayChanged
Me.Opacity = 1
End Sub
Private Sub ApplyLanguage()
mMenFile.Text = Language.Base.Menu_File
mMenFileNew.Text = Language.Base.Menu_NewConnections
mMenFileLoad.Text = Language.Base.Menu_OpenConnections
mMenFileSave.Text = Language.Base.Menu_SaveConnections
mMenFileSaveAs.Text = Language.Base.Menu_SaveConnectionsAs
mMenFileExit.Text = Language.Base.Menu_Exit
mMenView.Text = Language.Base.Menu_View
mMenViewAddConnectionPanel.Text = Language.Base.Menu_AddConnectionPanel
mMenViewConnectionPanels.Text = Language.Base.Menu_ConnectionPanels
mMenViewConnections.Text = Language.Base.Menu_Connections
mMenViewConfig.Text = Language.Base.Menu_Config
mMenViewSessions.Text = Language.Base.Menu_Sessions
mMenViewErrorsAndInfos.Text = Language.Base.Menu_ErrorsAndInfos
mMenViewScreenshotManager.Text = Language.Base.Menu_ScreenshotManager
mMenViewJumpTo.Text = Language.Base.Menu_JumpTo
mMenViewJumpToConnectionsConfig.Text = Language.Base.Menu_ConnectionsConfig
mMenViewJumpToSessionsScreenshots.Text = Language.Base.Menu_SessionsScreenshots
mMenViewJumpToErrorsInfos.Text = Language.Base.Menu_ErrorsInfos
mMenViewQuickConnectToolbar.Text = Language.Base.Menu_QuickyToolbar
mMenViewExtAppsToolbar.Text = Language.Base.Menu_ExternalApplicationsToolbar
mMenViewFullscreen.Text = Language.Base.Menu_FullScreenKioskMode
mMenTools.Text = Language.Base.Menu_Tools
mMenToolsSSHTransfer.Text = Language.Base.Menu_SSHFileTransfer
mMenToolsExternalApps.Text = Language.Base.Menu_ExternalApplications
mMenToolsPortScan.Text = Language.Base.Menu_PortScan
mMenToolsUpdate.Text = Language.Base.Menu_Update
mMenToolsOptions.Text = Language.Base.Menu_Options
mMenInfo.Text = Language.Base.Menu_Info
mMenInfoHelp.Text = Language.Base.Menu_Help
mMenInfoForum.Text = Language.Base.Menu_Forum
mMenInfoBugReport.Text = Language.Base.Menu_BugReport
mMenInfoDonate.Text = Language.Base.Menu_Donate
mMenInfoWebsite.Text = Language.Base.Menu_Website
mMenInfoAbout.Text = Language.Base.Menu_About
lblQuickConnect.Text = Language.Base.Toolbar_Quicky
btnQuickyPlay.Text = Language.Base.Toolbar_Play
mMenQuickyCon.Text = Language.Base.Menu_Connections
cMenToolbarShowText.Text = Language.Base.Toolbar_ShowText
mMenFile.Text = My.Resources.strMenuFile
mMenFileNew.Text = My.Resources.strMenuNewConnectionFile
mMenFileNewConnection.Text = My.Resources.strNewConnection
mMenFileNewFolder.Text = My.Resources.strNewFolder
mMenFileLoad.Text = My.Resources.strMenuOpenConnectionFile
mMenFileSave.Text = My.Resources.strMenuSaveConnectionFile
mMenFileSaveAs.Text = My.Resources.strMenuSaveConnectionFileAs
mMenFileImportExport.Text = My.Resources.strImportExport
ImportFromActiveDirectoryToolStripMenuItem.Text = My.Resources.strImportAD
ImportFromPortScanToolStripMenuItem.Text = My.Resources.strImportPortScan
ImportFromRDPFileToolStripMenuItem.Text = My.Resources.strImportRDPFiles
ImportFromXMLFileToolStripMenuItem.Text = My.Resources.strImportmRemoteXML
ExportToXMLFileToolStripMenuItem.Text = My.Resources.strExportmRemoteXML
mMenFileExit.Text = My.Resources.strMenuExit
mMenView.Text = My.Resources.strMenuView
mMenViewAddConnectionPanel.Text = My.Resources.strMenuAddConnectionPanel
mMenViewConnectionPanels.Text = My.Resources.strMenuConnectionPanels
mMenViewConnections.Text = My.Resources.strMenuConnections
mMenViewConfig.Text = My.Resources.strMenuConfig
mMenViewSessions.Text = My.Resources.strMenuSessions
mMenViewErrorsAndInfos.Text = My.Resources.strMenuNotifications
mMenViewScreenshotManager.Text = My.Resources.strMenuScreenshotManager
mMenViewJumpTo.Text = My.Resources.strMenuJumpTo
mMenViewJumpToConnectionsConfig.Text = My.Resources.strMenuConnectionsAndConfig
mMenViewJumpToSessionsScreenshots.Text = My.Resources.strMenuSessionsAndScreenshots
mMenViewJumpToErrorsInfos.Text = My.Resources.strMenuNotifications
mMenViewResetLayout.Text = My.Resources.strMenuResetLayout
mMenViewQuickConnectToolbar.Text = My.Resources.strMenuQuickConnectToolbar
mMenViewExtAppsToolbar.Text = My.Resources.strMenuExternalToolsToolbar
mMenViewFullscreen.Text = My.Resources.strMenuFullScreen
mMenTools.Text = My.Resources.strMenuTools
mMenToolsSSHTransfer.Text = My.Resources.strMenuSSHFileTransfer
mMenToolsExternalApps.Text = My.Resources.strMenuExternalTools
mMenToolsPortScan.Text = My.Resources.strMenuPortScan
mMenToolsComponentsCheck.Text = My.Resources.strComponentsCheck
mMenToolsUpdate.Text = My.Resources.strMenuCheckForUpdates
mMenToolsOptions.Text = My.Resources.strMenuOptions
mMenInfo.Text = My.Resources.strMenuHelp
mMenInfoHelp.Text = My.Resources.strMenuHelpContents
mMenInfoForum.Text = My.Resources.strMenuSupportForum
mMenInfoBugReport.Text = My.Resources.strMenuReportBug
mMenInfoDonate.Text = My.Resources.strMenuDonate
mMenInfoWebsite.Text = My.Resources.strMenuWebsite
mMenInfoAbout.Text = My.Resources.strMenuAbout
mMenInfoAnnouncements.Text = My.Resources.strMenuAnnouncements
lblQuickConnect.Text = My.Resources.strLabelConnect
btnQuickyPlay.Text = My.Resources.strMenuConnect
mMenQuickyCon.Text = My.Resources.strMenuConnections
cMenToolbarShowText.Text = My.Resources.strMenuShowText
ToolStripButton1.Text = My.Resources.strConnect
ToolStripButton2.Text = My.Resources.strScreenshot
ToolStripButton3.Text = My.Resources.strRefresh
ToolStripSplitButton1.Text = My.Resources.strSpecialKeys
ToolStripMenuItem1.Text = My.Resources.strKeysCtrlAltDel
ToolStripMenuItem2.Text = My.Resources.strKeysCtrlEsc
End Sub
Private Sub frmMain_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
If My.Settings.ConfirmExit And wL.Count > 0 Then
Dim Result As DialogResult = cTaskDialog.MessageBox(Me, My.Application.Info.AssemblyName, My.Resources.strConfirmExitMainInstruction, "", "", "", My.Resources.strDoNotShowThisMessageAgain, eTaskDialogButtons.YesNo, eSysIcons.Question, Nothing)
Dim Result As DialogResult = cTaskDialog.MessageBox(Me, My.Application.Info.ProductName, My.Resources.strConfirmExitMainInstruction, "", "", "", My.Resources.strCheckboxDoNotShowThisMessageAgain, eTaskDialogButtons.YesNo, eSysIcons.Question, Nothing)
If cTaskDialog.VerificationChecked Then
My.Settings.ConfirmExit = False
End If
@@ -117,6 +170,8 @@ Public Class frmMain
End If
End If
_IsClosing = True
For Each Window As UI.Window.Base In wL
Window.Close()
Next
@@ -219,13 +274,65 @@ Public Class frmMain
#Region "Menu"
#Region "File"
Private Sub mMenFile_DropDownOpening(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mMenFile.DropDownOpening
Select Case Tree.Node.GetNodeType(mRemoteNG.Tree.Node.SelectedNode)
Case Tree.Node.Type.Root
mMenFileImportExport.Enabled = True
mMenFileDelete.Enabled = False
mMenFileRename.Enabled = True
mMenFileDuplicate.Enabled = False
mMenFileDelete.Text = My.Resources.strMenuDelete
mMenFileRename.Text = My.Resources.strMenuRenameFolder
mMenFileDuplicate.Text = My.Resources.strMenuDuplicate
Case Tree.Node.Type.Container
mMenFileImportExport.Enabled = True
mMenFileDelete.Enabled = True
mMenFileRename.Enabled = True
mMenFileDuplicate.Enabled = True
mMenFileDelete.Text = My.Resources.strMenuDeleteFolder
mMenFileRename.Text = My.Resources.strMenuRenameFolder
mMenFileDuplicate.Text = My.Resources.strMenuDuplicateFolder
Case Tree.Node.Type.Connection
mMenFileImportExport.Enabled = False
mMenFileDelete.Enabled = True
mMenFileRename.Enabled = True
mMenFileDuplicate.Enabled = True
mMenFileDelete.Text = My.Resources.strMenuDeleteConnection
mMenFileRename.Text = My.Resources.strMenuRenameConnection
mMenFileDuplicate.Text = My.Resources.strMenuDuplicateConnection
Case Else
mMenFileImportExport.Enabled = False
mMenFileDelete.Enabled = False
mMenFileRename.Enabled = False
mMenFileDuplicate.Enabled = False
mMenFileDelete.Text = My.Resources.strMenuDelete
mMenFileRename.Text = My.Resources.strMenuRename
mMenFileDuplicate.Text = My.Resources.strMenuDuplicate
End Select
End Sub
Private Sub mMenFileNewConnection_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mMenFileNewConnection.Click
App.Runtime.Windows.treeForm.AddConnection()
SaveConnectionsBG()
End Sub
Private Sub mMenFileNewFolder_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mMenFileNewFolder.Click
App.Runtime.Windows.treeForm.AddFolder()
SaveConnectionsBG()
End Sub
Private Sub mMenFileNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mMenFileNew.Click
NewConnections()
Dim lD As SaveFileDialog = Tools.Controls.ConnectionsSaveAsDialog
If lD.ShowDialog = System.Windows.Forms.DialogResult.OK Then
NewConnections(lD.FileName)
Else
Exit Sub
End If
End Sub
Private Sub mMenFileLoad_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mMenFileLoad.Click
If App.Runtime.ConnectionsFileLoaded Then
Select Case MsgBox(Language.Base.SaveConnectionsFileBeforeOpeningAnother, MsgBoxStyle.YesNoCancel Or MsgBoxStyle.Question)
Select Case MsgBox(My.Resources.strSaveConnectionsFileBeforeOpeningAnother, MsgBoxStyle.YesNoCancel Or MsgBoxStyle.Question)
Case MsgBoxResult.Yes
App.Runtime.SaveConnections()
Case MsgBoxResult.Cancel
@@ -247,6 +354,21 @@ Public Class frmMain
Private Sub mMenFileExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mMenFileExit.Click
App.Runtime.Shutdown.Quit()
End Sub
Private Sub mMenFileDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mMenFileDelete.Click
Tree.Node.DeleteSelectedNode()
SaveConnectionsBG()
End Sub
Private Sub mMenFileRename_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mMenFileRename.Click
Tree.Node.StartRenameSelectedNode()
SaveConnectionsBG()
End Sub
Private Sub mMenFileDuplicate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mMenFileDuplicate.Click
Tree.Node.CloneNode(Tree.Node.SelectedNode)
SaveConnectionsBG()
End Sub
#End Region
#Region "View"
@@ -268,6 +390,12 @@ Public Class frmMain
Me.mMenViewConnectionPanels.DropDownItems.Add(tItem)
Next
If Me.mMenViewConnectionPanels.DropDownItems.Count > 0 Then
Me.mMenViewConnectionPanels.Enabled = True
Else
Me.mMenViewConnectionPanels.Enabled = False
End If
End Sub
Private Sub ConnectionPanelMenuItem_Click(ByVal sender As Object, ByVal e As System.EventArgs)
@@ -429,7 +557,7 @@ Public Class frmMain
Try
btnQuickyPlay.DropDownItems.Clear()
For Each fI As FieldInfo In GetType(mRemote.Connection.Protocol.Protocols).GetFields
For Each fI As FieldInfo In GetType(mRemoteNG.Connection.Protocol.Protocols).GetFields
If fI.Name <> "value__" And fI.Name <> "NONE" And fI.Name <> "IntApp" Then
Dim nBtn As New ToolStripMenuItem
nBtn.Text = fI.Name
@@ -444,21 +572,21 @@ Public Class frmMain
Private Sub QuickyProtocolButton_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Try
Dim conI As Connection.Info = CreateQuicky(QuickyText, Tools.Misc.StringToEnum(GetType(mRemote.Connection.Protocol.Protocols), sender.Text))
Dim conI As Connection.Info = CreateQuicky(QuickyText, Tools.Misc.StringToEnum(GetType(mRemoteNG.Connection.Protocol.Protocols), sender.Text))
If conI.Port = 0 Then
conI.SetDefaultPort()
If mRemote.Connection.QuickConnect.History.Exists(conI.Hostname) = False Then
mRemote.Connection.QuickConnect.History.Add(conI.Hostname)
If mRemoteNG.Connection.QuickConnect.History.Exists(conI.Hostname) = False Then
mRemoteNG.Connection.QuickConnect.History.Add(conI.Hostname)
End If
Else
If mRemote.Connection.QuickConnect.History.Exists(conI.Hostname) = False Then
mRemote.Connection.QuickConnect.History.Add(conI.Hostname & ":" & conI.Port)
If mRemoteNG.Connection.QuickConnect.History.Exists(conI.Hostname) = False Then
mRemoteNG.Connection.QuickConnect.History.Add(conI.Hostname & ":" & conI.Port)
End If
End If
App.Runtime.OpenConnection(conI, mRemote.Connection.Info.Force.DoNotJump)
App.Runtime.OpenConnection(conI, mRemoteNG.Connection.Info.Force.DoNotJump)
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "QuickyProtocolButton_Click (frmMain) failed" & vbNewLine & ex.Message, True)
End Try
@@ -557,7 +685,7 @@ Public Class frmMain
Private Sub ConMenItem_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs)
If e.Button = MouseButtons.Left Then
If TypeOf sender.Tag Is mRemote.Connection.Info Then
If TypeOf sender.Tag Is mRemoteNG.Connection.Info Then
App.Runtime.OpenConnection(sender.Tag)
End If
End If
@@ -583,9 +711,11 @@ Public Class frmMain
Protected Overloads Overrides Sub WndProc(ByRef m As Message)
Try
#If Config = "Debug" Then
'Debug.Print(m.Msg)
#End If
Select m.Msg
Select Case m.Msg
Case WM_GETTEXT
bWmGetTextFlag = True
Case WM_WINDOWPOSCHANGED
@@ -606,6 +736,13 @@ Public Class frmMain
Exit For
End If
Next
Case WM_DRAWCLIPBOARD
SendMessage(fpChainedWindowHandle, m.Msg, m.LParam, m.WParam)
RaiseEvent clipboardchange()
Case WM_CHANGECBCHAIN
'Send to the next window
SendMessage(fpChainedWindowHandle, m.Msg, m.LParam, m.WParam)
fpChainedWindowHandle = m.LParam
Case Else
bWmGetTextFlag = False
bWmWindowPosChangedFlag = False
@@ -650,10 +787,10 @@ Public Class frmMain
For i As Integer = 0 To Screen.AllScreens.Length - 1
SysMenSubItems(i) = 200 + i
SysMenu.AppendMenuItem(popMen, Tools.SystemMenu.Flags.MF_STRING, SysMenSubItems(i), Language.Base.Screen & " " & i + 1)
SysMenu.AppendMenuItem(popMen, Tools.SystemMenu.Flags.MF_STRING, SysMenSubItems(i), My.Resources.strScreen & " " & i + 1)
Next
SysMenu.InsertMenuItem(SysMenu.SystemMenuHandle, 0, Tools.SystemMenu.Flags.MF_POPUP Or Tools.SystemMenu.Flags.MF_BYPOSITION, popMen, Language.Base.SendTo)
SysMenu.InsertMenuItem(SysMenu.SystemMenuHandle, 0, Tools.SystemMenu.Flags.MF_POPUP Or Tools.SystemMenu.Flags.MF_BYPOSITION, popMen, My.Resources.strSendTo)
SysMenu.InsertMenuItem(SysMenu.SystemMenuHandle, 1, Tools.SystemMenu.Flags.MF_BYPOSITION Or Tools.SystemMenu.Flags.MF_SEPARATOR, IntPtr.Zero, Nothing)
End Sub
#End Region

View File

@@ -0,0 +1,277 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: 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=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="imgListPages.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<data name="imgListPages.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABq
IgAAAk1TRnQBSQFMAgEBBwEAAdgBAAHYAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
AwABIAMAAQEBAAEgBgABIB4AAeIB7wH0Af8BqAHJAdcB/wF2AaQBtgH/AVkBhgGcAf8BRAFrAYoB/wE/
AWYBhwH/AT8BcAGVAf8BUgGOAasB/wGPAbcBzQH/Ad0B6gHxAf8MAANXAbcDnwH/A5oB/wOWAf8DkQH/
A40B/wOJAf8DhAH/A4AB/wNhAf8DXQH/A1kB/wNWAf8DUgH/A08B/wNXAbcYAAMNARIDVgG2A1YBtgMN
ARFgAAGtAc8B3wH/AVEBkQGtAf8BVgGjAb8B/wFyAcAB1AH/AZUB2QHmAf8BgQHbAfAB/wFKAcYB7AH/
AR4BqgHdAf8BEAGSAccB/wEcAYABrAH/ATMBawGSAf8BnQG/AdEB/wgAA6gB/wPpAf8D0wH/A9IB/wPR
Af8D0AH/A84B/wPNAf8DzQH/A8sB/wPLAf8DygH/A8kB/wPIAf8D4gH/A08B/xgAA14B2QPkAf8D4wH/
A1gBwWAAAVQBhAGbAf8BPgG9AecB/wFhAdMB8QH/AYwB4wH0Af8BogHrAfYB/wGDAd8B9AH/AUoBygHw
Af8BGAG2Ae0B/wEAAacB6AH/AQABoQHhAf8BAwGWAdIB/wE3AVgBdAH/CAADrQH/A9YB/wO6Af8DuAH/
A7UB/wOzAf8DsQH/A7AB/wOtAf8DqwH/A6oB/wOoAf8DpwH/A6YB/wPIAf8DUwH/CAADCwEPA1QBrQM6
AWEDPwFuA3oB+AHiAeEB3wH/AeEB4AHfAf8DagHzAzwBZwM8AWYDUwGtAwsBD1AAAVcBhwGeAf8BPQHE
AfAB/wFjAdQB8QH/AYwB4wH0Af8BogHrAfYB/wGDAd8B9AH/AUoBygHwAf8BGAG2Ae0B/wEAAagB6AH/
AQABoQHhAf8BAAGcAdoB/wE4AVkBdgH/CAADsQH/A9kB/wO9Af8DugH/A7gB/wO2Af8DtQH/A7MB/wOw
Af8DrwH/A60B/wOrAf8DqQH/A6gB/wPKAf8DVwH/CAADWgHFBP8CsQGwAf4CsAGvAf4C5wHmAf8B1gHV
AdMB/wHXAdYB1AH/AeMB4gHgAf8BpQGkAaIB/gKwAa8B/QHpAegB5gH/A1gBwVAAAVkBiQGgAf8BPQHE
Ae8B/wFiAdQB8QH/AY0B4wH0Af8BogHrAfYB/wGCAd8B8wH/AUsBygHwAf8BGAG2Ae0B/wEAAagB6AH/
AQABoQHhAf8BAAGcAdoB/wE6AVwBeAH/CAADtgH/A90B/wPBAf8DvQH/A7wB/wO6Af8DuAH/A7UB/wO0
Af8DsgH/A7AB/wOtAf8DrAH/A6wB/wPPAf8DWwH/CAADZAHnAvkB9wH/Au8B7gH/AtsB2gH/AcoCyQH/
AckByAHGAf8ByQHIAccB/wHJAcgBxwH/AssByQH/AeYB5QHkAf8B5QHkAeIB/wNlAeVQAAFbAYwBogH/
AT8BxgHwAf8BZAHUAfEB/wGMAeMB9AH/AaIB6wH2Af8BggHfAfQB/wFLAcoB8AH/ARgBtgHtAf8BAAGo
AegB/wEAAaIB4gH/AQABmwHbAf8BPAFfAYAB/wgAA1oBvQPaAf8DyAH/A8AB/wO/Af8DvQH/A7oB/wO4
Af8DtwH/A7UB/wOzAf8DsAH/A68B/wOzAf8DwgH/A1oBvQgAA04BlQH2AfUB9AH/AeYB5QHkAf8BvwG+
Ab0B/wLrAeoB/wHUAdMB0gH/AdYB1QHUAf8B4gLhAf8CtAGzAf8B1wHWAdQB/wHiAeEB3wH/A0oBjVAA
AV4BjwGlAf8BQAHGAfAB/wFkAdQB8gH/AY0B4wH0Af8BogHrAfYB/wGDAd8B9AH/AUoBygHwAf8BGAG2
Ae0B/wEAAacB6AH/AQABoQHiAf8BAAGcAdsB/wE+AWIBgwH/CAADWgG9A+MB/wPnAf8D4QH/A+AB/wPg
Af8D3wH/A98B/wPeAf8D3QH/A90B/wPcAf8D2wH/A+AB/wPQAf8DWgG9AwsBDwNVAbUDZAHnAeQB4wHi
Af8B0QHQAc8B/wLwAe8B/wOuAf8DZAHxA2cB8gKsAasB/wLoAecB/wLLAcoB/wHgAd8B3QH/A2EB5ANV
AbUDCwEPSAABXwGSAagB/wFAAcUB8AH/AWUB1AHyAf8BjQHjAfQB/wGiAesB9gH/AYIB3wH0Af8BSgHK
AfAB/wEYAbYB7QH/AQABpwHoAf8BAAGhAeEB/wEAAZwB2wH/AUABZQGGAf8IAAMpAT8DzgH/A+wB/wPe
Af8D2AH/A9IB/wPMAf8DyAH/A8cB/wPIAf8DywH/A9AB/wPdAf8D6AH/A6QB/wMrAUIDPwFtAuQB4wH/
AdgB1gHVAf8B0gHRAdAB/wHFAcQBwwH/Ae0B7AHrAf8DVwG6CAADXAHNAegB5wHmAf8BtgG1AbQB/wHW
AdUB0wH/AeIB4QHgAf8C4AHfAf8DPAFmSAABYgGVAasB/wFAAcUB8AH/AWUB1AHyAf8BjQHjAfQB/wGi
AesB9gH/AYMB3wH0Af8BSwHLAfAB/wEYAbUB7QH/AQABpwHoAf8BAAGhAeIB/wEAAZwB2gH/AUMBaAGI
Af8MAANaAb0D4wH/A9sB/wPiAf8BtwHQAbgB/wFJAa0BTQH/AVsBqgFJAf8BVQGvAU0B/wE7AaUBRwH/
AawBxQGsAf8DwgH/A9EB/wPTAf8DWgG9BAADQgF2AewB6wHoAf8B2gHZAdcB/wHUAdMB0QH/AcYBxQHE
Af8B3gLcAf8DRgF+CAADUAGaAd0B3AHbAf8ByAHGAcUB/wLiAeEB/wLhAd8B/wHuAe0B7AH/Az8Bb0gA
AWQBmAGuAf8BQAHFAfAB/wFlAdQB8QH/AY0B4wH0Af8BogHrAfYB/wGDAd8B9AH/AUsBygHwAf8BGAG2
Ae0B/wEAAagB6QH/AQABoQHhAf8BAAGcAdoB/wFFAWoBigH/DAADKQE/A9EB/wPzAf8BxwHeAcoB/wFJ
AckBhQH/AbMB3AGkAf8B5wHHAWEB/wHcAb8BWAH/AVsBzAGPAf8BNAGtAU0B/wG4AdABuAH/A/EB/wOv
Af8DKwFCBAADLwFKA2AB6wOJAfwB3gHdAdwB/wHLAsoB/wHmAuUB/wNhAeEDMgFQAzgBXANgAesC7gHs
Af8BzALLAf8B5wHmAeUB/wKKAYkB/ANgAesDLAFDSAABZwGbAbAB/wE/AcYB8AH/AWUB1AHyAf8BjQHj
AfQB/wGiAesB9gH/AYMB3wH0Af8BSwHKAfAB/wEYAbYB7QH/AQABqAHoAf8BAAGhAeEB/wEAAZwB2gH/
AUgBbgGOAf8QAANaAb0DxAH/AVsBzgGLAf8BmQHkAasB/wGwAcUBQgH/AeoBtQEtAf8B4QGiAR4B/wGl
AZ0BJQH/AYIBxQGPAf8BLgGaATsB/wOgAf8DWgG9EAADXgHOAeEB4AHeAf8B2QHXAdYB/wG4ArcB/wHh
AeAB3wH/A6sB/QOwAf0C9gH1Af8CwAG/Af8B6gHpAegB/wLzAfIB/wNcAclQAAFqAZ8BswH/AT8BxgHw
Af8BYwHUAfEB/wGMAeMB9AH/AaIB6wH2Af8BgwHfAfQB/wFLAcoB8AH/ARgBtgHtAf8BAAGnAegB/wEA
AaEB4QH/AQABmwHaAf8BSgFxAZAB/xgAAWcBkQFyAfwBogHpAZUB/wHWAc8BTgH/AeIBswEsAf8B0QG7
ATQB/wHCAa4BJwH/AYIBvQFRAf8BLwF4AV0B/BgAA0wBkQHjAeIB4AH/At4B3AH/AeEB4AHfAf8BzALL
Af8BxAHDAcIB/wLPAc4B/wLeAd0B/wLwAe8B/wLwAe8B/wL2AfUB/wNIAYdQAAFrAaEBtQH/AWUB1QH0
Af8BmgHoAfcB/wG1AfMB+gH/AcIB+AH8Af8BwwH4Af0B/wHBAfcB/QH/Aa8B8AH7Af8BjwHiAfcB/wFk
AdAB8AH/ATgBuAHlAf8BTQF0AZMB/xgAAWkBkQFzAfwBogHwAZ8B/wHYAe0BrwH/Ad4BxQFNAf8BtAHi
AUoB/wFFAecBHgH/AVAB1wFQAf8BPgF6AWQB/BQAAwEBAgNfAeMB5QHkAeEB/wLuAe0B/wLuAe0B/wLr
AeoB/wHjAeIB4QH/AugB5wH/AuoB6QH/AvMB8gH/AvUB9AH/AfoB+QH4Af8DXAHfUAABbgGjAbgB/wHF
AfkB/QH/AcUB+QH9Af8BxQH5Af0B/wHFAfkB/QH/AcUB+QH9Af8BxQH5Af0B/wHFAfkB/QH/AcUB+QH9
Af8BxQH5Af0B/wHFAfkB/QH/AU8BdwGVAf8YAANhAdwByAH3AdQB/wHYAfYBygH/AecB4wGpAf8B2wHP
AVEB/wGvAdwBTQH/AZ0B6gGrAf8DXwHgGAADQAFvA38B/gNkAecDXwHzAegB5wHmAf8B5wHmAeUB/wLt
AewB/wL7AfoB/wNnAfIDZAHnA4EB/gM9AWhQAAG3AdcB4QH/AYwBvQHMAf8BnQHPAdsB/wGtAd8B6AH/
AbkB7AHzAf8BwgH1AfoB/wHCAfUB+gH/AbgB6wHxAf8BqQHaAeMB/wGUAcQB0QH/AXUBqAG4Af8BqQHF
AdEB/xgAAy0BRQFqAYEBdgH6AdsB+AHpAf8B5wHyAdgB/wHtAeUBswH/Ad8B2QGmAf8BXwGOAV8B+wMy
AVAgAAMPARQDCgEOA1MBqgHvAe4B7QH/AvQB8wH/A1IBpAMIAQsDEQEXWAAC/gL/AeMB8QH0Af8BuQHX
AeEB/wGVAb4BzAH/AXUBqAG7Af8BaAGbAbAB/wFkAZgBrQH/AW0BoQGzAf8BjAGyAcIB/wGxAc0B1wH/
Ad8B6wHvAf8D/gH/HAADLgFHA14B2QFtAZEBcQH8AW0BjQFtAfwDXgHdAzIBUCwAAy8BSgNdAfADYgHv
AywBQ2QAAxEBFwNWAbMBUwFUAVMBrLQAAwQBBQMQARUDHwEtAykBPwMvAUkDLgFIAygBPQMeASsDDwEU
AwMBBBAAA7cB/wGcAagBngH/AQABXAE3Af8BIQGSAVkB/wEAAWABNwH/AQkBTQGgAf8BBgFLAZ4B/wEC
AUgBmwH/AQABRgGZAf8BAAFEAZcB/wEAAUEBlAH/AQABQAGTAf8DUQH/A1EB/xwAA0EBcgFMAl8B8wFZ
AlwBzwFLAkwBkAMjATNcAAMFAQcDHwEsAj4BPQFqAlIBUAGjAVsCWQHEAV0CWgHTAV0CWgHTAVsCWQHD
AVICUQGhAzwBZgMcASgDBAEGDAADFQEdA1EBogEmAZUBXQH/AYIBvgGqAf8BNQGlAYIB/wEWAZcBTwH/
ARkBmQFUAf8BHQGZAVgB/wEhAZ0BXQH/AVsBqgHSAf8BWQGoAdEB/wEAAUIBlQH/IAADIQEwASsBQwFx
AfwBhgGtAeEB/wFjAagB3AH/AUQBkgHJAf8BFQFXAasB/wFVAlYBsQMfAS1TAAEBAxIBGAM+AWsBXQJZ
AdcBXwErASoB/AGsATIBCQH/AeEBUgEmAf8B5AFkAToB/wHTAVABHgH/AaMBQAExAf0BYQJeAdoCPgE9
AWoDDwEUCAADGAEiAVABUgFQAaQDVgGzAVIBrAGfAf8BWQG3AZ4B/wFjAbsBrAH/AWMBuwGuAf8BZAG7
AbAB/wGAAbwBswH/ARwBmgFgAf8BOQGVAccB/wFcAasB0wH/AQABRQGYAf8gAAFUAlYBqwFSAZ0B0QH/
AZkBvAHrAf8BVgGgAeMB/wGWAbkB6gH/AZQBuAHqAf8BRQGTAcoB/wErATIBbQH8A0MBeFAAAxsBJgNZ
AdIBIgEMAQAB/wGKAUEBKQH/AcoBhgFLAf8B9gG8AZwB/wH5AcwBtwH/AeMBoAFdAf8BsQFcAUIB/wFe
ATgBGQH/AV4CWAHdAxwBKAgAAVUBVgFVAbEDVgGzA1YBswFBAaQBkQH/AVQBtgGbAf8BTQGyAZsB/wFP
AbIBngH/AVEBswGhAf8BhQG/AbYB/wEjAZ4BggH/AT4BmQHJAf8BYAGtAdQB/wEDAUkBnAH/HAADHwEt
ASsBWAF1AfwBnQG/AewB/wFOAZwB4gH/AUABkwHfAf8BPQGRAd8B/wFEAZQB4AH/AZUBuAHqAf8BhgGt
AeEB/wEuAYMBuwH/AUsCTAGQBAADnQH/A50B/wOdAf8DnQH/A50B/wOdAf8DnQH/A50B/wOdAf8DnQH/
A50B/wOdAf8DnQH/A50B/wOdAf8DnQH/CAABUwJPAaUBOQEeAQYB/wFeAUkBNAH/AY8BWwFGAf8BrAGI
AVAB/wHCAaMBiAH/AcEBpQGOAf8BswGYAYEB/wGRAVsBRQH/AVkBQAErAf8BSAEhAQAB/wFWAlUBsQgA
AwgBCwNVAbIDVgGzAVsBsgGoAf8BYgG9AacB/wGHAcEBtQH/AYYBwQG2Af8BhwHBAbcB/wGIAcEBuQH/
ASkBogGIAf8BQwGcAcsB/wFkAbAB1QH/AQgBTAGfAf8QAAMrAUIDSAGEAVUCVwG3AUwCXwHzAVsBpAHX
Af8BoQHCAe0B/wGfAcAB7QH/AZ0BvwHtAf8BWQGjAeQB/wE/AZIB3wH/AT0BkAHeAf8BYAGnAeYB/wGS
AbYB6AH/ASgBZAG3Af8DNwFaA50B/wG6Ar0B/wHmAuwB/wHmAu0B/wHnAu0B/wHoAu4B/wHpAu8B/wHp
Au8B/wHqAu8B/wHqAvAB/wHrAvAB/wHrAvEB/wHsAvEB/wHsAvEB/wG9Ar8B/wOdAf8EAAM5AV8BWgE6
AR8B/wHDAbEBogH/AbYBnAGDAf8BpgFeATEB/wGoAVwBLgH/AcMBpAGHAf8B2AHGAbAB/wG9AakBiwH/
AWQBRAEkAf8BQQEhAQIB/wE3ARMBAAH/AT4BFwEAAf8DMwFTCAADBgEIA1UBsgE0AaABigH/AZMByQG6
Af8BRAGvAZcB/wEpAaIBgwH/ASoBowGHAf8BLAGkAYsB/wErAaoBkgH/ATkBwgHtAf8BgQG0AdcB/wEN
AVABowH/DAADTAGTAUkBlwHPAf8BYAGoAdkB/wGNAbQB4gH/AaMBxAHtAf8BpwHHAe4B/wFJAZcBzQH/
ARkBWgGyAf8BRAGTAckB/wGfAcAB7QH/AV0BlgGjAf8BngGWAS0B/wFhAZQBkQH/AY0BswHpAf8BXgGl
AdgB/wFaAl4B2AQAA1wB6gHbAuIB/wHNAs8B/wPLAf8DzAH/A84B/wPPAf8D0AH/A9IB/wPTAf8D1QH/
AdcC2AH/AecC7AH/A20B9wQAAyIBMQFWAlUBsQFMASABAAH/AaoBhQFEAf8BsgFXARUB/wGtATQBAAH/
AboBUQEJAf8B6gHVAb8B/wH9AfwB+gH/AdYBvgGmAf8BkAFEAREB/wFHARUBAAH/AUgBJQEEAf8BQQEh
AQMB/wNXAcUDHAEnCAADBAEGARoBlAFcAf8BUwG5AZ4B/wEuAaYBiQH/AV4BsQHVAf8BWgGtAdQB/wFW
AasB0gH/AUQBugHkAf8BAAGZAU4B/wEMAY4BPQH/AQ8BVQGaAf8MAAFIAmIB9gGuAc0B8AH/AbABzwHw
Af8BmAG/AewB/wFjAa4B5wH/AaoBygHvAf8BIgFgAbgB/wQAARoBWwGzAf8BogHDAe0B/wGoAZcBFgH/
AcQBtQE/Af8BrAGXAQsB/wFAAZMB3wH/AZgBuwHrAf8BAQFJAZ8B/wQAA1wB6gHZAuEB/wHLAswB/wPH
Af8DyAH/A8oB/wPLAf8DzQH/A84B/wPQAf8D0QH/AdMC1AH/AeUC6wH/A20B9wQAAy4BRwNZAewBRwEV
AQAB/wGZATQBAAH/AbgBTAEAAf8BwgFIAQAB/wHJAVoBCAH/AeYBvwGUAf8B7AHUAbYB/wHNAZwBRwH/
AagBUQERAf8BmQFSASYB/wGjAYwBVwH/AWQBSwE0Af8CUQE/AfcBNQI0AVUMAAE9AY4BxAH/ATcBrAGL
Af8BNAGqAY8B/wFjAbUB2AH/AV8BsgHWAf8BXAGvAdUB/wFYAawB0wH/AQkBkAFHAf8BPgGoAYQB/wEA
AV0BOAH/AxQBGwgAAVoCYAHeAagByQHtAf8BhAGnAe0B/wE9AU8B7QH/AU8BjgHpAf8BrQHNAfAB/wFS
AZ0B0gH/ASMBYQG5Af8BTAGZAc4B/wGlAcUB7gH/AZUBmgFOAf8BrQGXAQsB/wGdAZcBMgH/AUsBmwHi
Af8BmAG7AeoB/wFIAmIB9gQAA1wB6gHXAt8B/wHHAskB/wPCAf8DxAH/A8UB/wPIAf8DyQH/A8oB/wPM
Af8DzQH/AdAC0QH/AeMC6gH/A20B9wQAAzkBXwJAAR4B/QFZASABAAH/Aa4BPgEAAf8BwAFGAQAB/wHn
AZYBKwH/AegBsgFfAf8B5AGxAV8B/wHSAYkBHgH/Ab0BSwEAAf8BqAE5AQAB/wG4AY0BQgH/AdQBwwGy
Af8BmAGEAVMB/wFAASIBBAH/AT4CPQFqDAABQwGRAckB/wGkAcwB5AH/AYcBuwHbAf8BJAGhAV8B/wEe
AZwBWQH/ARkBmgFVAf8BFAGWAU8B/wEwAaMBgQH/AYQBwAGrAf8BJwGWAV4B/wNRAaIDFQEdBAADUQGc
AZIBuQHlAf8BUwFZAfYB/wGBAYQB9QH/AiUB8AH/AZABuwHrAf8BrgHNAfAB/wGsAcwB8AH/AaoBygHw
Af8BhQGyAekB/wFDAakBwQH/ASkBswGNAf8BOwGoAbYB/wFVAaEB5AH/AZcBugHoAf8DXQHtBAADXAHq
AdYC3wH/AcMCxQH/A8AB/wPAAf8DwgH/A8MB/wPEAf8DxQH/A8gB/wPJAf8DzQH/AeAC6AH/A20B9wQA
AzcCWgFNASgB+gGDASsBAAH/AcsBVQEAAf8B5QGLASIB/wH+AbYBVwL/AeMBwgH/AfQBvAGFAf8B1gFc
AQ4B/wHFAVMBAAH/AboBSAEAAf8BrwFcAR4B/wGuAYgBQgH/AZQBWwFCAf8BQQEjAQcB/wM8AWYMAAFI
AZUBzQH/AagBzwHlAf8BjAG/Ad0B/wEqAaUBgQH/AY0BxQG4Af8BiQHDAbQB/wGGAcEBsQH/AYQBvwGv
Af8BXAG5AZ8B/wFTAa0BoAH/A1YBswFQAVIBUAGkAxgBIgMjATMBLgFqAYMB/AGSAaQB9QH/AT4BPwH2
Af8BNgGGAfQB/wEgAaYB+wH/AUEBqwHyAf8BYwGvAecB/wFgAa0B5wH/AV0BqgHmAf8BJAG2AYAB/wFF
AcgBlwH/ASABtwFfAf8BYgGsAecB/wGPAbUB4wH/AVoCXgHVBAADYAHWAccCzQH/AdsC5AH/AdsC5AH/
AdsC5QH/AdwC5QH/AdwC5QH/Ad0C5gH/Ad0C5gH/Ad4C5wH/Ad8C6AH/AeAC6AH/Ac0C0wH/A18B4wQA
AyYBOQFgAloB3gGOATMBAAH/AewBngE4Af8B/gG/AYUC/wHMAaEC/wHfAbsB/wH+AcIBZAH/AeIBjgEu
Af8B0wGEAR8B/wHKAV4BEQH/AbUBVQEPAf8BlwFGAQwB/wGBAUMBHgH/A1kB7AMuAUgMAAFMAZgB0AH/
AasB0QHnAf8BkAHCAd8B/wExAakBiAH/AZEByQG7Af8BWwG6AaUB/wFXAbgBoQH/AVMBtgGeAf8BVwG4
AZ0B/wFCAaUBkgH/A1YBswNWAbMBVQFWAVUBsQQAA0kBhwGGAa8B4QH/AbkB1wHzAf8BFwGmAf4B/wFR
Ab8C/wEQAaMC/wFLAb4B8AH/AR8BzgH7Af8BPwG+AfEB/wE3AbMBoAH/ASABtwFeAf8BLAGzAZAB/wGn
AcgB7gH/AVwBpQHWAf8BTwJRAZwEAAMsAUMDWwHIA50B/wOdAf8DnQH/A50B/wOdAf8DnQH/A50B/wOd
Af8DnQH/A50B/wNeAd0DMQFOBAADCQEMA0sBjgHAAVMBEgL/AbwBZAH/AfoBzgGnAf8B+AHbAb4C/wHi
AcYC/wG+AYYB/wH0AawBWgH/AewBwgGaAf8B4gG1AYsB/wG4AVoBGAH/AZ0BSQERAf8BiAFJASUB/wNP
AaUDEAEVDAABUAGbAdMB/wGuAdQB6AH/AasB0wHoAf8BPgGxAZAB/wGbAc4BwAH/AZkBzQG9Af8BlgHL
AbsB/wGVAcoBuQH/AYABvwGoAf8BXAGzAakB/wNWAbMDVQGyAwgBCwQAAwQBBgNRAZ8BhQGuAeEB/wE/
AbIB+QH/ARABowL/ASUBqQH7Af8BFQHTAf4B/wFRAeIC/wEQAdUC/wFkAbAB6AH/AWEBrQHnAf8BqQHK
Ae8B/wGlAcUB7QH/ASsBXAF3AfwDIQEwRAADEwEaAmQBUwHxAdgBngFXAf8B5wHTAcAB/wH8AfUB7gL/
AfgB6wL/AeUBwgH/AfYBuQGCAf8B8gHSAbgB/wHuAdIBtgH/AcIBhgEzAf8BpwFbASwB/wJNASkB+gMd
ASkQAAFTAZ0B1QH/AVEBmwHTAf8BTgGaAdIB/wEuAaEBjAH/ASkBnwGKAf8BJgGdAYUB/wEiAZkBgAH/
ATsBpQGSAf8BZAG4AbEB/wE1AaEBiwH/A1UBsgMGAQgQAANCAXUBXwJiAfYBjgG2AeMB/wG5AdcB8wH/
AUIB1QH7Af8BDwHVAv8BJgHRAfsB/wGzAdIB8gH/AbEB0AHxAf8BkgG4AeIB/wFHAZUBzAH/A0oBikwA
AzUBVwGpAUcBGQH/AcoBuAGoBv8B/gH8Av8B9gHiAf8B+wHFAaAB/wHkAbkBlQH/AdsBrAFiAf8BwwGO
AUEB/wGTAUkBHQH/AT4CPQFqMAABUwJUAawDVgGzA1YBswMEAQYYAAMWAR4DVAGuAVsBowHcAf8BkQG4
AeQB/wGoAcoB7AH/AaUBxwHsAf8BjQG1AeIB/wFNAZoB0gH/AVoCXwHbAzEBTlQAAzIBUQJkAVkB7AHQ
AbIBlQH/AewB4AHZAf8B5gHVAcQB/wHTAbABlAH/AdMBpgFcAf8BywGPAToB/wFnAWUBWQHyAToCOQFg
NAABUwJUAawDVgGzAwQBBiQAAysBQgNMAZABWwJdAdIBWQJcAc8DTgGZAy0BRWAAAxEBFwNEAXoCWgFX
AcUCZQFeAeUCYQFYAeYCXAFZAckCSAFHAYMDFQEdEAABQgFNAT4HAAE+AwABKAMAAUADAAEgAwABAQEA
AQEGAAEBFgAD/wEAAeABBwIAAfwBPwIAAcABAwIAAfwBPwIAAcABAwIAAcABAwIAAcABAwIAAcABAwIA
AcABAwIAAcABAwIAAcABAwIAAcABAwIAAcABAwYAAcABAwIAAQEBgAIAAcABAwGAAgEBgAIAAcABAwGA
AQEEAAHAAQMBwAEDAcABAwIAAcABAwHwAQ8BwAEDAgABwAEDAfABDwGAAQMCAAHAAQMB8AEPAcABAwIA
AcABAwHwAQ8B8AEPAgABwAEDAfgBHwH8AT8CAAHjBf8B4AEHAYABAQH8AR8C/wHAAQMBgAEHAfgBBwL/
AYABAwEAAQcB+AEDAv8BwAEDAQABBwHwAQECAAHAAQMBAAEHAYADAAGAAQEBgAEHAgABgAEBAgABwAEH
AQEBAAGAAQECAAHgAQMCAAGAAQECAAHgAQECAAGAAQECAAHgAwABgAEBAgAB4AEAAYABAAGAAQECAAHg
AQABgAEAAv8BgAEBAeABAQHgAQEC/wHAAQMB/wHDAfABAwL/AeABBwH/AccB/AEPAv8B8AEPCw==
</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -64,7 +64,7 @@ Partial Class frmPassword
Me.lblPassword.Name = "lblPassword"
Me.lblPassword.Size = New System.Drawing.Size(56, 13)
Me.lblPassword.TabIndex = 2
Me.lblPassword.Text = Language.Base.Password
Me.lblPassword.Text = My.Resources.strLabelPassword
'
'lblVerify
'
@@ -73,7 +73,7 @@ Partial Class frmPassword
Me.lblVerify.Name = "lblVerify"
Me.lblVerify.Size = New System.Drawing.Size(36, 13)
Me.lblVerify.TabIndex = 3
Me.lblVerify.Text = Language.Base.Verify
Me.lblVerify.Text = My.Resources.strLabelVerify
'
'btnOK
'
@@ -83,7 +83,7 @@ Partial Class frmPassword
Me.btnOK.Name = "btnOK"
Me.btnOK.Size = New System.Drawing.Size(69, 23)
Me.btnOK.TabIndex = 4
Me.btnOK.Text = Language.Base.Button_OK
Me.btnOK.Text = My.Resources.strButtonOK
Me.btnOK.UseVisualStyleBackColor = True
'
'btnCancel
@@ -95,7 +95,7 @@ Partial Class frmPassword
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(69, 23)
Me.btnCancel.TabIndex = 5
Me.btnCancel.Text = Language.Base.Button_Cancel
Me.btnCancel.Text = My.Resources.strButtonCancel
Me.btnCancel.UseVisualStyleBackColor = True
'
'lblStatus
@@ -107,13 +107,13 @@ Partial Class frmPassword
Me.lblStatus.Name = "lblStatus"
Me.lblStatus.Size = New System.Drawing.Size(189, 14)
Me.lblStatus.TabIndex = 6
Me.lblStatus.Text = Language.Base.Status
Me.lblStatus.Text = "Status"
Me.lblStatus.TextAlign = System.Drawing.ContentAlignment.TopRight
Me.lblStatus.Visible = False
'
'pbLock
'
Me.pbLock.Image = Global.mRemote.My.Resources.Resources.Lock
Me.pbLock.Image = Global.mRemoteNG.My.Resources.Resources.Lock
Me.pbLock.Location = New System.Drawing.Point(7, 8)
Me.pbLock.Name = "pbLock"
Me.pbLock.Size = New System.Drawing.Size(64, 64)
@@ -152,7 +152,7 @@ Partial Class frmPassword
Me.ShowIcon = False
Me.ShowInTaskbar = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent
Me.Text = Language.Base.Security
Me.Text = My.Resources.strTitlePassword
CType(Me.pbLock, System.ComponentModel.ISupportInitialize).EndInit()
Me.pnlImage.ResumeLayout(False)
Me.pnlImage.PerformLayout()

View File

@@ -86,12 +86,12 @@
End Sub
Private Sub ApplyLanguage()
lblPassword.Text = Language.Base.Password
lblVerify.Text = Language.Base.Verify
btnOK.Text = Language.Base.Button_OK
btnCancel.Text = Language.Base.Button_Cancel
lblStatus.Text = Language.Base.Status
Text = Language.Base.Security
lblPassword.Text = My.Resources.strLabelPassword
lblVerify.Text = My.Resources.strLabelVerify
btnOK.Text = My.Resources.strButtonOK
btnCancel.Text = My.Resources.strButtonCancel
lblStatus.Text = "Status"
Text = My.Resources.strTitlePassword
End Sub
Private Sub txtPassword_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtPassword.GotFocus

View File

@@ -16,27 +16,27 @@
<p>
<span class="heading1">Steps to configure your SQL Server</span></p>
<ul>
<li>Create a new Database called &quot;mRemote&quot; on your SQL Server.</li>
<li>Create a new Database called &quot;mRemoteNG&quot; on your SQL Server.</li>
<li>Run the SQL Script below on the newly created Database.</li>
<li>Give the users that you want to grant access to the mRemote Connections Database
Read/Write permissions on the Database.</li>
</ul>
<p class="heading1">
Steps to configure mRemote for SQL</p>
Steps to configure mRemoteNG for SQL</p>
<ul>
<li>Start mRemote if it&#39;s not already running.</li>
<li>Start mRemoteNG if it&#39;s not already running.</li>
<li>Go to Options - Connections.</li>
<li>Check the box that says &quot;Use SQL Server to load &amp; save connections&quot;.</li>
<li>Fill in your SQL Server hostname or ip address.</li>
<li>If you do not use your Windows logon info to authenticate against the SQL Server
fill in the correct Username and Password.</li>
<li>Click OK to apply the changes. The main window title should now change to
&quot;mRemote | SQL Server&quot;.</li>
&quot;mRemoteNG | SQL Server&quot;.</li>
<li>Now click on File - Save to update the tables on your SQL Server with the data
from the loaded connections xml file. (Do not click File - New, this doesn&#39;t
work yet)</li>
<li>You should now be able to do everything you were able to do with the XML storage
plus see the changes live on another mRemote instance that is connected to the
plus see the changes live on another mRemoteNG instance that is connected to the
same Database.</li>
</ul>

View File

@@ -37,6 +37,8 @@ CREATE TABLE [dbo].[tblCons] (
[Resolution] [varchar] (32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[DisplayWallpaper] [bit] NOT NULL ,
[DisplayThemes] [bit] NOT NULL ,
[EnableFontSmoothing] [bit] NOT NULL ,
[EnableDesktopComposition] [bit] NOT NULL ,
[CacheBitmaps] [bit] NOT NULL ,
[RedirectDiskDrives] [bit] NOT NULL ,
[RedirectPorts] [bit] NOT NULL ,
@@ -72,6 +74,8 @@ CREATE TABLE [dbo].[tblCons] (
[InheritDescription] [bit] NOT NULL ,
[InheritDisplayThemes] [bit] NOT NULL ,
[InheritDisplayWallpaper] [bit] NOT NULL ,
[InheritEnableFontSmoothing] [bit] NOT NULL ,
[InheritEnableDesktopComposition] [bit] NOT NULL ,
[InheritDomain] [bit] NOT NULL ,
[InheritIcon] [bit] NOT NULL ,
[InheritPanel] [bit] NOT NULL ,

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@@ -1,11 +0,0 @@
Namespace Language
Public Class Base
Inherits Language.EN
Public Shared ReadOnly CurrentLanguage As Languages = Languages.EN
End Class
Public Enum Languages
EN = 1
DE = 2
End Enum
End Namespace

View File

@@ -1,390 +0,0 @@
Namespace Language
Public Class DE
Public Const Button_Cancel As String = "&Abbrechen"
Public Const Button_New As String = "&Neu"
Public Const Button_OK As String = "&OK"
Public Const Button_Close As String = "&Schließen"
Public Const Button_Scan As String = "&Scannnen"
Public Const Button_Stop As String = "&Stop"
Public Const Button_Import As String = "&Importieren"
Public Const Props_Name As String = "Name"
Public Const Descr_Name As String = "Dies ist der Name der im Verbindungs Baum angezeigt wird."
Public Const Props_Description As String = "Beschreibung"
Public Const Descr_Description As String = "Hier kann eine Beschreibung für den Host hinterlegt werden."
Public Const Props_Icon As String = "Icon"
Public Const Descr_Icon As String = "Das ausgewählte Icon wird bei Verbindung zum Host im Tab angezeigt."
Public Const Props_Panel As String = "Panel"
Public Const Descr_Panel As String = "Setzt das Panel in dem die Verbindung geöffnet wird."
Public Const Props_HostnameIP As String = "Hostname/IP"
Public Const Descr_HostnameIP As String = "Der Hostname od. die IP zu der eine Verbinung aufgebaut werden soll."
Public Const Props_Username As String = "Benutzername"
Public Const Descr_Username As String = "Geben sie hier ihren Benutzernamen ein."
Public Const Props_Password As String = "Passwort"
Public Const Descr_Password As String = "Geben sie hier ihr Passwort ein."
Public Const Props_Domain As String = "Domäne"
Public Const Descr_Domain As String = "Geben sie hier ihre Domäne ein."
Public Const Props_Protocol As String = "Protokoll"
Public Const Descr_Protocol As String = "Wählen sie das Protokoll das verwendet werden soll um eine Verbindung aufzubauen."
Public Const Props_Port As String = "Port"
Public Const Descr_Port As String = "Geben sie den Port ein auf dem das Protokoll auf Verbindungen wartet."
Public Const Props_PuttySession As String = "Putty Session"
Public Const Descr_PuttySession As String = "Wählen sie eine PuTTY session die bei Verbindung verwendet werden soll."
Public Const Props_EncryrptionStrength As String = "Verschlüsselungsstärke"
Public Const Descr_EncryptionStrength As String = "Wählen sie die Verschlüsselungsstärke des Remote Hosts."
Public Const Props_AuthenticationLevel As String = "Serverauthentifizierung"
Public Const Descr_AuthenticationLevel As String = "Wählen sie welche Authentifizierungs-Variante verwendet wird."
Public Const Props_UseConsoleSession As String = "Verwende Console Session"
Public Const Descr_UseConsoleSession As String = "Zur Console Session des Remote Hosts verbinden."
Public Const Props_Resolution As String = "Auflösung"
Public Const Descr_Resolution As String = "Wählen sie die Auflösung in welcher der Host geöffnet werden soll."
Public Const Props_Colors As String = "Farben"
Public Const Descr_Colors As String = "Wählen sie die Farb Qualität."
Public Const Props_CacheBitmaps As String = "Bitmaps zwischenspeichern"
Public Const Descr_CacheBitmaps As String = "Wählen sie ob Bitmap caching zum Einsatz kommen soll."
Public Const Props_DisplayWallpaper As String = "Hintergrundbild anzeigen"
Public Const Descr_DisplayWallpaper As String = "Wählen sie ob Hintergrundbilder am Remote Host angezeigt werden sollen."
Public Const Props_DisplayThemes As String = "Themen anzeigen"
Public Const Descr_DisplayThemes As String = "Wählen sie ob Themen am Remote Host angezeigt werden sollen."
Public Const Props_RedKeyCombinations As String = "Tastenkombinationen"
Public Const Descr_RedKeyCombinations As String = "Wählen sie ob Tastenkombinationen wie z.B. Alt+Tab auf den Remote Host umgeleitet werden sollen."
Public Const Props_RedDiskDrives As String = "Festplatten"
Public Const Descr_RedDiskDrives As String = "Wählen sie ob ihre lokalen Festplatten am Remote Host angezeigt werden sollen."
Public Const Props_RedPrinters As String = "Drucker"
Public Const Descr_RedPrinters As String = "Wählen sie ob ihre lokalen Drucker am Remote Host angezeigt werden sollen."
Public Const Props_RedPorts As String = "Ports"
Public Const Descr_RedPorts As String = "Wählen sie ob ihre lokalen Ports wie z.B. COM, Parallel auf dem Remote Host angezeigt werden sollen."
Public Const Props_RedSmartCards As String = "Smart Cards"
Public Const Descr_RedSmartCards As String = "Wählen sie ob ihre lokalen Smart Cards auf dem Remote Host zur Verfügung stehen sollen."
Public Const Props_RedSounds As String = "Töne"
Public Const Descr_RedSound As String = "Wählen sie wie Töne auf dem Remote Host wiedergegeben werden sollen."
Public Const Props_PreExtApp As String = "Pre Ext. App"
Public Const Descr_PreExtApp As String = "Wählen sie eine Ext. App die gestartet werden soll bevor die Verbindung zum Remote Host aufgebaut wurde."
Public Const Props_PostExtApp As String = "Post Ext. App"
Public Const Descr_PostExtApp As String = "Wählen sie eine Ext. App die gestartet werden soll nachdem die Verbindung zum Remote Host getrennt wurde."
Public Const Props_Compression As String = "Kompremierung"
Public Const Descr_Compression As String = "Wählen sie die Kompressionsrate die verwendet werden soll."
Public Const Props_Encoding As String = "Codierung"
Public Const Descr_Encoding As String = "Wählen sie die Codierung die verwendet werden soll."
Public Const Props_AuthMode As String = "Auth. Modus"
Public Const Descr_AuthMode As String = "Wählen sie wie sie sich am VNC server authentifizieren wollen."
Public Const Props_ProxyType As String = "Proxy Typ"
Public Const Descr_ProxyType As String = "Wenn sie einen Proxy verwenden um auf den Remote Host zugreifen zu können, wählen sie hier den Typ."
Public Const Props_ProxyIP As String = "Proxy IP"
Public Const Descr_ProxyIP As String = "Geben sie die IP des Proxy Servers ein."
Public Const Props_ProxyPort As String = "Proxy Port"
Public Const Descr_ProxyPort As String = "Geben sie den Port des Proxy Servers ein."
Public Const Props_ProxyUsername As String = "Proxy Benutzername"
Public Const Descr_ProxyUsername As String = "Geben sie ihren Benutzernamen ein."
Public Const Props_ProxyPassword As String = "Proxy Passwort"
Public Const Descr_ProxyPassword As String = "Geben sie ihr Password ein."
Public Const Props_SmartSizeMode As String = "SmartSize Modus"
Public Const Descr_SmartSizeMode As String = "Wählen sie den SmartSize Modus der verwendet werden soll."
Public Const Props_ViewOnly As String = "View-Only"
Public Const Descr_ViewOnly As String = "Wählen sie ob sie eine View-Only Verbindung aufbauen wollen."
Public Const Props_RenderingEngine As String = "Rendering Engine"
Public Const Descr_RenderingEngine As String = "Wählen sie eine der Rendering Engines die verwendet wird um html darzustellen."
Public Const Props_MacAddress As String = "MAC Adresse"
Public Const Descr_MacAddress As String = "Geben sie die MAC Adresse des Remote Hosts ein (kann für Ext. Apps verwendet werden)."
Public Const Props_UserField As String = "Benutzer Feld"
Public Const Descr_UserField As String = "Dieses Feld ist frei beschreibbar."
Public Const Props_General As String = "Generell"
Public Const Props_Display As String = "Anzeige"
Public Const Props_Connection As String = "Verbindung"
Public Const Props_Appearance As String = "Aussehen"
Public Const Props_Redirect As String = "Umleitung"
Public Const Props_Misc As String = "Verschiedenes"
Public Const Props_InheritEverything As String = "Alles vererben"
Public Const Props_ExtApp As String = "Ext. App"
Public Const Descr_ExtApp As String = "Wählen sie die Ext. App die gestartet werden soll."
Public Const Menu_About As String = "Über"
Public Const Menu_AddConnectionPanel As String = "Verbindungs Panel hinzufügen"
Public Const Menu_Forum As String = "Support Forum" ' TODO: Translate
Public Const Menu_BugReport As String = "Bug Report" ' TODO: Translate
Public Const Menu_Config As String = "Konfiguration"
Public Const Menu_ConnectionPanels As String = "Verbindungs Panels"
Public Const Menu_Connections As String = "Verbindungen"
Public Const Menu_ConnectionsConfig As String = "Verbindungen && Konfiguration"
Public Const Menu_Donate As String = "Spenden"
Public Const Menu_ErrorsAndInfos As String = "Fehler und Infos"
Public Const Menu_ErrorsInfos As String = "Fehler && Infos"
Public Const Menu_Exit As String = "Beenden"
Public Const Menu_ExternalApplications As String = "Externe Programme"
Public Const Menu_ExternalApplicationsToolbar As String = "Externe Programme Symbolleiste"
Public Const Menu_File As String = "&Datei"
Public Const Menu_FullScreenKioskMode As String = "Vollbild (Kiosk Modus)"
Public Const Menu_Help As String = "Hilfe"
Public Const Menu_Info As String = "&Info"
Public Const Menu_JumpTo As String = "Springe zu"
Public Const Menu_NewConnections As String = "Neu Verbindungen"
Public Const Menu_OpenConnections As String = "Verbindungen öffnen"
Public Const Menu_Options As String = "Optionen"
Public Const Menu_PortScan As String = "Port Scan"
Public Const Menu_QuickyToolbar As String = "Quicky Symbolleiste"
Public Const Menu_SaveConnections As String = "Verbindungen speichern"
Public Const Menu_SaveConnectionsAs As String = "Verbindungen speichern unter"
Public Const Menu_ScreenshotManager As String = "Screenshot Manager"
Public Const Menu_Sessions As String = "Sessions"
Public Const Menu_SessionsScreenshots As String = "Sessions && Screenshots"
Public Const Menu_SSHFileTransfer As String = "SSH Datei Transfer"
Public Const Menu_Tools As String = "E&xtras"
Public Const Menu_Update As String = "Update"
Public Const Menu_View As String = "&Ansicht"
Public Const Menu_Website As String = "Webseite"
Public Const Toolbar_Play As String = "Los!"
Public Const Toolbar_Quicky As String = "&Quicky:"
Public Const Toolbar_ShowText As String = "Text anzeigen"
Public Const Password As String = "Passwort:"
Public Const Security As String = "Sicherheit"
Public Const SelectAPanel As String = "Wähle ein Panel aus der Liste oder klicke auf Neu um ein neues zu erstellen. Klicke OK um fortzufahren."
Public Const SelectPanel As String = "Wähle Panel"
Public Const Status As String = "Status"
Public Const Verify As String = "Überprüfen:"
Public Const Aspect As String = "Aspekt"
Public Const Free As String = "Frei"
Public Const NoSmartSize As String = "Kein SmartSize"
Public Const Normal As String = "Normal"
Public Const None As String = "Kein"
Public Const NoCompression As String = "Keine Kompression"
Public Const Connecting As String = "Verbinde..."
Public Const Disconnected As String = "Getrennt"
Public Const RDP256Colors As String = "256 Farben"
Public Const RDPSoundBringToThisComputer As String = "Auf diesem Computer wiedergeben"
Public Const RDPSoundLeaveAtRemoteComputer As String = "Auf dem Remotecomputer wiedergeben"
Public Const RDPSoundDoNotPlay As String = "Nicht wiedergeben"
Public Const RDPFitToPanel As String = "An das Panel anpassen"
Public Const RDPSmartSize As String = "Smart Size"
Public Const Active As String = "Aktiv"
Public Const Inactive As String = "Inaktiv"
Public Const Fullscreen As String = "Vollbild"
Public Const Information As String = "Information"
Public Const Warning As String = "Warnung"
Public Const Error_ As String = "Fehler"
Public Const PasswordProtect As String = "Passwortschützen"
Public Const AutomaticReconnect As String = "Automatisches wiederverbinden"
Public Const ServerStatus As String = "Server Status:"
Public Const ReconnectWhenReady As String = "Verbinden wenn bereit"
Public Const Connections As String = "Verbindungen"
Public Const Files As String = "Dateien"
Public Const All As String = "Alle"
Public Const Yes As String = "Ja"
Public Const No As String = "Nein"
Public Const New_ As String = "Neu"
Public Const Connection As String = "Verbindung"
Public Const Folder As String = "Ordner"
Public Const Root As String = "Wurzel"
Public Const SureToDeleteItem As String = "Sind sie sicher dass sie dieses Objekt löschen möchten?"
Public Const License As String = "Lizenz"
Public Const About As String = "Über"
Public Const ChangeLog As String = "Änderungen:"
Public Const ReleasedUnderGPL As String = "Unter der GNU General Public License (GPL) veröffentlicht"
Public Const SomeIconsBy As String = "Einige Icons von"
Public Const Change As String = "Ändern"
Public Const Inheritance As String = "Vererbung"
Public Const Default_ As String = "Standard"
Public Const Properties As String = "Eigenschaften"
Public Const SmartSize As String = "SmartSize"
Public Const Screenshot As String = "Screenshot"
Public Const StartChat As String = "Chat starten"
Public Const TransferFile As String = "Datei übertragen"
Public Const RefreshScreen As String = "Anzeige aktualisieren"
Public Const SendSpecialKeys As String = "Tastenkombination senden"
Public Const RenameTab As String = "Tab umbenennen"
Public Const DuplicateTab As String = "Tab klonen"
Public Const Reconnect As String = "Wiederverbinden"
Public Const Disconnect As String = "Trennen"
Public Const Message As String = "Nachricht"
Public Const Copy As String = "Kopieren"
Public Const Paste As String = "Einfügen"
Public Const Delete As String = "Löschen"
Public Const Filename As String = "Dateiname"
Public Const Arguments As String = "Parameter"
Public Const WaitForExit As String = "Auf Beendigung warten"
Public Const Add As String = "Hinzufügen"
Public Const Remove As String = "Entfernen"
Public Const Start As String = "Starten"
Public Const Application As String = "Applikation"
Public Const Editor As String = "Editor"
Public Const Browse As String = "Öffnen..."
Public Const DisplayName As String = Props_Display & " " & Props_Name
Public Const ReallyDeleteSelectedApplications As String = "Sind sie sicher dass sie die ausgewählte(n) Applikation(en) löschen möchten?"
Public Const Key_Control As String = "Strg"
Public Const Key_Alt As String = "Alt"
Public Const Key_Del As String = "Entf"
Public Const Key_Esc As String = "Esc"
Public Const Advanced As String = "Erweitert"
Public Const TestProxy As String = "Test Proxy"
Public Const Seconds As String = "Sekunden"
Public Const MaxPuttyWaitTime As String = "Maximale Zeit die auf PuTTY und integrierte Ext. Apps gewartet wird"
Public Const AutomaticallyTryToReconnect As String = "Automatisch versuchen zu verbinden wenn Verbindung getrennt wird (nur RDP && ICA)"
Public Const Address As String = "Addresse"
Public Const UseAuthentication As String = "Benutze Authentifizierung"
Public Const UseProxyForAutomaticUpdates As String = "Proxy für automatische Updates verwenden"
Public Const ToConfigurePuttySessions As String = "Hier klicken um PuTTY Sessions zu konfigurieren:"
Public Const LaunchPutty As String = "Starte PuTTY"
Public Const UseCustomPuttyPath As String = "Eigener PuTTY Pfad:"
Public Const AutomaticallyGetSessionInfo As String = "Automatisch Session Informationen einholen"
Public Const WriteLogFile As String = "Log File schreiben (mRemoteNG.log)"
Public Const StartupExit As String = "Start/Ende"
Public Const AllowOnlySingleInstance As String = "Nur eine Instanz zulassen (mRemote Neustart benötigt)"
Public Const ReconnectAtStartup As String = "Offene Verbindungen speichern und beim nächsten Start wiederverbinden"
Public Const CheckForUpdatesOnStartup As String = "Beim Start auf Updates prüfen"
Public Const ConfirmExit As String = "Schließen bestätigen wenn Verbindungen bestehen"
Public Const SaveConsOnExit As String = "Verbindungen beim Schließen speichern"
Public Const MinimizeToSysTray As String = "In die System Tray minimieren"
Public Const ShowFullConsFilePath As String = "Vollen Verbindungsdateipfad im Titel anzeigen"
Public Const AlwaysShowSysTrayIcon As String = "System Tray Icon immer anzeigen"
Public Const ShowDescriptionTooltips As String = "Beschreibungs Tooltips in der Verbindungsliste anzeigen"
Public Const TabsAndPanels As String = "Tabs && Panele"
Public Const ShowProtocolOnTabs As String = "Protokoll im Tab Titel anzeigen"
Public Const ShowLogonInfoOnTabs As String = "Anmeldeinformationen im Tab Titel anzeigen"
Public Const OpenNewTabRight As String = "Neue Tabs rechts vom momentan selektierten Tab öffnen"
Public Const AlwaysShowPanelSelection As String = "Panel Auswahl Dialog immer anzeigen"
Public Const DoubleClickTabClosesIt As String = "Doppelklick schließt Tabs"
Public Const SetHostnameLikeDisplayName As String = "Beim Anlegen einer neuen Verbindung Hostname wie Anzeige Name setzen"
Public Const Experimental As String = "Experimentell"
Public Const UseSQLServer As String = "SQL Server für das Laden && Speichern der Verbindungen verwenden"
Public Const SQLInfo As String = "Für mehr Infos bitte Hilfeeintrag lesen (Info - Help - Getting started - SQL Configuration)"
Public Const SQLServer As String = "SQL Server"
Public Const AutoSaveMins As String = "Minuten (0 = Ausgeschalten)"
Public Const AutoSaveEvery As String = "Automatisch speichern jede:"
Public Const TheFollowing As String = "die folgenden"
Public Const MyCurrentWindowsCreds As String = "meine aktuellen (windows login info)"
Public Const NoInformation As String = "keine"
Public Const EmptyUsernamePasswordDomainFields As String = "Bei leeren Benutzername, Passwort oder Domänen Feldern benutze:"
Public Const SingleClickOnOpenConnectionSwitchesToIt As String = "Ein einzelner Klick auf eine geöffnete Verbindung springt zu dieser"
Public Const SingleClickOnConnectionOpensIt As String = "Ein einzelner Klick auf eine Verbindung öffnet diese"
Public Const SwitchToErrorsAndInfos As String = "Öffne das Fehler && Infos Panel bei"
Public Const Errors As String = "Fehler"
Public Const Warnings As String = "Warnungen"
Public Const Informations As String = "Informationen"
Public Const UseOnlyErrorsAndInfosPanel As String = "Nur Fehler && Infos Panel benutzen (Keine Popups)"
Public Const Applications As String = "Applikationen"
Public Const ProxyTestSucceeded As String = "Proxy test erfolgreich!"
Public Const ProxyTestFailed As String = "Proxy test fehlgeschlagen!"
Public Const StartIP As String = "Start IP"
Public Const EndIP As String = "End IP"
Public Const ProtocolToImport As String = "Zu importierendes Protokoll"
Public Const OpenPorts As String = "Offene Ports"
Public Const ClosedPorts As String = "Geschlossene Ports"
Public Const StartPort As String = "Start Port"
Public Const EndPort As String = "End Port"
Public Const QuickConnect As String = "Quick Connect"
Public Const UncheckProperties As String = "Deaktivieren sie alle Eigenschaften die nicht gespeichert werden sollen."
Public Const Export As String = "Export"
Public Const SaveAll As String = "Alle speichern"
Public Const RemoveAll As String = "Alle entfernen"
Public Const Save As String = "Speichern"
Public Const SaveImageFilter As String = "Graphics Interchange Format File (.gif)|*.gif|Joint Photographic Experts Group File (.jpeg)|*.jpeg|Joint Photographic Experts Group File (.jpg)|*.jpg|Portable Network Graphics File (.png)|*.png" ' TODO: Translate
Public Const Screenshots As String = "Screenshots"
Public Const Activity As String = "Aktivität"
Public Const Type As String = "Type"
Public Const Refresh As String = "Aktualisieren"
Public Const LogOff As String = "Ausloggen"
Public Const LocalFile As String = "Lokale Datei"
Public Const RemoteFile As String = "Remote Datei"
Public Const User As String = "Benutzer"
Public Const Host As String = "Host"
Public Const Transfer As String = "Transfer"
Public Const AddConnection As String = "Verbindung hinzufügen"
Public Const AddFolder As String = "Ordner hinzufügen"
Public Const Connect As String = "Verbinden"
Public Const ConnectWithOptions As String = "Verbinden (mit Optionen)"
Public Const ConnectToConsoleSession As String = "Mit der Console Session verbinden"
Public Const ConnectInFullscreen As String = "Im Vollbild verbinden"
Public Const ChoosePanelBeforeConnecting As String = "Panel vor Verbindung auswählen"
Public Const Tools As String = "Extras"
Public Const ImportExport As String = "Importieren/Exportieren"
Public Const ExportmRemoteXML As String = "mRemote XML exportieren"
Public Const ImportmRemoteXML As String = "mRemote XML importieren"
Public Const ImportAD As String = "Aus Active Directory importieren"
Public Const ImportRDPFiles As String = "Aus .RDP Datei(en) importieren"
Public Const ImportPortScan As String = "Von Port Scan importieren"
Public Const Sort As String = "Sortieren"
Public Const SortAsc As String = "Aufsteigend (A-Z)"
Public Const SortDesc As String = "Abfallend (Z-A)"
Public Const Duplicate As String = "Duplizieren"
Public Const Rename As String = "Umbenennen"
Public Const MoveUp As String = "Nach oben"
Public Const MoveDown As String = "Nach unten"
Public Const ExpandAllFolders As String = "Alle Ordner erweitern"
Public Const CollapseAllFolders As String = "Alle Ordner schließen"
Public Const NewConnection As String = "Neue Verbindung"
Public Const NewFolder As String = "Neuer Ordner"
Public Const CheckForUpdate As String = "Auf Update prüfen"
Public Const DownloadAndInstall As String = "Downloaden && Installieren"
Public Const AvailableVersion As String = "Verfügbare Version"
Public Const CurrentVersion As String = "Aktuelle Version"
Public Const Version As String = "Version"
Public Const UpdateAvailable As String = "Update verfügbar!"
Public Const NoUpdateAvailable As String = "Kein Update verfügbar!"
Public Const UpdateDownloadComplete As String = "Download fertiggestellt!" & vbNewLine & "mRemote wird nun geschlossen und die Installation gestartet."
Public Const SendTo As String = "Senden an..."
Public Const Screen As String = "Bildschirm"
Public Const UnclosedConnectionPanels As String = "Es sind noch geöffnete Verbindungs Panele vorhanden, wollen sie wirklich beenden?"
Public Const SaveConnectionsFileBeforeOpeningAnother As String = "Wollen sie die aktuelle Verbindungs-Datei speichern bevor eine andere geladen wird?"
Public Const NewPanel As String = "Neues Panel"
Public Const PanelName As String = "Panel Name"
Public Const NewTitle As String = "Neuer Titel"
Public Const AlwaysConnectEvenIfAuthFails As String = "Immer verbinden, auch wenn Authentifizierung fehlschlägt"
Public Const DontConnectWhenAuthFails As String = "Keine Verbindung herstellen wenn Authentifizierung fehlschlägt"
Public Const WarnIfAuthFails As String = "Warnung anzeigen wenn Authentifizierung fehlschlägt"
Public Const UltraVNCSCListeningPort As String = "UltraVNC SingleClick Port"
Public Const ListeningForIncomingVNCConnections As String = "Warte auf eingehende VNC Verbindungen auf Port"
Public Const CheckProperInstallationOfComponentsAtStartup As String = "Überprüfe die Installation aller Komponenten beim Start"
Public Const XULrunnerPath As String = "XULrunner Pfad"
Public Const Inherit As String = "Vererbe"
Public Const ComponentsCheck As String = "Komponenten Check"
Public Const EncryptCompleteConnectionFile As String = "Connections Datei vollständig verschlüsseln"
Public Const EmptyPasswordContinue As String = "Wollen sie ohne Passwort fortfahren?"
'CompCheck
Public Const CcAlwaysShowScreen As String = "Bei jedem Start anzeigen"
Public Const CcCheckAgain As String = "Aktualisieren"
Public Const CcNotInstalledProperly As String = "nicht korrekt installiert"
Public Const CcCheckSucceeded As String = "Check erfolgreich!"
Public Const CcCheckFailed As String = "Check fehlgeschlagen!"
Public Const CcRDPOK As String = "Alle RDP Komponenten wurden gefunden und scheinen korrekt registriert zu sein."
Public Const CcRDPFailed As String = "Um RDP korrekt betreiben können muss mindestens Remote Desktop Connection (Terminal Services Client) 6.0 installiert sein. Hier können sie die Software herunterladen: http://support.microsoft.com/kb/925876" & vbNewLine & _
"Wenn sie RDP 6.0 bereits installiert haben und der Check noch immer fehlschlägt, versuchen sie die Datei mstscax.dll manuell zu registrieren. Öffnen sie hierzu den Ausführen Dialog (Start - Ausführen) und geben sie Folgendes ein: regsvr32 ""c:\windows\system32\mstscax.dll"" (Wobei c:\ ihr System-Laufwerk ist)." & vbNewLine & _
"Wenn sie noch immer Probleme mit RDP haben, konsultieren sie bitte das mRemote Forum: http://forum.mremoteng.org/"
Public Const CcVNCOK As String = "Alle VNC Komponenten wurden gefunden und scheinen korrekt registriert zu sein."
Public Const CcVNCFailed As String = "VNC benötigt die Datei scvncctrl.dll (wird mitgeliefert). Diese muss registriert sein. Wenn sie eines der nicht-Setup Pakete verwenden muss dies manuell durchgeführt werden." & vbNewLine & _
"Öffnen sie hierzu den Ausführen Dialog (Start - Ausführen) und geben sie Folgendes ein: regsvr32 ""c:\Programme\mRemote\scvncctrl.dll"" (Wobei c:\Programme\mRemote\ ihr mRemote Installations-Pfad ist)." & vbNewLine & _
"Wenn sie noch immer Probleme mit VNC haben, konsultieren sie bitte das mRemote Forum: http://forum.mremoteng.org/"
Public Const CcPuttyOK As String = "PuTTY wurde gefunden und scheint betriebsbereit zu sein."
Public Const CcPuttyFailed As String = "Die Protokolle, SSH, Telnet, Rlogin und RAW benötigen PuTTY. PuTTY wird in allen mRemote Paketen mitgeliefert und befindet sich im Installations-Pfad." & vbNewLine & _
"Bitte versichern sie sich dass sich die Datei Putty.exe in ihrem mRemote Installations-Pfad befindet (Standard: c:\Programme\mRemote\) oder dass sie einen korrekten Pfad in den Optionen (Extras - Optionen - Erweitert - Eigener PuTTY Pfad) angegeben haben."
Public Const CcICAOK As String = "Alle ICA Komponenten wurden gefunden und scheinen korrekt registriert zu sein."
Public Const CcICAFailed As String = "ICA benötigt eine funktionierende Citrix Presentation Server Client Installation und dass die Datei wfica.ocx korrekt registriert ist. Hier können sie den Client herunterladen: http://www.citrix.com/download/" & vbNewLine & _
"Wenn sie Citrix Presentation Server Client installiert haben und noch immer Probleme haben diesen Check erfolgreich abzuschließen, versuchen sie die Datei wfica.ocx manuell zu registrieren." & vbNewLine & _
"Öffnen sie hierzu den Ausführen Dialog (Start - Ausführen) und geben sie Folgendes ein: regsvr32 ""c:\Programme\Citrix\ICA Client\wfica.ocx"" (Wobei c:\Programme\Citrix\ICA Client\ ihr Citrix Presentation Server Client Installations-Pfad ist)." & vbNewLine & _
"Wenn sie noch immer Probleme mit ICA haben, konsultieren sie bitte das mRemote Forum: http://forum.mremoteng.org/"
Public Const CcGeckoOK As String = "XULrunner wurde gefunden und scheint korrekt installiert zu sein."
Public Const CcGeckoFailed As String = "Um die Gecko Rendering Engine benutzen zu können benötigen sie XULrunner 1.8.1.x und einen korrekt eingetragenen Pfad in den Optionen." & vbNewLine & _
"Hier können sie XULrunner 1.8.1.3 herunterladen: ftp://ftp.mozilla.org/pub/xulrunner/releases/1.8.1.3/contrib/win32/" & vbNewLine & _
"Wenn der Download abgeschlossen ist entpacken sie das Paket (Der Speicherort ist dabei ihnen überlassen). Als nächstes öffnen sie (in mRemote) Extras - Optionen - Erweitert und geben sie den korrekten Pfad im XULrunner Feld an." & vbNewLine & _
"Wenn sie noch immer Probleme mit der Gecko Engine in mRemote haben, konsultieren sie bitte das mRemote Forum: http://forum.mremoteng.org/"
Public Const CcEOLOK As String = "EOLWTSCOM wurde gefunden und scheint korrekt registriert zu sein."
Public Const CcEOLFailed As String = "Das (RDP) Sessions feature benötigt die Datei eolwtscom.dll. Diese muss korrekt registriert sein." & vbNewLine & _
"Alle mRemote Pakete beinhalten diese Datei, jedoch muss sie, wenn sie eines der nicht-Setup Pakete verwenden manuell registriert werden." & vbNewLine & _
"Öffnen sie hierzu den Ausführen Dialog (Start - Ausführen) und geben sie Folgendes ein: regsvr32 ""c:\Programme\mRemote\eolwtscom.dll"" (Wobei c:\Programme\mRemote\ ihr mRemote Installations-Pfad ist)." & vbNewLine & _
"Wenn sie noch immer Probleme mit dem (RDP) Sessions Feature in mRemote haben, konsultieren sie bitte das mRemote Forum: http://forum.mremoteng.org/"
Public Const PropertiesWillOnlyBeSavedMRemoteXML As String = "(Diese Einstellungen werden nur gespeichert wenn sie mRemote XML als Dateiformat auswählen!)"
End Class
End Namespace

View File

@@ -1,401 +0,0 @@
Namespace Language
Public Class EN
Public Const Button_Cancel As String = "&Cancel"
Public Const Button_New As String = "&New"
Public Const Button_OK As String = "&OK"
Public Const Button_Close As String = "&Close"
Public Const Button_Scan As String = "&Scan"
Public Const Button_Stop As String = "&Stop"
Public Const Button_Import As String = "&Import"
Public Const Props_Name As String = "Name"
Public Const Descr_Name As String = "This is the name that will be displayed in the connections tree."
Public Const Props_Description As String = "Description"
Public Const Descr_Description As String = "Put your notes or a description for the host here."
Public Const Props_Icon As String = "Icon"
Public Const Descr_Icon As String = "Choose a icon that will be displayed when connected to the host."
Public Const Props_Panel As String = "Panel"
Public Const Descr_Panel As String = "Sets the panel in which the connection will open."
Public Const Props_HostnameIP As String = "Hostname/IP"
Public Const Descr_HostnameIP As String = "Enter the hostname or ip you want to connect to."
Public Const Props_Username As String = "Username"
Public Const Descr_Username As String = "Enter your username."
Public Const Props_Password As String = "Password"
Public Const Descr_Password As String = "Enter your password."
Public Const Props_Domain As String = "Domain"
Public Const Descr_Domain As String = "Enter your domain."
Public Const Props_Protocol As String = "Protocol"
Public Const Descr_Protocol As String = "Choose the protocol mRemoteNG should use to connect to the host."
Public Const Props_Port As String = "Port"
Public Const Descr_Port As String = "Enter the port the selected protocol is listening on."
Public Const Props_PuttySession As String = "Putty Session"
Public Const Descr_PuttySession As String = "Select a PuTTY session to be used when connecting."
Public Const Props_EncryrptionStrength As String = "Encryption Strength"
Public Const Descr_EncryptionStrength As String = "Select the encryption strength of the remote host."
Public Const Props_AuthenticationLevel As String = "Server authentication"
Public Const Descr_AuthenticationLevel As String = "Select which authentication level this connection should use."
Public Const Props_UseConsoleSession As String = "Use console session"
Public Const Descr_UseConsoleSession As String = "Connect to the console session of the remote host."
Public Const Props_Resolution As String = "Resolution"
Public Const Descr_Resolution As String = "Choose the resolution or mode this connection will open in."
Public Const Props_Colors As String = "Colors"
Public Const Descr_Colors As String = "Select the color quality to be used."
Public Const Props_CacheBitmaps As String = "Cache Bitmaps"
Public Const Descr_CacheBitmaps As String = "Select whether to use bitmap caching or not."
Public Const Props_DisplayWallpaper As String = "Display Wallpaper"
Public Const Descr_DisplayWallpaper As String = "Select yes if the wallpaper of the remote host should be displayed."
Public Const Props_DisplayThemes As String = "Display Themes"
Public Const Descr_DisplayThemes As String = "Select yes if the theme of the remote host should be displayed."
Public Const Props_RedKeyCombinations As String = "Key combinations"
Public Const Descr_RedKeyCombinations As String = "Select whether key combinations (ie. Alt+Tab) should be redirected to the remote host."
Public Const Props_RedDiskDrives As String = "Disk Drives"
Public Const Descr_RedDiskDrives As String = "Select whether local disk drives should be shown on the remote host."
Public Const Props_RedPrinters As String = "Printers"
Public Const Descr_RedPrinters As String = "Select whether local printers should be shown on the remote host."
Public Const Props_RedPorts As String = "Ports"
Public Const Descr_RedPorts As String = "Select whether local ports (ie. com, parallel) should be shown on the remote host."
Public Const Props_RedSmartCards As String = "Smart Cards"
Public Const Descr_RedSmartCards As String = "Select whether local Smart Cards should be available on the remote host."
Public Const Props_RedSounds As String = "Sounds"
Public Const Descr_RedSound As String = "Select how remote sound should be redirected."
Public Const Props_PreExtApp As String = "Pre Ext. App"
Public Const Descr_PreExtApp As String = "Select a Ext. App to be started before the connection to the remote host is established."
Public Const Props_PostExtApp As String = "Post Ext. App"
Public Const Descr_PostExtApp As String = "Select a Ext. App to be started after the disconnection to the remote host."
Public Const Props_Compression As String = "Compression"
Public Const Descr_Compression As String = "Select the compression value to be used."
Public Const Props_Encoding As String = "Encoding"
Public Const Descr_Encoding As String = "Select the encoding mode to be used."
Public Const Props_AuthMode As String = "Auth. Mode"
Public Const Descr_AuthMode As String = "Select how you want to authenticate against the VNC server."
Public Const Props_ProxyType As String = "Proxy Type"
Public Const Descr_ProxyType As String = "If you use a proxy to tunnel VNC connections, select which type it is."
Public Const Props_ProxyIP As String = "Proxy IP"
Public Const Descr_ProxyIP As String = "Enter the Proxy IP to be used."
Public Const Props_ProxyPort As String = "Proxy Port"
Public Const Descr_ProxyPort As String = "Enter the port the Proxy Server listens on."
Public Const Props_ProxyUsername As String = "Proxy Username"
Public Const Descr_ProxyUsername As String = "Enter your username for authenticating against the Proxy."
Public Const Props_ProxyPassword As String = "Proxy Password"
Public Const Descr_ProxyPassword As String = "Enter your password for authenticating against the Proxy."
Public Const Props_SmartSizeMode As String = "SmartSize Mode"
Public Const Descr_SmartSizeMode As String = "Select the SmartSize mode to be used."
Public Const Props_ViewOnly As String = "View Only"
Public Const Descr_ViewOnly As String = "If you want to establish a view-only connection to the host select yes."
Public Const Props_RenderingEngine As String = "Rendering Engine"
Public Const Descr_RenderingEngine As String = "Select one of the available rendering engines that will be used to display html."
Public Const Props_MacAddress As String = "MAC Address"
Public Const Descr_MacAddress As String = "Enter the MAC Address of the remote host if you wish to use it in Ext. Apps."
Public Const Props_UserField As String = "User Field"
Public Const Descr_UserField As String = "Feel free to enter any information you need here."
Public Const Props_RDGatewayUsageMethod As String = "Use Gateway"
Public Const Descr_RDGatewayUsageMethod As String = "Specifies when to use a Remote Desktop Gateway (RD Gateway) server."
Public Const Props_RDGatewayHostname As String = "Gateway Hostname"
Public Const Descr_RDGatewayHostname As String = "Specifies the host name of the Remote Desktop Gateway server."
Public Const Props_RDGatewayUseConnectionCredentials As String = "Gateway Credentials"
Public Const Descr_RDGatewayUseConnectionCredentials As String = "Specifies whether or not to log on to the gateway using the same username and password as the connection."
Public Const Props_RDGatewayUsername As String = "Gateway Username"
Public Const Descr_RDGatewayUsername As String = "Specifies the user name that a user provides to connect to the RD Gateway server."
Public Const Props_RDGatewayPassword As String = "Gateway Password"
Public Const Descr_RDGatewayPassword As String = "Specifies the password that a user provides to connect to the RD Gateway server."
Public Const Props_RDGatewayDomain As String = "Gateway Domain"
Public Const Descr_RDGatewayDomain As String = "Specifies the domain name that a user provides to connect to the RD Gateway server."
Public Const Props_General As String = "General"
Public Const Props_Display As String = "Display"
Public Const Props_Connection As String = "Connection"
Public Const Category_RDGateway As String = "Gateway"
Public Const Props_Appearance As String = "Appearance"
Public Const Props_Redirect As String = "Redirect"
Public Const Props_Misc As String = "Misc"
Public Const Props_InheritEverything As String = "Inherit Everything"
Public Const Props_ExtApp As String = "Ext. App"
Public Const Descr_ExtApp As String = "Select the Ext. App to be started."
Public Const Menu_About As String = "About"
Public Const Menu_AddConnectionPanel As String = "Add Connection Panel"
Public Const Menu_Forum As String = "Support Forum"
Public Const Menu_BugReport As String = "Report a Bug"
Public Const Menu_Config As String = "Config"
Public Const Menu_ConnectionPanels As String = "Connection Panels"
Public Const Menu_Connections As String = "Connections"
Public Const Menu_ConnectionsConfig As String = "Connections && Config"
Public Const Menu_Donate As String = "Donate"
Public Const Menu_ErrorsAndInfos As String = "Notifications"
Public Const Menu_ErrorsInfos As String = "Notifications"
Public Const Menu_Exit As String = "Exit"
Public Const Menu_ExternalApplications As String = "External Applications"
Public Const Menu_ExternalApplicationsToolbar As String = "External Applications Toolbar"
Public Const Menu_File As String = "&File"
Public Const Menu_FullScreenKioskMode As String = "Full Screen"
Public Const Menu_Help As String = "mRemoteNG Help"
Public Const Menu_Info As String = "&Help"
Public Const Menu_JumpTo As String = "Jump To"
Public Const Menu_NewConnections As String = "New Connections"
Public Const Menu_OpenConnections As String = "Open Connections"
Public Const Menu_Options As String = "Options"
Public Const Menu_PortScan As String = "Port Scan"
Public Const Menu_QuickyToolbar As String = "Quick Connect Toolbar"
Public Const Menu_SaveConnections As String = "Save Connections"
Public Const Menu_SaveConnectionsAs As String = "Save Connections As"
Public Const Menu_ScreenshotManager As String = "Screenshot Manager"
Public Const Menu_Sessions As String = "Sessions"
Public Const Menu_SessionsScreenshots As String = "Sessions && Screenshots"
Public Const Menu_SSHFileTransfer As String = "SSH File Transfer"
Public Const Menu_Tools As String = "&Tools"
Public Const Menu_Update As String = "Check for Updates"
Public Const Menu_View As String = "&View"
Public Const Menu_Website As String = "Website"
Public Const Toolbar_Play As String = "Connect"
Public Const Toolbar_Quicky As String = "&Connect:"
Public Const Toolbar_ShowText As String = "Show Text"
Public Const Password As String = "Password:"
Public Const Security As String = "Security"
Public Const SelectAPanel As String = "Select a panel from the list below or click New to add a new one. Click OK to continue."
Public Const SelectPanel As String = "Select Panel"
Public Const Status As String = "Status"
Public Const Verify As String = "Verify:"
Public Const Aspect As String = "Aspect"
Public Const Free As String = "Free"
Public Const NoSmartSize As String = "No SmartSize"
Public Const Normal As String = "Normal"
Public Const None As String = "None"
Public Const NoCompression As String = "No Compression"
Public Const Connecting As String = "Connecting..."
Public Const Disconnected As String = "Disconnected"
Public Const RDP256Colors As String = "256 Colors"
Public Const RDPSoundBringToThisComputer As String = "Bring to this computer"
Public Const RDPSoundLeaveAtRemoteComputer As String = "Leave at remote computer"
Public Const RDPSoundDoNotPlay As String = "Do not play"
Public Const RDPFitToPanel As String = "Fit To Panel"
Public Const RDPSmartSize As String = "Smart Size"
Public Const Active As String = "Active"
Public Const Inactive As String = "Inactive"
Public Const Fullscreen As String = "Fullscreen"
Public Const Information As String = "Information"
Public Const Warning As String = "Warning"
Public Const Error_ As String = "Error"
Public Const PasswordProtect As String = "Password Protect"
Public Const AutomaticReconnect As String = "Automatic Reconnect"
Public Const ServerStatus As String = "Server Status:"
Public Const ReconnectWhenReady As String = "Reconnect when ready"
Public Const Connections As String = "Connections"
Public Const Files As String = "Files"
Public Const All As String = "All"
Public Const Yes As String = "Yes"
Public Const No As String = "No"
Public Const New_ As String = "New"
Public Const Connection As String = "Connection"
Public Const Folder As String = "Folder"
Public Const Root As String = "Root"
Public Const SureToDeleteItem As String = "Are you sure you want to delete this Item?"
Public Const License As String = "License"
Public Const Change As String = "Change"
Public Const Inheritance As String = "Inheritance"
Public Const Default_ As String = "Default"
Public Const Properties As String = "Properties"
Public Const SmartSize As String = "SmartSize"
Public Const Screenshot As String = "Screenshot"
Public Const StartChat As String = "Start Chat"
Public Const TransferFile As String = "Transfer File"
Public Const RefreshScreen As String = "Refresh Screen"
Public Const SendSpecialKeys As String = "Send special Keys"
Public Const RenameTab As String = "Rename Tab"
Public Const DuplicateTab As String = "Duplicate Tab"
Public Const Reconnect As String = "Reconnect"
Public Const Disconnect As String = "Disconnect"
Public Const Message As String = "Message"
Public Const Copy As String = "Copy"
Public Const Paste As String = "Paste"
Public Const Delete As String = "Delete"
Public Const Filename As String = "Filename"
Public Const Arguments As String = "Arguments"
Public Const WaitForExit As String = "Wait for exit"
Public Const Add As String = "Add"
Public Const Remove As String = "Remove"
Public Const Start As String = "Start"
Public Const Application As String = "Application"
Public Const Editor As String = "Editor"
Public Const Browse As String = "Browse..."
Public Const DisplayName As String = Props_Display & " " & Props_Name
Public Const ReallyDeleteSelectedApplications As String = "Do you really want to delete the selected application(s)?"
Public Const Key_Control As String = "Ctrl"
Public Const Key_Alt As String = "Alt"
Public Const Key_Del As String = "Del"
Public Const Key_Esc As String = "Esc"
Public Const Advanced As String = "Advanced"
Public Const TestProxy As String = "Test Proxy"
Public Const Seconds As String = "seconds"
Public Const MaxPuttyWaitTime As String = "Max. PuTTY && Integrated Ext. Apps wait time"
Public Const AutomaticallyTryToReconnect As String = "Automatically try to reconnect when disconnected from server (RDP && ICA only)"
Public Const Address As String = "Address"
Public Const UseAuthentication As String = "This proxy server requires authentication"
Public Const UseProxyForAutomaticUpdates As String = "Use a proxy server to connect"
Public Const ToConfigurePuttySessions As String = "To configure PuTTY sessions click this button:"
Public Const LaunchPutty As String = "Launch PuTTY"
Public Const UseCustomPuttyPath As String = "Use custom PuTTY path:"
Public Const AutomaticallyGetSessionInfo As String = "Automatically get session information"
Public Const WriteLogFile As String = "Write log file (mRemoteNG.log)"
Public Const StartupExit As String = "Startup/Exit"
Public Const AllowOnlySingleInstance As String = "Allow only a single instance of the application (mRemoteNG restart required)"
Public Const ReconnectAtStartup As String = "Reconnect to previously opened sessions on startup"
Public Const CheckForUpdatesOnStartup As String = "Check for updates and announcements"
Public Const ConfirmExit As String = "Confirm exit if there are open connections"
Public Const SaveConsOnExit As String = "Save connections on exit"
Public Const MinimizeToSysTray As String = "Minimize to System Tray"
Public Const ShowFullConsFilePath As String = "Show full connections file path in window title"
Public Const AlwaysShowSysTrayIcon As String = "Always show System Tray Icon"
Public Const ShowDescriptionTooltips As String = "Show description tooltips in connection tree"
Public Const TabsAndPanels As String = "Tabs && Panels"
Public Const ShowProtocolOnTabs As String = "Show protocols on tab names"
Public Const ShowLogonInfoOnTabs As String = "Show logon information on tab names"
Public Const OpenNewTabRight As String = "Open new tab to the right of the currently selected tab"
Public Const AlwaysShowPanelSelection As String = "Always show panel selection dialog when opening connectins"
Public Const DoubleClickTabClosesIt As String = "Double click on tab closes it"
Public Const SetHostnameLikeDisplayName As String = "Set hostname like display name when creating new connections"
Public Const Experimental As String = "Experimental"
Public Const UseSQLServer As String = "Use SQL Server to load && save connections"
Public Const SQLInfo As String = "Please see Help - Getting started - SQL Configuration for more Info!"
Public Const SQLServer As String = "SQL Server"
Public Const AutoSaveMins As String = "Minutes (0 means disabled)"
Public Const AutoSaveEvery As String = "Auto Save every:"
Public Const TheFollowing As String = "the following"
Public Const MyCurrentWindowsCreds As String = "my current credentials (windows logon info)"
Public Const NoInformation As String = "no information"
Public Const EmptyUsernamePasswordDomainFields As String = "For empty Username, Password or Domain fields use:"
Public Const SingleClickOnOpenConnectionSwitchesToIt As String = "Single click on opened connection switches to it"
Public Const SingleClickOnConnectionOpensIt As String = "Single click on connection opens it"
Public Const SwitchToErrorsAndInfos As String = "Switch to Notifications panel on"
Public Const Errors As String = "Errors"
Public Const Warnings As String = "Warnings"
Public Const Informations As String = "Informations"
Public Const UseOnlyErrorsAndInfosPanel As String = "Use only Notifications panel (no messagebox popups)"
Public Const Applications As String = "Applications"
Public Const ProxyTestSucceeded As String = "Proxy test succeeded!"
Public Const ProxyTestFailed As String = "Proxy test failed!"
Public Const StartIP As String = "Start IP"
Public Const EndIP As String = "End IP"
Public Const ProtocolToImport As String = "Protocol to import"
Public Const OpenPorts As String = "Open Ports"
Public Const ClosedPorts As String = "Closed Ports"
Public Const StartPort As String = "Start Port"
Public Const EndPort As String = "End Port"
Public Const QuickConnect As String = "Quick Connect"
Public Const UncheckProperties As String = "Uncheck the properties you want not to be saved!"
Public Const Export As String = "Export"
Public Const SaveAll As String = "Save All"
Public Const RemoveAll As String = "Remove All"
Public Const Save As String = "Save"
Public Const SaveImageFilter As String = "Graphics Interchange Format File (.gif)|*.gif|Joint Photographic Experts Group File (.jpeg)|*.jpeg|Joint Photographic Experts Group File (.jpg)|*.jpg|Portable Network Graphics File (.png)|*.png"
Public Const Screenshots As String = "Screenshots"
Public Const Activity As String = "Activity"
Public Const Type As String = "Type"
Public Const Refresh As String = "Refresh"
Public Const LogOff As String = "Log off"
Public Const LocalFile As String = "Local File"
Public Const RemoteFile As String = "Remote File"
Public Const User As String = "User"
Public Const Host As String = "Host"
Public Const Transfer As String = "Transfer"
Public Const AddConnection As String = "Add Connection"
Public Const AddFolder As String = "Add Folder"
Public Const Connect As String = "Connect"
Public Const ConnectWithOptions As String = "Connect (with options)"
Public Const ConnectToConsoleSession As String = "Connect to console session"
Public Const ConnectInFullscreen As String = "Connect in fullscreen"
Public Const ChoosePanelBeforeConnecting As String = "Choose panel before connecting"
Public Const Tools As String = "Tools"
Public Const ImportExport As String = "Import/Export"
Public Const ExportmRemoteXML As String = "Export mRemote/mRemoteNG XML"
Public Const ImportmRemoteXML As String = "Import mRemote/mRemoteNG XML"
Public Const ImportAD As String = "Import from Active Directory"
Public Const ImportRDPFiles As String = "Import from .RDP file(s)"
Public Const ImportPortScan As String = "Import from Port Scan"
Public Const Sort As String = "Sort"
Public Const SortAsc As String = "Ascending (A-Z)"
Public Const SortDesc As String = "Descending (Z-A)"
Public Const Duplicate As String = "Duplicate"
Public Const Rename As String = "Rename"
Public Const MoveUp As String = "Move up"
Public Const MoveDown As String = "Move down"
Public Const ExpandAllFolders As String = "Expand all folders"
Public Const CollapseAllFolders As String = "Collapse all folders"
Public Const NewConnection As String = "New Connection"
Public Const NewFolder As String = "New Folder"
Public Const CheckForUpdate As String = "Check Again"
Public Const DownloadAndInstall As String = "Download and Install"
Public Const AvailableVersion As String = "Current version"
Public Const CurrentVersion As String = "Installed version"
Public Const Version As String = "Version"
Public Const UpdateAvailable As String = "mRemoteNG requires an update"
Public Const NoUpdateAvailable As String = "mRemoteNG is up to date"
Public Const UpdateDownloadComplete As String = "Download complete!" & vbNewLine & "mRemoteNG will now quit and begin with the installation."
Public Const SendTo As String = "Send to..."
Public Const Screen As String = "Screen"
Public Const SaveConnectionsFileBeforeOpeningAnother As String = "Do you want to save the current connections file before loading another?"
Public Const NewPanel As String = "New Panel"
Public Const PanelName As String = "Panel name"
Public Const NewTitle As String = "New Title"
Public Const AlwaysConnectEvenIfAuthFails As String = "Always connect, even if authentication fails"
Public Const DontConnectWhenAuthFails As String = "Don't connect if authentication fails"
Public Const WarnIfAuthFails As String = "Warn me if authentication fails"
Public Const UltraVNCSCListeningPort As String = "UltraVNC SingleClick Listening Port"
Public Const ListeningForIncomingVNCConnections As String = "Listening for incoming VNC connections on port"
Public Const CheckProperInstallationOfComponentsAtStartup As String = "Check proper installation of components at startup"
Public Const XULrunnerPath As String = "XULrunner path"
Public Const Inherit As String = "Inherit"
Public Const ComponentsCheck As String = "Components Check"
Public Const EncryptCompleteConnectionFile As String = "Completely encrypt connection file"
Public Const EmptyPasswordContinue As String = "Do you want to continue with no password?"
'CompCheck
Public Const CcAlwaysShowScreen As String = "Always show this screen at startup"
Public Const CcCheckAgain As String = "Refresh"
Public Const CcNotInstalledProperly As String = "not installed properly"
Public Const CcCheckSucceeded As String = "Check succeeded!"
Public Const CcCheckFailed As String = "Check failed!"
Public Const CcRDPOK As String = "All RDP components were found and seem to be registered properly." & vbNewLine & _
"Remote Desktop Connection Control Version {0}"
Public Const CcRDPFailed As String = "For RDP to work properly you need to have at least Remote Desktop Connection (Terminal Services Client) 6.1 installed. You can get it here: http://support.microsoft.com/kb/951616" & vbNewLine & _
"If you have RDP 6.1 installed and the check still fails, try to register mstscax.dll manually. To do this open up the run dialog (Start - Run) and enter the following: regsvr32 ""c:\windows\system32\mstscax.dll"" (Where c:\ is your system drive)." & vbNewLine & _
"If you still have trouble getting RDP to work please consult the mRemoteNG Forum at http://forum.mremoteng.org/"
Public Const CcVNCOK As String = "All VNC components were found and seem to be registered properly." & vbNewLine & _
"VncSharpNG Control Version {0}"
Public Const CcVNCFailed As String = "VNC requires VncSharpNG.dll to be located in your mRemoteNG application folder." & vbNewLine & _
"Please make sure that you have the VncSharpNG.dll file in your mRemoteNG application folder (usually C:\Program Files\mRemoteNG\)." & vbNewLine & _
"If you are still not able to pass this check or use VNC in mRemoteNG please consult the mRemoteNG Forum at http://forum.mremoteng.org/"
Public Const CcPuttyOK As String = "The PuTTY executable was found and should be ready to use."
Public Const CcPuttyFailed As String = "The SSH, Telnet, Rlogin and RAW protocols need PuTTY to work. PuTTY comes with every mRemoteNG package and is located in the installation path." & vbNewLine & _
"Please make sure that either you have the Putty.exe in your mRemoteNG directory (default: c:\Program Files\mRemoteNG\) or that you specified a valid path to your PuTTY executable in the Options (Tools - Options - Advanced - Custom PuTTY path)"
Public Const CcICAOK As String = "All ICA components were found and seem to be registered properly." & vbNewLine & _
"Citrix ICA Client Control Version {0}"
Public Const CcICAFailed As String = "ICA requires that the Citrix Presentation Server Client is installed and that the wfica.ocx library is registered. You can download the client here: http://www.citrix.com/download/" & vbNewLine & _
"If you have the Citrix Presentation Server Client installed and the check still fails, try to register wfica.ocx manually." & vbNewLine & _
"To do this open up the run dialog (Start - Run) and enter the following: regsvr32 ""c:\Program Files\Citrix\ICA Client\wfica.ocx"" (Where c:\Program Files\Citrix\ICA Client\ is the path to your Citrix Presentation Server Client installation)." & vbNewLine & _
"If you are still not able to pass this check or use ICA in mRemoteNG please consult the mRemoteNG Forum at http://forum.mremoteng.org/"
Public Const CcGeckoOK As String = "XULrunner was found and seems to be installed properly."
Public Const CcGeckoFailed As String = "To use the Gecko Rendering Engine you need to have XULrunner 1.8.1.x and the path to the installation set in your Options." & vbNewLine & _
"You can download XULrunner 1.8.1.3 here: ftp://ftp.mozilla.org/pub/xulrunner/releases/1.8.1.3/contrib/win32/" & vbNewLine & _
"When you are finished downloading extract the package to a path of your choice. Then in mRemoteNG go to Tools - Options - Advanced and enter the correct path in the XULrunner path field." & vbNewLine & _
"If you are still not able to pass this check or use the Gecko Engine in mRemoteNG please consult the mRemoteNG Forum at http://forum.mremoteng.org/"
Public Const CcEOLOK As String = "EOLWTSCOM was found and seems to be registered properly."
Public Const CcEOLFailed As String = "The (RDP) Sessions feature requires that you have a registered copy of eolwtscom.dll on your system." & vbNewLine & _
"mRemoteNG ships with this component but will not register it automatically unless you run the setup package." & vbNewLine & _
"To do register it manually do this: Open up the run dialog (Start - Run) and enter the following: regsvr32 ""c:\Program Files\mRemoteNG\eolwtscom.dll"" (Where c:\Program Files\mRemoteNG\ is the path to your mRemoteNG installation)." & vbNewLine & _
"If you are still not able to pass this check or use the (RDP) Sessions feature in mRemoteNG please consult the mRemoteNG Forum at http://forum.mremoteng.org/"
Public Const PropertiesWillOnlyBeSavedMRemoteXML As String = "(These properties will only be saved if you select mRemote/mRemoteNG XML as output file format!)"
End Class
End Namespace

File diff suppressed because it is too large Load Diff

View File

@@ -117,7 +117,37 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="TabController.DrawGrid" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<data name="strPropertyDescriptionColors" xml:space="preserve">
<value>Select the color quality to be used.</value>
</data>
<data name="strPropertyNameColors" xml:space="preserve">
<value>Colors</value>
</data>
<data name="strComponentsCheck" xml:space="preserve">
<value>Components Check</value>
</data>
<data name="strCcAlwaysShowScreen" xml:space="preserve">
<value>Always show this screen at startup</value>
</data>
<data name="strCcCheckAgain" xml:space="preserve">
<value>Refresh</value>
</data>
<data name="strConnecting" xml:space="preserve">
<value>Connecting...</value>
</data>
<data name="strRDP16777216Colors" xml:space="preserve">
<value>16777216 Colors (24-bit)</value>
</data>
<data name="strRDP256Colors" xml:space="preserve">
<value>256 Colors (8-bit)</value>
</data>
<data name="strRDP4294967296Colors" xml:space="preserve">
<value>16777216 Colors (32-bit)</value>
</data>
<data name="strRDP65536Colors" xml:space="preserve">
<value>65536 Colors (16-bit)</value>
</data>
<data name="strRDP32768Colors" xml:space="preserve">
<value>32768 Colors (15-bit)</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -138,11 +138,11 @@ Namespace Messages
Private Shared Sub ShowMessageBox(ByVal Msg As Messages.Message)
Select Case Msg.MsgClass
Case Messages.MessageClass.InformationMsg
MessageBox.Show(Msg.MsgText, Language.Base.Information & " (" & Msg.MsgDate & ")", MessageBoxButtons.OK, MessageBoxIcon.Information)
MessageBox.Show(Msg.MsgText, String.Format(My.Resources.strTitleInformation, Msg.MsgDate), MessageBoxButtons.OK, MessageBoxIcon.Information)
Case Messages.MessageClass.WarningMsg
MessageBox.Show(Msg.MsgText, Language.Base.Warning & " (" & Msg.MsgDate & ")", MessageBoxButtons.OK, MessageBoxIcon.Warning)
MessageBox.Show(Msg.MsgText, String.Format(My.Resources.strTitleWarning, Msg.MsgDate), MessageBoxButtons.OK, MessageBoxIcon.Warning)
Case Messages.MessageClass.ErrorMsg
MessageBox.Show(Msg.MsgText, Language.Base.Error_ & " (" & Msg.MsgDate & ")", MessageBoxButtons.OK, MessageBoxIcon.Error)
MessageBox.Show(Msg.MsgText, String.Format(My.Resources.strTitleError, Msg.MsgDate), MessageBoxButtons.OK, MessageBoxIcon.Error)
End Select
End Sub

View File

@@ -1,7 +1,7 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:2.0.50727.1433
' Runtime Version:4.0.30319.239
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
@@ -32,7 +32,7 @@ Namespace My
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
Protected Overrides Sub OnCreateMainForm()
Me.MainForm = Global.mRemote.frmMain
Me.MainForm = Global.mRemoteNG.frmMain
End Sub
End Class
End Namespace

View File

@@ -12,7 +12,7 @@ Imports System.Runtime.InteropServices
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("mRemoteNG")>
<Assembly: AssemblyCopyright("Copyright © 2007-2010 Felix Deimel, Riley McArdle")>
<Assembly: AssemblyCopyright("Copyright © 2007-2009 Felix Deimel, 2010-2011 Riley McArdle")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
@@ -31,5 +31,4 @@ Imports System.Runtime.InteropServices
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.63")>
<Assembly: AssemblyFileVersion("1.63")>
<Assembly: AssemblyVersion("1.69.*")>

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

@@ -2,455 +2,515 @@
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="My" GeneratedClassName="MySettings" UseMySettingsClassName="true">
<Profiles />
<Settings>
<Setting Name="MainFormLocation" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">999, 999</Value>
<Setting Name="MainFormLocation" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="MainFormSize" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Size" Scope="User">
<Value Profile="(Default)">900, 600</Value>
<Setting Name="MainFormSize" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Size" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="MainFormState" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Windows.Forms.FormWindowState" Scope="User">
<Setting Name="MainFormState" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Windows.Forms.FormWindowState" Scope="User">
<Value Profile="(Default)">Normal</Value>
</Setting>
<Setting Name="MainFormKiosk" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="MainFormKiosk" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="DoUpgrade" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="DoUpgrade" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="CustomPuttyPath" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="CustomPuttyPath" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ShowNoMessageBoxes" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ShowNoMessageBoxes" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="SwitchToMCOnInformation" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="SwitchToMCOnInformation" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="SwitchToMCOnWarning" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="SwitchToMCOnWarning" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="SwitchToMCOnError" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="SwitchToMCOnError" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="AutomaticallyGetSessionInfo" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="AutomaticallyGetSessionInfo" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="LoadConsFromCustomLocation" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="LoadConsFromCustomLocation" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="CustomConsPath" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="CustomConsPath" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="SaveConsOnExit" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="SaveConsOnExit" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="ConfirmExit" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConfirmExit" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="CheckForUpdatesOnStartup" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="CheckForUpdatesOnStartup" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="ShowDescriptionTooltipsInTree" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ShowDescriptionTooltipsInTree" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ShowSystemTrayIcon" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ShowSystemTrayIcon" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="OpenTabsRightOfSelected" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="OpenTabsRightOfSelected" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="ShowLogonInfoOnTabs" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ShowLogonInfoOnTabs" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="SingleClickOnConnectionOpensIt" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="SingleClickOnConnectionOpensIt" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="EmptyCredentials" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="EmptyCredentials" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">noinfo</Value>
</Setting>
<Setting Name="DefaultUsername" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="DefaultUsername" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="DefaultPassword" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="DefaultPassword" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="DefaultDomain" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="DefaultDomain" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="WriteLogFile" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="WriteLogFile" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="UseCustomPuttyPath" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="UseCustomPuttyPath" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ShowCompleteConsPathInTitle" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ShowCompleteConsPathInTitle" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="FirstStart" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="FirstStart" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="ShowProtocolOnTabs" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ShowProtocolOnTabs" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ResetPanels" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="UpdateUseProxy" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="UpdateUseProxy" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="UpdateProxyAddress" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="UpdateProxyAddress" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="UpdateProxyPort" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Setting Name="UpdateProxyPort" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Value Profile="(Default)">80</Value>
</Setting>
<Setting Name="UpdateProxyUseAuthentication" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="UpdateProxyUseAuthentication" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="UpdateProxyAuthUser" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="UpdateProxyAuthUser" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="UpdateProxyAuthPass" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="UpdateProxyAuthPass" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultDescription" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultDescription" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultIcon" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">mRemote</Value>
</Setting>
<Setting Name="ConDefaultPanel" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">General</Value>
</Setting>
<Setting Name="ConDefaultUsername" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultUsername" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultPassword" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultPassword" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultDomain" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultDomain" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultProtocol" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultProtocol" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">RDP</Value>
</Setting>
<Setting Name="ConDefaultPuttySession" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultPuttySession" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">Default Settings</Value>
</Setting>
<Setting Name="ConDefaultUseConsoleSession" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultUseConsoleSession" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultResolution" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultResolution" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">FitToWindow</Value>
</Setting>
<Setting Name="ConDefaultColors" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultColors" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">Colors16Bit</Value>
</Setting>
<Setting Name="ConDefaultCacheBitmaps" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultCacheBitmaps" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="ConDefaultDisplayWallpaper" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultDisplayWallpaper" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultDisplayThemes" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultDisplayThemes" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultRedirectKeys" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultRedirectKeys" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultRedirectDiskDrives" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultRedirectDiskDrives" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultRedirectPrinters" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultRedirectPrinters" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultRedirectPorts" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultRedirectPorts" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultRedirectSmartCards" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultRedirectSmartCards" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultRedirectSound" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultRedirectSound" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">DoNotPlay</Value>
</Setting>
<Setting Name="MaxPuttyWaitTime" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Setting Name="MaxPuttyWaitTime" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Value Profile="(Default)">2</Value>
</Setting>
<Setting Name="SingleInstance" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="SingleInstance" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="OpenConsFromLastSession" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="OpenConsFromLastSession" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="NoReconnect" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="NoReconnect" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="AutoSaveEveryMinutes" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Setting Name="AutoSaveEveryMinutes" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="ExtAppsTBVisible" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ExtAppsTBVisible" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ExtAppsTBShowText" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ExtAppsTBShowText" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="ExtAppsTBLocation" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Point" Scope="User">
<Setting Name="ExtAppsTBLocation" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">0, 0</Value>
</Setting>
<Setting Name="ExtAppsTBParentDock" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ExtAppsTBParentDock" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">Bottom</Value>
</Setting>
<Setting Name="QuickyTBVisible" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="QuickyTBVisible" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="QuickyTBLocation" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Point" Scope="User">
<Setting Name="QuickyTBLocation" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)">3, 24</Value>
</Setting>
<Setting Name="QuickyTBParentDock" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="QuickyTBParentDock" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">Top</Value>
</Setting>
<Setting Name="ResetToolbars" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="UseSQLServer" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="UseSQLServer" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="SQLHost" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="SQLHost" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="SQLUser" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="SQLUser" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="SQLPass" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="SQLPass" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="InhDefaultCacheBitmaps" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultCacheBitmaps" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultColors" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultColors" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultDescription" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultDescription" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultDisplayThemes" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultDisplayThemes" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultDisplayWallpaper" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultDisplayWallpaper" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultDomain" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultDomain" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultIcon" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultIcon" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultPassword" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultPassword" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultPort" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultPort" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultProtocol" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultProtocol" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultPuttySession" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultPuttySession" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRedirectDiskDrives" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultRedirectDiskDrives" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRedirectKeys" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultRedirectKeys" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRedirectPorts" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultRedirectPorts" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRedirectPrinters" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultRedirectPrinters" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRedirectSmartCards" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultRedirectSmartCards" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRedirectSound" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultRedirectSound" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultResolution" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultResolution" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultUseConsoleSession" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultUseConsoleSession" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultUsername" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultUsername" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultPanel" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultPanel" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultICAEncryptionStrength" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultICAEncryptionStrength" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">EncrBasic</Value>
</Setting>
<Setting Name="InhDefaultICAEncryptionStrength" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultICAEncryptionStrength" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultPreExtApp" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultPreExtApp" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultPostExtApp" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultPostExtApp" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="InhDefaultPreExtApp" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultPreExtApp" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultPostExtApp" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultPostExtApp" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="SetHostnameLikeDisplayName" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="SetHostnameLikeDisplayName" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="DoubleClickOnTabClosesIt" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="DoubleClickOnTabClosesIt" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="ReconnectOnDisconnect" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ReconnectOnDisconnect" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="AlwaysShowPanelSelectionDlg" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="AlwaysShowPanelSelectionDlg" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultVNCAuthMode" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultVNCAuthMode" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">AuthVNC</Value>
</Setting>
<Setting Name="ConDefaultVNCColors" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultVNCColors" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">ColNormal</Value>
</Setting>
<Setting Name="ConDefaultVNCSmartSizeMode" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultVNCSmartSizeMode" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">SmartSAspect</Value>
</Setting>
<Setting Name="ConDefaultVNCViewOnly" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="ConDefaultVNCViewOnly" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultVNCCompression" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultVNCCompression" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">CompNone</Value>
</Setting>
<Setting Name="ConDefaultVNCEncoding" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultVNCEncoding" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">EncHextile</Value>
</Setting>
<Setting Name="ConDefaultVNCProxyIP" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultVNCProxyIP" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultVNCProxyPassword" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultVNCProxyPassword" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultVNCProxyPort" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Setting Name="ConDefaultVNCProxyPort" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Value Profile="(Default)">0</Value>
</Setting>
<Setting Name="ConDefaultVNCProxyType" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultVNCProxyType" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">ProxyNone</Value>
</Setting>
<Setting Name="ConDefaultVNCProxyUsername" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultVNCProxyUsername" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="InhDefaultVNCAuthMode" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCAuthMode" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCColors" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCColors" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCSmartSizeMode" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCSmartSizeMode" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCViewOnly" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCViewOnly" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCCompression" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCCompression" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCEncoding" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCEncoding" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCProxyIP" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCProxyIP" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCProxyPassword" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCProxyPassword" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCProxyPort" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCProxyPort" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCProxyType" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCProxyType" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultVNCProxyUsername" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultVNCProxyUsername" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="MinimizeToTray" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="MinimizeToTray" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="SingleClickSwitchesToOpenConnection" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="SingleClickSwitchesToOpenConnection" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultRDPAuthenticationLevel" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultRDPAuthenticationLevel" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">NoAuth</Value>
</Setting>
<Setting Name="InhDefaultRDPAuthenticationLevel" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultRDPAuthenticationLevel" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="UVNCSCPort" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Setting Name="UVNCSCPort" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Value Profile="(Default)">5500</Value>
</Setting>
<Setting Name="StartupComponentsCheck" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="StartupComponentsCheck" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="XULRunnerPath" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="XULRunnerPath" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultRenderingEngine" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultRenderingEngine" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">IE</Value>
</Setting>
<Setting Name="InhDefaultRenderingEngine" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultRenderingEngine" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultMacAddress" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultMacAddress" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="InhDefaultMacAddress" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultMacAddress" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="EncryptCompleteConnectionsFile" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="EncryptCompleteConnectionsFile" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultUserField" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultUserField" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="InhDefaultUserField" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultUserField" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultExtApp" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="ConDefaultExtApp" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="InhDefaultExtApp" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="InhDefaultExtApp" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="LastAnnouncement" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Setting Name="LastAnnouncement" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="CheckForUpdatesAsked" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="CheckForUpdatesAsked" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="CheckForUpdatesFrequencyDays" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Setting Name="CheckForUpdatesFrequencyDays" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Value Profile="(Default)">7</Value>
</Setting>
<Setting Name="CheckForUpdatesLastCheck" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.DateTime" Scope="User">
<Setting Name="CheckForUpdatesLastCheck" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.DateTime" Scope="User">
<Value Profile="(Default)">1980-01-01</Value>
</Setting>
<Setting Name="UpdatePending" Provider="mRemote.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Setting Name="UpdatePending" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultRDGatewayUsageMethod" Type="System.String" Scope="Application">
<Setting Name="ConDefaultRDGatewayUsageMethod" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">Never</Value>
</Setting>
<Setting Name="ConDefaultRDGatewayUseConnectionCredentials" Type="System.String" Scope="Application">
<Setting Name="ConDefaultRDGatewayUseConnectionCredentials" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">Yes</Value>
</Setting>
<Setting Name="ConDefaultIcon" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">mRemoteNG</Value>
</Setting>
<Setting Name="InhDefaultRDGatewayUsageMethod" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRDGatewayHostname" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRDGatewayUsername" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRDGatewayPassword" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRDGatewayDomain" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultRDGatewayUseConnectionCredentials" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="RdpReconnectionCount" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Int32" Scope="User">
<Value Profile="(Default)">5</Value>
</Setting>
<Setting Name="OverrideUICulture" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="SupportedUICultures" Type="System.String" Scope="Application">
<Value Profile="(Default)">de,en,en-US,fr</Value>
</Setting>
<Setting Name="ConDefaultRDGatewayHostname" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultRDGatewayUsername" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultRDGatewayPassword" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultRDGatewayDomain" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="ConDefaultEnableFontSmoothing" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultEnableFontSmoothing" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConDefaultEnableDesktopComposition" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="InhDefaultEnableDesktopComposition" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ConfirmCloseConnection" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="MainFormRestoreSize" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Size" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="MainFormRestoreLocation" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.Drawing.Point" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="SQLDatabaseName" Provider="mRemoteNG.Config.Settings.Providers.ChooseProvider" Type="System.String" Scope="User">
<Value Profile="(Default)">mRemoteNG</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -33,7 +33,7 @@ Binary and source code packages are available for download.
[[Getting Started]]
[Prerequisites]
WinXP; Vista -> x86
not tested on x64!
Win7 -> x86,x64
Terminal Services Client 6.0
Citrix Client for ICA (Registered wfica.ocx)

View File

@@ -4,26 +4,17 @@ How to build the portable package:
to Inherits PortableSettingsProvider
In App.Info.Settings:
change SettingsPath
from GetFolderPath(SpecialFolder.LocalApplicationData) & "\" & My.Application.Info.CompanyName.Replace(" ", "_") & "\" & My.Application.Info.ProductName
from GetFolderPath(SpecialFolder.ApplicationData) & "\" & My.Application.Info.CompanyName.Replace(" ", "_") & "\" & My.Application.Info.ProductName
to My.Application.Info.DirectoryPath
How to build the different language packages:
In Language.Base:
change Inherits Language.XX to the language of your choice
change the CurrentLanguage var to the same language
How to add a new language:
In Language.Base:
Add the language code to the Languages Enum
Create a new Language.XX class in the Language namespace
Copy all Constants from one of the existing language classes and replace the strings
Create a new Language.XX.resx file in the My Project folder
Localize PropertyGrid:
http://www.morganskinner.com/Articles/LocalizedPropertyGrid/
ToDo:
Attribute for roamin settings: "Global.System.Configuration.SettingsManageabilityAttribute(Configuration.SettingsManageability.Roaming), _"
Attribute for roaming settings: "Global.System.Configuration.SettingsManageabilityAttribute(Configuration.SettingsManageability.Roaming), _"
PuTTY Problem:
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=96485

View File

@@ -1 +1 @@
alle UI.Window.* -> ApplyLanguage
all UI.Window.* -> ApplyLanguage

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 824 B

View File

@@ -1,6 +1,6 @@
Imports System.Windows.Forms
Imports System.ComponentModel
Imports mRemote.Tools.Misc.PropertyGridCategory
Imports mRemoteNG.Tools.LocalizedAttributes
Namespace Root
<DefaultProperty("Name")> _
@@ -10,16 +10,16 @@ Namespace Root
End Sub
#Region "Properties"
Private _Name As String = "Connections"
<Category(Category1 & "Display"), _
Browsable(True), _
[ReadOnly](False), _
Bindable(False), _
DefaultValue(""), _
DesignOnly(False), _
DisplayName(Language.Base.Props_Name), _
Description("Enter a name"), _
Attributes.Root()> _
Private _Name As String = My.Resources.strConnections
<LocalizedCategory("strCategoryDisplay", 1), _
Browsable(True), _
[ReadOnly](False), _
Bindable(False), _
DefaultValue(""), _
DesignOnly(False), _
LocalizedDisplayName("strPropertyNameName"), _
LocalizedDescription("strPropertyDescriptionName"), _
Attributes.Root()> _
Public Property Name() As String
Get
Return Me._Name
@@ -30,15 +30,15 @@ Namespace Root
End Property
Private _Password As Boolean
<Category(Category1 & "Display"), _
<LocalizedCategory("strCategoryDisplay", 1), _
Browsable(True), _
[ReadOnly](False), _
Bindable(False), _
DefaultValue(""), _
DesignOnly(False), _
DisplayName(Language.Base.PasswordProtect), _
LocalizedDisplayName("strPasswordProtect"), _
Attributes.Root(), _
TypeConverter(GetType(mRemote.Tools.Misc.YesNoTypeConverter))> _
TypeConverter(GetType(mRemoteNG.Tools.Misc.YesNoTypeConverter))> _
Public Property Password() As Boolean
Get
Return _Password

View File

@@ -1,7 +1,7 @@
Imports System.IO
Imports System.Security.Cryptography
Imports System.Text
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace Security
Public Class Crypt

View File

@@ -1,7 +1,7 @@
Imports System.Runtime.InteropServices
Imports System.Security.Principal
Imports System.Security.Permissions
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
<Assembly: SecurityPermissionAttribute(SecurityAction.RequestMinimum, UnmanagedCode:=True), _
Assembly: PermissionSetAttribute(SecurityAction.RequestMinimum, Name:="FullTrust")>

View File

@@ -89,7 +89,7 @@ Partial Class ReconnectGroup
'
'pbServerStatus
'
Me.pbServerStatus.Image = Global.mRemote.My.Resources.Resources.HostStatus_Check
Me.pbServerStatus.Image = Global.mRemoteNG.My.Resources.Resources.HostStatus_Check
Me.pbServerStatus.Location = New System.Drawing.Point(99, 23)
Me.pbServerStatus.Name = "pbServerStatus"
Me.pbServerStatus.Size = New System.Drawing.Size(16, 16)

View File

@@ -84,9 +84,9 @@
End Sub
Private Sub ApplyLanguage()
grpAutomaticReconnect.Text = Language.Base.AutomaticReconnect
btnClose.Text = Language.Base.Button_Close
lblServerStatus.Text = Language.Base.ServerStatus
chkReconnectWhenReady.Text = Language.Base.ReconnectWhenReady
grpAutomaticReconnect.Text = My.Resources.strGroupboxAutomaticReconnect
btnClose.Text = My.Resources.strButtonClose
lblServerStatus.Text = My.Resources.strLabelServerStatus
chkReconnectWhenReady.Text = My.Resources.strCheckboxReconnectWhenReady
End Sub
End Class

View File

@@ -1,5 +1,5 @@
Imports System.Windows.Forms
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace Tools
Public Class Controls
@@ -63,13 +63,13 @@ Namespace Tools
Public Sub New()
Try
Me._cMenCons = New ToolStripMenuItem
Me._cMenCons.Text = Language.Base.Connections
Me._cMenCons.Text = My.Resources.strConnections
Me._cMenCons.Image = My.Resources.Root
Me._cMenSep1 = New ToolStripSeparator
Me._cMenExit = New ToolStripMenuItem
Me._cMenExit.Text = Language.Base.Menu_Exit
Me._cMenExit.Text = My.Resources.strMenuExit
AddHandler Me._cMenExit.Click, AddressOf cMenExit_Click
Me._cMen = New ContextMenuStrip
@@ -164,7 +164,7 @@ Namespace Tools
Private Sub ConMenItem_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs)
If e.Button = MouseButtons.Left Then
If TypeOf sender.Tag Is mRemote.Connection.Info Then
If TypeOf sender.Tag Is mRemoteNG.Connection.Info Then
If frmMain.Visible = False Then
ShowForm()
End If
@@ -178,8 +178,6 @@ Namespace Tools
End Sub
End Class
Public Shared Function ConnectionsSaveAsDialog() As SaveFileDialog
Dim sDlg As New SaveFileDialog()
sDlg.CheckPathExists = True
@@ -187,8 +185,7 @@ Namespace Tools
sDlg.FileName = App.Info.Connections.DefaultConnectionsFile
sDlg.OverwritePrompt = True
sDlg.Filter = "mRemote XML " & Language.Base.Files & " (*.xml)|*.xml|" & "mRemote CSV " & Language.Base.Files & " (*.csv)|*.csv|" & "vRD 2008 CSV " & Language.Base.Files & " (*.csv)|*.csv|" & Language.Base.All & " " & Language.Base.Files & " (*.*)|*.*"
sDlg.Filter = My.Resources.strFiltermRemoteXML & "|*.xml|" & My.Resources.strFiltermRemoteCSV & "|*.csv|" & My.Resources.strFiltervRD2008CSV & "|*.csv|" & My.Resources.strFilterAll & "|*.*"
Return sDlg
End Function
@@ -197,7 +194,7 @@ Namespace Tools
Dim lDlg As New OpenFileDialog()
lDlg.CheckFileExists = True
lDlg.InitialDirectory = App.Info.Connections.DefaultConnectionsPath
lDlg.Filter = "mRemote XML " & Language.Base.Files & " (*.xml)|*.xml|" & Language.Base.All & " " & Language.Base.Files & " (*.*)|*.*"
lDlg.Filter = My.Resources.strFiltermRemoteXML & "|*.xml|" & My.Resources.strFilterAll & "|*.*"
Return lDlg
End Function
@@ -206,14 +203,11 @@ Namespace Tools
Dim lDlg As New OpenFileDialog()
lDlg.CheckFileExists = True
'lDlg.InitialDirectory = App.Info.Connections.DefaultConnectionsPath
lDlg.Filter = "RDP " & Language.Base.Files & " (*.rdp)|*.rdp|" & Language.Base.All & " " & Language.Base.Files & " (*.*)|*.*"
lDlg.Filter = My.Resources.strFilterRDP & "|*.rdp|" & My.Resources.strFilterAll & "|*.*"
Return lDlg
End Function
Public Class TreeNodeSorter
Implements IComparer

View File

@@ -1,4 +1,4 @@
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.IO
Imports System.ComponentModel
@@ -103,16 +103,16 @@ Namespace Tools
_Arguments = Arguments
End Sub
' Start external app
Public Function Start(Optional ByVal ConnectionInfo As Connection.Info = Nothing) As Process
Try
If _TryIntegrate = True Then
StartIntApp(ConnectionInfo)
If _FileName = "" Then
Throw New Exception("No Filename specified!")
Return Nothing
End If
If _FileName = "" Then
Throw New Exception("No Filename specified!")
If _TryIntegrate = True Then
StartIntApp(ConnectionInfo)
Return Nothing
End If
@@ -139,20 +139,28 @@ Namespace Tools
End Try
End Function
' Start external app integrated
Public Sub StartIntApp(Optional ByVal ConnectionInfo As Connection.Info = Nothing)
Try
If _FileName = "" Then
Throw New Exception("No Filename specified!")
Exit Sub
End If
_ConnectionInfo = ConnectionInfo
Dim nCI As New Connection.Info
nCI.Protocol = Connection.Protocol.Protocols.IntApp
nCI.ExtApp = Me.DisplayName
nCI.Name = Me.DisplayName
nCI.Panel = "Int. Apps"
nCI.Hostname = _ConnectionInfo.Hostname
nCI.Port = _ConnectionInfo.Port
nCI.Username = _ConnectionInfo.Username
nCI.Password = _ConnectionInfo.Password
nCI.Domain = _ConnectionInfo.Domain
nCI.Description = _ConnectionInfo.Description
nCI.MacAddress = _ConnectionInfo.MacAddress
nCI.UserField = _ConnectionInfo.UserField
nCI.Description = _ConnectionInfo.Description
nCI.PreExtApp = _ConnectionInfo.PreExtApp
nCI.PostExtApp = _ConnectionInfo.PostExtApp
OpenConnection(nCI)
Catch ex As Exception

View File

@@ -0,0 +1,130 @@
Imports System.ComponentModel
Namespace Tools
Public Class LocalizedAttributes
<AttributeUsage(AttributeTargets.All, AllowMultiple:=False, Inherited:=True)> _
Public Class LocalizedCategoryAttribute
Inherits CategoryAttribute
Private Const MaxOrder As Integer = 10
Private Order As Integer
Public Sub New(ByVal value As String, Optional ByVal Order As Integer = 1)
MyBase.New(value)
If Order > LocalizedCategoryAttribute.MaxOrder Then
Me.Order = LocalizedCategoryAttribute.MaxOrder
Else
Me.Order = Order
End If
End Sub
Protected Overrides Function GetLocalizedString(ByVal value As String) As String
Dim OrderPrefix As String = ""
For x As Integer = 0 To LocalizedCategoryAttribute.MaxOrder - Me.Order
OrderPrefix &= vbTab
Next
Return OrderPrefix & My.Resources.ResourceManager.GetString(value)
End Function
End Class
<AttributeUsage(AttributeTargets.All, AllowMultiple:=False, Inherited:=True)> _
Public Class LocalizedDisplayNameAttribute
Inherits DisplayNameAttribute
Private Localized As Boolean
Public Sub New(ByVal value As String)
MyBase.New(value)
Me.Localized = False
End Sub
Public Overrides ReadOnly Property DisplayName() As String
Get
If Not Me.Localized Then
Me.Localized = True
Me.DisplayNameValue = My.Resources.ResourceManager.GetString(Me.DisplayNameValue)
End If
Return MyBase.DisplayName
End Get
End Property
End Class
<AttributeUsage(AttributeTargets.All, AllowMultiple:=False, Inherited:=True)> _
Public Class LocalizedDescriptionAttribute
Inherits DescriptionAttribute
Private Localized As Boolean
Public Sub New(ByVal value As String)
MyBase.New(value)
Me.Localized = False
End Sub
Public Overrides ReadOnly Property Description() As String
Get
If Not Me.Localized Then
Me.Localized = True
Me.DescriptionValue = My.Resources.ResourceManager.GetString(Me.DescriptionValue)
End If
Return MyBase.Description
End Get
End Property
End Class
#Region "Special localization - with String.Format"
<AttributeUsage(AttributeTargets.All, AllowMultiple:=False, Inherited:=True)> _
Public Class LocalizedDisplayNameInheritAttribute
Inherits DisplayNameAttribute
Private Localized As Boolean
Public Sub New(ByVal value As String)
MyBase.New(value)
Me.Localized = False
End Sub
Public Overrides ReadOnly Property DisplayName() As String
Get
If Not Me.Localized Then
Me.Localized = True
Me.DisplayNameValue = String.Format(My.Resources.strFormatInherit, My.Resources.ResourceManager.GetString(Me.DisplayNameValue))
End If
Return MyBase.DisplayName
End Get
End Property
End Class
<AttributeUsage(AttributeTargets.All, AllowMultiple:=False, Inherited:=True)> _
Public Class LocalizedDescriptionInheritAttribute
Inherits DescriptionAttribute
Private Localized As Boolean
Public Sub New(ByVal value As String)
MyBase.New(value)
Me.Localized = False
End Sub
Public Overrides ReadOnly Property Description() As String
Get
If Not Me.Localized Then
Me.Localized = True
Me.DescriptionValue = String.Format(My.Resources.strFormatInheritDescription, My.Resources.ResourceManager.GetString(Me.DescriptionValue))
End If
Return MyBase.Description
End Get
End Property
End Class
#End Region
End Class
End Namespace

View File

@@ -1,10 +1,9 @@
Imports System.Reflection
Imports System.ComponentModel
Imports System.Drawing.Design
Imports System.Runtime.InteropServices
Imports System.Collections.Specialized
Imports System.Text.RegularExpressions
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.IO
Imports System.Data.SqlClient
@@ -72,13 +71,12 @@ Namespace Tools
Dim sqlQuery As SqlCommand
Dim sqlRd As SqlDataReader
Dim sqlDB As String = "mRemote"
Dim LastUpdateInDB As Date
If My.Settings.SQLUser <> "" Then
sqlCon = New SqlConnection("Data Source=" & My.Settings.SQLHost & ";Initial Catalog=" & sqlDB & ";User Id=" & My.Settings.SQLUser & ";Password=" & Security.Crypt.Decrypt(My.Settings.SQLPass, App.Info.General.EncryptionKey))
sqlCon = New SqlConnection("Data Source=" & My.Settings.SQLHost & ";Initial Catalog=" & My.Settings.SQLDatabaseName & ";User Id=" & My.Settings.SQLUser & ";Password=" & Security.Crypt.Decrypt(My.Settings.SQLPass, App.Info.General.EncryptionKey))
Else
sqlCon = New SqlConnection("Data Source=" & My.Settings.SQLHost & ";Initial Catalog=" & sqlDB & ";Integrated Security=True")
sqlCon = New SqlConnection("Data Source=" & My.Settings.SQLHost & ";Initial Catalog=" & My.Settings.SQLDatabaseName & ";Integrated Security=True")
End If
sqlCon.Open()
@@ -200,26 +198,6 @@ Namespace Tools
Return Nothing
End Function
Public Class PropertyGridCategory
Public Const Category1 As String = vbCr & vbCr & vbCr & vbCr & vbCr & vbCr & vbCr & vbCr
Public Const Category2 As String = vbCr & vbCr & vbCr & vbCr & vbCr & vbCr & vbCr
Public Const Category3 As String = vbCr & vbCr & vbCr & vbCr & vbCr & vbCr
Public Const Category4 As String = vbCr & vbCr & vbCr & vbCr & vbCr
Public Const Category5 As String = vbCr & vbCr & vbCr & vbCr
Public Const Category6 As String = vbCr & vbCr & vbCr
Public Const Category7 As String = vbCr & vbCr
Public Const Category8 As String = vbCr
End Class
Public Class PropertyGridValue
Public Const Value1 As String = vbCr & vbCr & vbCr & vbCr & vbCr & vbCr
Public Const Value2 As String = vbCr & vbCr & vbCr & vbCr & vbCr
Public Const Value3 As String = vbCr & vbCr & vbCr & vbCr
Public Const Value4 As String = vbCr & vbCr & vbCr
Public Const Value5 As String = vbCr & vbCr
Public Const Value6 As String = vbCr
End Class
Public Class EnumTypeConverter
Inherits EnumConverter
Private _enumType As System.Type
@@ -282,11 +260,11 @@ Namespace Tools
Public Overloads Overrides Function ConvertFrom(ByVal context As ITypeDescriptorContext, ByVal culture As System.Globalization.CultureInfo, ByVal value As Object) As Object
If value.GetType() Is GetType(String) Then
If CStr(value).ToLower() = Language.Base.Yes.ToLower Then
If CStr(value).ToLower() = My.Resources.strYes.ToLower Then
Return True
End If
If CStr(value).ToLower() = Language.Base.No.ToLower Then
If CStr(value).ToLower() = My.Resources.strNo.ToLower Then
Return False
End If
@@ -298,7 +276,7 @@ Namespace Tools
Public Overloads Overrides Function ConvertTo(ByVal context As ITypeDescriptorContext, ByVal culture As System.Globalization.CultureInfo, ByVal value As Object, ByVal destinationType As Type) As Object
If destinationType Is GetType(String) Then
Return IIf(CBool(value), Language.Base.Yes, Language.Base.No)
Return IIf(CBool(value), My.Resources.strYes, My.Resources.strNo)
End If
Return MyBase.ConvertTo(context, culture, value, destinationType)

View File

@@ -1,5 +1,5 @@
Imports System.Threading
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.Net.NetworkInformation
Namespace Tools
@@ -271,9 +271,9 @@ Namespace Tools
Private Function BoolToYesNo(ByVal Bool As Boolean) As String
If Bool = True Then
Return Language.Base.Yes
Return My.Resources.strYes
Else
Return Language.Base.No
Return My.Resources.strNo
End If
End Function

View File

@@ -0,0 +1,120 @@
Imports System.Runtime.InteropServices
Namespace Tools
Public Class WindowPlacement
#Region "Windows API"
#Region "Functions"
Private Declare Function GetWindowPlacement Lib "user32" (ByVal hWnd As System.IntPtr, ByRef lpwndpl As WINDOWPLACEMENT) As Boolean
Private Declare Function SetWindowPlacement Lib "user32" (ByVal hWnd As System.IntPtr, ByRef lpwndpl As WINDOWPLACEMENT) As Boolean
#End Region
#Region "Structures"
Private Structure WINDOWPLACEMENT
Public length As UInteger
Public flags As UInteger
Public showCmd As UInteger
Public ptMinPosition As POINT
Public ptMaxPosition As POINT
Public rcNormalPosition As RECT
End Structure
Private Structure POINT
Public x As Long
Public y As Long
End Structure
Private Structure RECT
Public left As Long
Public top As Long
Public right As Long
Public bottom As Long
End Structure
#End Region
#Region "Constants"
' WINDOWPLACEMENT.flags values
Private Const WPF_SETMINPOSITION As UInteger = &H1
Private Const WPF_RESTORETOMAXIMIZED As UInteger = &H2
Private Const WPF_ASYNCWINDOWPLACEMENT As UInteger = &H4
' WINDOWPLACEMENT.showCmd values
Private Const SW_HIDE As UInteger = 0
Private Const SW_SHOWNORMAL As UInteger = 1
Private Const SW_SHOWMINIMIZED As UInteger = 2
Private Const SW_SHOWMAXIMIZED As UInteger = 3
Private Const SW_MAXIMIZE As UInteger = 3
Private Const SW_SHOWNOACTIVATE As UInteger = 4
Private Const SW_SHOW As UInteger = 5
Private Const SW_MINIMIZE As UInteger = 6
Private Const SW_SHOWMINNOACTIVE As UInteger = 7
Private Const SW_SHOWNA As UInteger = 8
Private Const SW_RESTORE As UInteger = 9
#End Region
#End Region
#Region "Private Variables"
Private _form As Windows.Forms.Form
#End Region
#Region "Constructors/Destructors"
Public Sub New(ByRef form As Windows.Forms.Form)
_form = form
End Sub
#End Region
#Region "Public Properties"
Public Property Form() As Windows.Forms.Form
Get
Return _form
End Get
Set(ByVal value As Windows.Forms.Form)
_form = value
End Set
End Property
Public Property RestoreToMaximized() As Boolean
Get
Dim windowPlacement As WINDOWPLACEMENT = GetWindowPlacement()
Return windowPlacement.flags And WPF_RESTORETOMAXIMIZED
End Get
Set(ByVal value As Boolean)
Dim windowPlacement As WINDOWPLACEMENT = GetWindowPlacement()
If value Then
windowPlacement.flags = windowPlacement.flags Or WPF_RESTORETOMAXIMIZED
Else
windowPlacement.flags = windowPlacement.flags And Not WPF_RESTORETOMAXIMIZED
End If
SetWindowPlacement(windowPlacement)
End Set
End Property
#End Region
#Region "Private Functions"
Private Function GetWindowPlacement() As WINDOWPLACEMENT
If _form Is Nothing Then
Throw New System.NullReferenceException("WindowPlacement.Form is not set.")
End If
Dim windowPlacement As WINDOWPLACEMENT
windowPlacement.length = Marshal.SizeOf(windowPlacement)
Try
GetWindowPlacement(_form.Handle, windowPlacement)
Return windowPlacement
Catch ex As Exception
Throw ex
End Try
End Function
Private Function SetWindowPlacement(ByVal windowPlacement As WINDOWPLACEMENT) As Boolean
If _form Is Nothing Then
Throw New System.NullReferenceException("WindowPlacement.Form is not set.")
End If
windowPlacement.length = Marshal.SizeOf(windowPlacement)
Try
Return SetWindowPlacement(_form.Handle, windowPlacement)
Catch ex As Exception
Throw ex
End Try
End Function
#End Region
End Class
End Namespace

View File

@@ -1,5 +1,5 @@
Imports System.Windows.Forms
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.DirectoryServices
Namespace Tree
@@ -46,9 +46,9 @@ Namespace Tree
Public Shared Function GetConstantID(ByVal node As TreeNode) As String
Select Case GetNodeType(node)
Case Type.Connection
Return TryCast(node.Tag, mRemote.Connection.Info).ConstantID
Return TryCast(node.Tag, mRemoteNG.Connection.Info).ConstantID
Case Type.Container
Return TryCast(node.Tag, mRemote.Container.Info).ConnectionInfo.ConstantID
Return TryCast(node.Tag, mRemoteNG.Container.Info).ConnectionInfo.ConstantID
End Select
Return Nothing
@@ -181,33 +181,28 @@ Namespace Tree
Public Shared Function AddNode(ByVal NodeType As Tree.Node.Type, Optional ByVal Text As String = "") As TreeNode
Try
If SelectedNode IsNot Nothing Then
If Tree.Node.GetNodeType(SelectedNode) = Type.Container Or Tree.Node.GetNodeType(SelectedNode) = Type.Root Then
Dim nNode As New TreeNode
nNode.Text = Language.Base.New_ & " "
Dim nNode As New TreeNode
Select Case NodeType
Case Type.Connection
nNode.Text &= Language.Base.Connection
nNode.ImageIndex = Images.Enums.TreeImage.ConnectionClosed
nNode.SelectedImageIndex = Images.Enums.TreeImage.ConnectionClosed
Case Type.Container
nNode.Text &= Language.Base.Folder
nNode.ImageIndex = Images.Enums.TreeImage.Container
nNode.SelectedImageIndex = Images.Enums.TreeImage.Container
Case Type.Root
nNode.Text &= Language.Base.Root
nNode.ImageIndex = Images.Enums.TreeImage.Root
nNode.SelectedImageIndex = Images.Enums.TreeImage.Root
End Select
Select Case NodeType
Case Type.Connection
nNode.Text = My.Resources.strNewConnection
nNode.ImageIndex = Images.Enums.TreeImage.ConnectionClosed
nNode.SelectedImageIndex = Images.Enums.TreeImage.ConnectionClosed
Case Type.Container
nNode.Text = My.Resources.strNewFolder
nNode.ImageIndex = Images.Enums.TreeImage.Container
nNode.SelectedImageIndex = Images.Enums.TreeImage.Container
Case Type.Root
nNode.Text = My.Resources.strNewRoot
nNode.ImageIndex = Images.Enums.TreeImage.Root
nNode.SelectedImageIndex = Images.Enums.TreeImage.Root
End Select
If Text <> "" Then
nNode.Text = Text
End If
Return nNode
End If
If Text <> "" Then
nNode.Text = Text
End If
Return nNode
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "AddNode failed" & vbNewLine & ex.Message, True)
End Try
@@ -219,9 +214,9 @@ Namespace Tree
Try
Dim adCNode As TreeNode = Tree.Node.AddNode(Type.Container)
Dim nContI As New mRemote.Container.Info()
Dim nContI As New mRemoteNG.Container.Info()
nContI.TreeNode = adCNode
nContI.ConnectionInfo = New mRemote.Connection.Info(nContI)
nContI.ConnectionInfo = New mRemoteNG.Connection.Info(nContI)
If Tree.Node.SelectedNode IsNot Nothing Then
If Tree.Node.GetNodeType(Tree.Node.SelectedNode) = Tree.Node.Type.Container Then
@@ -279,10 +274,10 @@ Namespace Tree
Dim adNode As TreeNode = Tree.Node.AddNode(Type.Connection, strDisplayName)
Dim nConI As New mRemote.Connection.Info()
Dim nInh As New mRemote.Connection.Info.Inheritance(nConI, True)
Dim nConI As New mRemoteNG.Connection.Info()
Dim nInh As New mRemoteNG.Connection.Info.Inheritance(nConI, True)
nInh.Description = False
If TypeOf rNode.Tag Is mRemote.Container.Info Then
If TypeOf rNode.Tag Is mRemoteNG.Container.Info Then
nConI.Parent = rNode.Tag
End If
nConI.Inherit = nInh
@@ -308,6 +303,7 @@ Namespace Tree
Dim nConI As Connection.Info = conI.Copy
Dim nInh As Connection.Info.Inheritance = conI.Inherit.Copy()
nInh.Parent = nConI
nConI.Inherit = nInh
cL.Add(nConI)
@@ -348,7 +344,7 @@ Namespace Tree
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.WarningMsg, "CloneNode failed (Tree.Node)" & vbNewLine & ex.Message)
End Try
End Try
End Sub
Public Shared Sub SetNodeImage(ByVal treeNode As TreeNode, ByVal Img As Images.Enums.TreeImage)
@@ -381,7 +377,7 @@ Namespace Tree
Else
'Get this node's object data.
If GetNodeType(old_node) = Type.Connection Then
tTip.SetToolTip(_TreeView, TryCast(old_node.Tag, mRemote.Connection.Info).Description)
tTip.SetToolTip(_TreeView, TryCast(old_node.Tag, mRemoteNG.Connection.Info).Description)
End If
End If
End If
@@ -393,23 +389,31 @@ Namespace Tree
Public Shared Sub DeleteSelectedNode()
Try
If SelectedNode IsNot Nothing Then
If MsgBox(Language.Base.SureToDeleteItem, MsgBoxStyle.YesNo Or MsgBoxStyle.Question) = MsgBoxResult.Yes Then
If Tree.Node.GetNodeType(SelectedNode) <> Type.Root Then 'root cannot be removed
If Tree.Node.IsEmpty(SelectedNode) = False Then 'remove single node
SelectedNode.Remove()
Else 'remove parent and sub nodes
For Each tNode As TreeNode In SelectedNode.Nodes
tNode.Remove()
Next
If SelectedNode Is Nothing Then Return
Select Case Tree.Node.GetNodeType(SelectedNode)
Case Type.Root
mC.AddMessage(Messages.MessageClass.WarningMsg, "The root item cannot be deleted!")
Case Type.Container
If Tree.Node.IsEmpty(SelectedNode) = False Then
If MsgBox(String.Format(My.Resources.strConfirmDeleteNodeFolder, SelectedNode.Text), MsgBoxStyle.YesNo Or MsgBoxStyle.Question) = MsgBoxResult.Yes Then
SelectedNode.Remove()
End If
Else
mC.AddMessage(Messages.MessageClass.WarningMsg, "The Root Item cannot be deleted!")
If MsgBox(String.Format(My.Resources.strConfirmDeleteNodeFolderNotEmpty, SelectedNode.Text), MsgBoxStyle.YesNo Or MsgBoxStyle.Question) = MsgBoxResult.Yes Then
For Each tNode As TreeNode In SelectedNode.Nodes
tNode.Remove()
Next
SelectedNode.Remove()
End If
End If
End If
End If
Case Type.Connection
If MsgBox(String.Format(My.Resources.strConfirmDeleteNodeConnection, SelectedNode.Text), MsgBoxStyle.YesNo Or MsgBoxStyle.Question) = MsgBoxResult.Yes Then
SelectedNode.Remove()
End If
Case Else
mC.AddMessage(Messages.MessageClass.WarningMsg, "Tree item type is unknown so it cannot be deleted!")
End Select
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Deleting selected node failed" & vbNewLine & ex.Message, True)
End Try
@@ -476,13 +480,20 @@ Namespace Tree
Public Shared Sub Sort(ByVal treeNode As TreeNode, ByVal sortType As Tools.Controls.TreeNodeSorter.SortType)
Try
If Tree.Node.GetNodeType(treeNode) <> Type.Connection Then
Dim ns As New Tools.Controls.TreeNodeSorter(treeNode, sortType)
_TreeView.TreeViewNodeSorter = ns
_TreeView.Sort()
_TreeView.Sorted = False
If treeNode Is Nothing Then
treeNode = _TreeView.Nodes.Item(0)
ElseIf Tree.Node.GetNodeType(treeNode) = Type.Connection Then
treeNode = treeNode.Parent
End If
Dim ns As New Tools.Controls.TreeNodeSorter(treeNode, sortType)
_TreeView.TreeViewNodeSorter = ns
_TreeView.Sort()
For Each childNode As TreeNode In treeNode.Nodes
If GetNodeType(childNode) = Type.Container Then Sort(childNode, sortType)
Next
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "Sort nodes failed" & vbNewLine & ex.Message, True)
End Try
@@ -496,7 +507,7 @@ Namespace Tree
Else
_TreeView.Nodes.Clear()
'_TreeView.Nodes.Add("Credentials")
_TreeView.Nodes.Add(Language.Base.Connections)
_TreeView.Nodes.Add(My.Resources.strConnections)
End If
End Sub

View File

@@ -12,7 +12,6 @@ Namespace UI
Friend WithEvents lblDomain As System.Windows.Forms.Label
Friend WithEvents btnChangeDomain As System.Windows.Forms.Button
Friend WithEvents AD As ADTree.ADtree
Friend WithEvents Label2 As System.Windows.Forms.Label
Private Sub InitializeComponent()
Me.btnOK = New System.Windows.Forms.Button
@@ -20,7 +19,6 @@ Namespace UI
Me.txtDomain = New System.Windows.Forms.TextBox
Me.lblDomain = New System.Windows.Forms.Label
Me.btnChangeDomain = New System.Windows.Forms.Button
Me.Label2 = New System.Windows.Forms.Label
Me.AD = New ADTree.ADtree
Me.SuspendLayout()
'
@@ -32,7 +30,7 @@ Namespace UI
Me.btnOK.Name = "btnOK"
Me.btnOK.Size = New System.Drawing.Size(75, 23)
Me.btnOK.TabIndex = 100
Me.btnOK.Text = Language.Base.Button_OK
Me.btnOK.Text = Global.mRemoteNG.My.Resources.Resources.strButtonOK
Me.btnOK.UseVisualStyleBackColor = True
'
'btnCancel
@@ -44,7 +42,7 @@ Namespace UI
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(75, 23)
Me.btnCancel.TabIndex = 110
Me.btnCancel.Text = Language.Base.Button_Cancel
Me.btnCancel.Text = Global.mRemoteNG.My.Resources.Resources.strButtonCancel
Me.btnCancel.UseVisualStyleBackColor = True
'
'txtDomain
@@ -64,7 +62,7 @@ Namespace UI
Me.lblDomain.Name = "lblDomain"
Me.lblDomain.Size = New System.Drawing.Size(46, 13)
Me.lblDomain.TabIndex = 20
Me.lblDomain.Text = Language.Base.Props_Domain & ":"
Me.lblDomain.Text = "Domain:"
'
'btnChangeDomain
'
@@ -74,26 +72,19 @@ Namespace UI
Me.btnChangeDomain.Name = "btnChangeDomain"
Me.btnChangeDomain.Size = New System.Drawing.Size(75, 23)
Me.btnChangeDomain.TabIndex = 40
Me.btnChangeDomain.Text = Language.Base.Change
Me.btnChangeDomain.Text = Global.mRemoteNG.My.Resources.Resources.strButtonChange
Me.btnChangeDomain.UseVisualStyleBackColor = True
'
'Label2
'
Me.Label2.AutoSize = True
Me.Label2.Location = New System.Drawing.Point(-190, 349)
Me.Label2.Name = "Label2"
Me.Label2.Size = New System.Drawing.Size(44, 13)
Me.Label2.TabIndex = 3
Me.Label2.Text = Language.Base.Change
'
'AD
'
Me.AD.ADPath = Nothing
Me.AD.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.AD.Domain = ""
Me.AD.Domain = "akane"
Me.AD.Location = New System.Drawing.Point(0, 0)
Me.AD.Name = "AD"
Me.AD.SelectedNode = Nothing
Me.AD.Size = New System.Drawing.Size(530, 341)
Me.AD.TabIndex = 10
'
@@ -103,13 +94,13 @@ Namespace UI
Me.CancelButton = Me.btnCancel
Me.ClientSize = New System.Drawing.Size(530, 373)
Me.Controls.Add(Me.AD)
Me.Controls.Add(Me.Label2)
Me.Controls.Add(Me.lblDomain)
Me.Controls.Add(Me.txtDomain)
Me.Controls.Add(Me.btnChangeDomain)
Me.Controls.Add(Me.btnCancel)
Me.Controls.Add(Me.btnOK)
Me.Icon = Global.mRemote.My.Resources.Resources.ActiveDirectory_Icon
Me.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Icon = Global.mRemoteNG.My.Resources.Resources.ActiveDirectory_Icon
Me.Name = "ADImport"
Me.TabText = "Active Directory Import"
Me.Text = "Active Directory Import"
@@ -133,11 +124,10 @@ Namespace UI
End Sub
Private Sub ApplyLanguage()
btnOK.Text = Language.Base.Button_OK
btnCancel.Text = Language.Base.Button_Cancel
lblDomain.Text = Language.Base.Props_Domain & ":"
btnChangeDomain.Text = Language.Base.Change
Label2.Text = Language.Base.Change
btnOK.Text = My.Resources.strButtonOK
btnCancel.Text = My.Resources.strButtonCancel
lblDomain.Text = My.Resources.strLabelDomain
btnChangeDomain.Text = My.Resources.strButtonChange
End Sub
#End Region
@@ -155,7 +145,7 @@ Namespace UI
Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click
Me._ADPath = Me.AD.ADPath
mRemote.Tree.Node.AddADNodes(Me._ADPath)
mRemoteNG.Tree.Node.AddADNodes(Me._ADPath)
Me.DialogResult = Windows.Forms.DialogResult.OK
Me.Close()
End Sub

View File

@@ -1,6 +1,6 @@
Imports WeifenLuo.WinFormsUI.Docking
Imports System.IO
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Namespace UI
Namespace Window
@@ -19,6 +19,7 @@ Namespace UI
Friend WithEvents lblEdition As System.Windows.Forms.Label
Friend WithEvents llblFAMFAMFAM As System.Windows.Forms.LinkLabel
Friend WithEvents llblMagicLibrary As System.Windows.Forms.LinkLabel
Friend WithEvents llblWeifenLuo As System.Windows.Forms.LinkLabel
Friend WithEvents pnlTop As System.Windows.Forms.Panel
Private Sub InitializeComponent()
@@ -26,6 +27,7 @@ Namespace UI
Me.lblEdition = New System.Windows.Forms.Label
Me.pbLogo = New System.Windows.Forms.PictureBox
Me.pnlBottom = New System.Windows.Forms.Panel
Me.llblWeifenLuo = New System.Windows.Forms.LinkLabel
Me.llblMagicLibrary = New System.Windows.Forms.LinkLabel
Me.llblFAMFAMFAM = New System.Windows.Forms.LinkLabel
Me.txtChangeLog = New System.Windows.Forms.TextBox
@@ -68,7 +70,7 @@ Namespace UI
'
'pbLogo
'
Me.pbLogo.Image = Global.mRemote.My.Resources.Resources.Logo
Me.pbLogo.Image = Global.mRemoteNG.My.Resources.Resources.Logo
Me.pbLogo.Location = New System.Drawing.Point(8, 8)
Me.pbLogo.Name = "pbLogo"
Me.pbLogo.Size = New System.Drawing.Size(492, 128)
@@ -82,6 +84,7 @@ Namespace UI
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.pnlBottom.BackColor = System.Drawing.SystemColors.Control
Me.pnlBottom.Controls.Add(Me.llblWeifenLuo)
Me.pnlBottom.Controls.Add(Me.llblMagicLibrary)
Me.pnlBottom.Controls.Add(Me.llblFAMFAMFAM)
Me.pnlBottom.Controls.Add(Me.txtChangeLog)
@@ -96,6 +99,20 @@ Namespace UI
Me.pnlBottom.Size = New System.Drawing.Size(788, 418)
Me.pnlBottom.TabIndex = 1
'
'llblWeifenLuo
'
Me.llblWeifenLuo.AutoSize = True
Me.llblWeifenLuo.Font = New System.Drawing.Font("Microsoft Sans Serif", 11.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.llblWeifenLuo.ForeColor = System.Drawing.SystemColors.ControlText
Me.llblWeifenLuo.LinkColor = System.Drawing.Color.Blue
Me.llblWeifenLuo.Location = New System.Drawing.Point(16, 158)
Me.llblWeifenLuo.Name = "llblWeifenLuo"
Me.llblWeifenLuo.Size = New System.Drawing.Size(78, 22)
Me.llblWeifenLuo.TabIndex = 9
Me.llblWeifenLuo.TabStop = True
Me.llblWeifenLuo.Text = "WeifenLuo"
Me.llblWeifenLuo.UseCompatibleTextRendering = True
'
'llblMagicLibrary
'
Me.llblMagicLibrary.AutoSize = True
@@ -134,12 +151,12 @@ Namespace UI
Me.txtChangeLog.Cursor = System.Windows.Forms.Cursors.Default
Me.txtChangeLog.Font = New System.Drawing.Font("Microsoft Sans Serif", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtChangeLog.ForeColor = System.Drawing.SystemColors.ControlText
Me.txtChangeLog.Location = New System.Drawing.Point(24, 200)
Me.txtChangeLog.Location = New System.Drawing.Point(24, 224)
Me.txtChangeLog.Multiline = True
Me.txtChangeLog.Name = "txtChangeLog"
Me.txtChangeLog.ReadOnly = True
Me.txtChangeLog.ScrollBars = System.Windows.Forms.ScrollBars.Vertical
Me.txtChangeLog.Size = New System.Drawing.Size(760, 216)
Me.txtChangeLog.Size = New System.Drawing.Size(760, 192)
Me.txtChangeLog.TabIndex = 7
Me.txtChangeLog.TabStop = False
'
@@ -172,7 +189,7 @@ Namespace UI
Me.lblChangeLog.AutoSize = True
Me.lblChangeLog.Font = New System.Drawing.Font("Microsoft Sans Serif", 11.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblChangeLog.ForeColor = System.Drawing.SystemColors.ControlText
Me.lblChangeLog.Location = New System.Drawing.Point(16, 176)
Me.lblChangeLog.Location = New System.Drawing.Point(16, 199)
Me.lblChangeLog.Name = "lblChangeLog"
Me.lblChangeLog.Size = New System.Drawing.Size(92, 22)
Me.lblChangeLog.TabIndex = 6
@@ -211,7 +228,7 @@ Namespace UI
Me.Controls.Add(Me.pnlBottom)
Me.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.ForeColor = System.Drawing.SystemColors.ControlText
Me.Icon = Global.mRemote.My.Resources.Resources.mRemote_Icon
Me.Icon = Global.mRemoteNG.My.Resources.Resources.mRemote_Icon
Me.MaximumSize = New System.Drawing.Size(20000, 10000)
Me.Name = "About"
Me.TabText = "About"
@@ -237,15 +254,15 @@ Namespace UI
#Region "Private Methods"
Private Sub ApplyLanguage()
lblLicense.Text = My.Resources.strReleasedUnderGPL
lblChangeLog.Text = My.Resources.strChangeLogLabel
lblLicense.Text = My.Resources.strLabelReleasedUnderGPL
lblChangeLog.Text = My.Resources.strLabelChangeLog
TabText = My.Resources.strAbout
Text = My.Resources.strAbout
End Sub
Private Sub ApplyEditions()
#If PORTABLE Then
lblEdition.Text = My.Resources.strPortableEdition
lblEdition.Text = My.Resources.strLabelPortableEdition
lblEdition.Visible = True
#Else
If App.Editions.Spanlink.Enabled Then
@@ -281,10 +298,11 @@ Namespace UI
Try
lblCopyright.Text = My.Application.Info.Copyright
Me.lblVersion.Text = "Version " & My.Application.Info.Version.Major & "." & My.Application.Info.Version.Minor
Me.lblVersion.Text = "Version " & My.Application.Info.Version.ToString
FillLinkLabel(llblFAMFAMFAM, My.Resources.strFAMFAMFAMAttribution, My.Resources.strFAMFAMFAMAttributionURL)
FillLinkLabel(llblMagicLibrary, My.Resources.strMagicLibraryAttribution, My.Resources.strMagicLibraryAttributionURL)
FillLinkLabel(llblWeifenLuo, My.Resources.strWeifenLuoAttribution, My.Resources.strWeifenLuoAttributionURL)
If File.Exists(My.Application.Info.DirectoryPath & "\CHANGELOG.TXT") Then
Dim sR As New StreamReader(My.Application.Info.DirectoryPath & "\CHANGELOG.TXT")
@@ -303,6 +321,10 @@ Namespace UI
Private Sub llblMagicLibrary_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles llblMagicLibrary.LinkClicked
App.Runtime.GoToURL(My.Resources.strMagicLibraryAttributionURL)
End Sub
Private Sub llblWeifenLuo_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles llblWeifenLuo.LinkClicked
App.Runtime.GoToURL(My.Resources.strWeifenLuoAttributionURL)
End Sub
#End Region
End Class
End Namespace

View File

@@ -1,5 +1,5 @@
Imports WeifenLuo.WinFormsUI.Docking
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.Threading
Namespace UI

View File

@@ -1,4 +1,3 @@
Imports System.Windows.Forms
Imports WeifenLuo.WinFormsUI.Docking
Namespace UI

View File

@@ -1,6 +1,6 @@
Imports WeifenLuo.WinFormsUI.Docking
Imports System.IO
Imports mRemote.App.Runtime
Imports mRemoteNG.App.Runtime
Imports System.Threading
Namespace UI
@@ -415,7 +415,7 @@ Namespace UI
Me.Controls.Add(Me.pnlChecks)
Me.Controls.Add(Me.chkAlwaysShow)
Me.Controls.Add(Me.btnCheckAgain)
Me.Icon = Global.mRemote.My.Resources.Resources.ComponentsCheck_Icon
Me.Icon = Global.mRemoteNG.My.Resources.Resources.ComponentsCheck_Icon
Me.Name = "ComponentsCheck"
Me.TabText = "Components Check"
Me.Text = "Components Check"
@@ -461,10 +461,10 @@ Namespace UI
End Sub
Private Sub ApplyLanguage()
TabText = Language.Base.ComponentsCheck
Text = Language.Base.ComponentsCheck
chkAlwaysShow.Text = Language.Base.CcAlwaysShowScreen
btnCheckAgain.Text = Language.Base.CcCheckAgain
TabText = My.Resources.strComponentsCheck
Text = My.Resources.strComponentsCheck
chkAlwaysShow.Text = My.Resources.strCcAlwaysShowScreen
btnCheckAgain.Text = My.Resources.strCcCheckAgain
End Sub
Private Sub btnCheckAgain_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCheckAgain.Click
@@ -479,7 +479,7 @@ Namespace UI
#Region "Private Methods"
Private Sub CheckComponents()
Dim errorMsg As String = Language.Base.CcNotInstalledProperly
Dim errorMsg As String = My.Resources.strCcNotInstalledProperly
pnlCheck1.Visible = True
pnlCheck2.Visible = True
@@ -502,13 +502,13 @@ Namespace UI
pbCheck1.Image = My.Resources.Good_Symbol
lblCheck1.ForeColor = Color.DarkOliveGreen
lblCheck1.Text = "RDP (Remote Desktop) " & Language.Base.CcCheckSucceeded
txtCheck1.Text = String.Format(Language.Base.CcRDPOK, RDP.Version)
lblCheck1.Text = "RDP (Remote Desktop) " & My.Resources.strCcCheckSucceeded
txtCheck1.Text = String.Format(My.Resources.strCcRDPOK, RDP.Version)
Catch ex As Exception
pbCheck1.Image = My.Resources.Bad_Symbol
lblCheck1.ForeColor = Color.Firebrick
lblCheck1.Text = "RDP (Remote Desktop) " & Language.Base.CcCheckFailed
txtCheck1.Text = Language.Base.CcRDPFailed
lblCheck1.Text = "RDP (Remote Desktop) " & My.Resources.strCcCheckFailed
txtCheck1.Text = My.Resources.strCcRDPFailed
mC.AddMessage(Messages.MessageClass.WarningMsg, "RDP " & errorMsg, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, ex.Message, True)
@@ -530,13 +530,13 @@ Namespace UI
pbCheck2.Image = My.Resources.Good_Symbol
lblCheck2.ForeColor = Color.DarkOliveGreen
lblCheck2.Text = "VNC (Virtual Network Computing) " & Language.Base.CcCheckSucceeded
txtCheck2.Text = String.Format(Language.Base.CcVNCOK, VNC.ProductVersion)
lblCheck2.Text = "VNC (Virtual Network Computing) " & My.Resources.strCcCheckSucceeded
txtCheck2.Text = String.Format(My.Resources.strCcVNCOK, VNC.ProductVersion)
Catch ex As Exception
pbCheck2.Image = My.Resources.Bad_Symbol
lblCheck2.ForeColor = Color.Firebrick
lblCheck2.Text = "VNC (Virtual Network Computing) " & Language.Base.CcCheckFailed
txtCheck2.Text = Language.Base.CcVNCFailed
lblCheck2.Text = "VNC (Virtual Network Computing) " & My.Resources.strCcCheckFailed
txtCheck2.Text = My.Resources.strCcVNCFailed
mC.AddMessage(Messages.MessageClass.WarningMsg, "VNC " & errorMsg, True)
'mC.AddMessage(Messages.MessageClass.ErrorMsg, ex.Message, True)
@@ -555,13 +555,13 @@ Namespace UI
If File.Exists(pPath) Then
pbCheck3.Image = My.Resources.Good_Symbol
lblCheck3.ForeColor = Color.DarkOliveGreen
lblCheck3.Text = "PuTTY (SSH/Telnet/Rlogin/RAW) " & Language.Base.CcCheckSucceeded
txtCheck3.Text = Language.Base.CcPuttyOK
lblCheck3.Text = "PuTTY (SSH/Telnet/Rlogin/RAW) " & My.Resources.strCcCheckSucceeded
txtCheck3.Text = My.Resources.strCcPuttyOK
Else
pbCheck3.Image = My.Resources.Bad_Symbol
lblCheck3.ForeColor = Color.Firebrick
lblCheck3.Text = "PuTTY (SSH/Telnet/Rlogin/RAW) " & Language.Base.CcCheckFailed
txtCheck3.Text = Language.Base.CcPuttyFailed
lblCheck3.Text = "PuTTY (SSH/Telnet/Rlogin/RAW) " & My.Resources.strCcCheckFailed
txtCheck3.Text = My.Resources.strCcPuttyFailed
mC.AddMessage(Messages.MessageClass.WarningMsg, "PuTTY " & errorMsg, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, "File " & pPath & " does not exist.", True)
@@ -582,13 +582,13 @@ Namespace UI
pbCheck4.Image = My.Resources.Good_Symbol
lblCheck4.ForeColor = Color.DarkOliveGreen
lblCheck4.Text = "ICA (Citrix ICA) " & Language.Base.CcCheckSucceeded
txtCheck4.Text = String.Format(Language.Base.CcICAOK, ICA.Version)
lblCheck4.Text = "ICA (Citrix ICA) " & My.Resources.strCcCheckSucceeded
txtCheck4.Text = String.Format(My.Resources.strCcICAOK, ICA.Version)
Catch ex As Exception
pbCheck4.Image = My.Resources.Bad_Symbol
lblCheck4.ForeColor = Color.Firebrick
lblCheck4.Text = "ICA (Citrix ICA) " & Language.Base.CcCheckFailed
txtCheck4.Text = Language.Base.CcICAFailed
lblCheck4.Text = "ICA (Citrix ICA) " & My.Resources.strCcCheckFailed
txtCheck4.Text = My.Resources.strCcICAFailed
mC.AddMessage(Messages.MessageClass.WarningMsg, "ICA " & errorMsg, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, ex.Message, True)
@@ -614,13 +614,13 @@ Namespace UI
If GeckoBad = False Then
pbCheck5.Image = My.Resources.Good_Symbol
lblCheck5.ForeColor = Color.DarkOliveGreen
lblCheck5.Text = "Gecko (Firefox) Rendering Engine (HTTP/S) " & Language.Base.CcCheckSucceeded
txtCheck5.Text = Language.Base.CcGeckoOK
lblCheck5.Text = "Gecko (Firefox) Rendering Engine (HTTP/S) " & My.Resources.strCcCheckSucceeded
txtCheck5.Text = My.Resources.strCcGeckoOK
Else
pbCheck5.Image = My.Resources.Bad_Symbol
lblCheck5.ForeColor = Color.Firebrick
lblCheck5.Text = "Gecko (Firefox) Rendering Engine (HTTP/S) " & Language.Base.CcCheckFailed
txtCheck5.Text = Language.Base.CcGeckoFailed
lblCheck5.Text = "Gecko (Firefox) Rendering Engine (HTTP/S) " & My.Resources.strCcCheckFailed
txtCheck5.Text = My.Resources.strCcGeckoFailed
mC.AddMessage(Messages.MessageClass.WarningMsg, "Gecko " & errorMsg, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, "XULrunner was not found in " & My.Settings.XULRunnerPath, True)
@@ -634,20 +634,20 @@ Namespace UI
pbCheck6.Image = My.Resources.Good_Symbol
lblCheck6.ForeColor = Color.DarkOliveGreen
lblCheck6.Text = "(RDP) Sessions " & Language.Base.CcCheckSucceeded
txtCheck6.Text = Language.Base.CcEOLOK
lblCheck6.Text = "(RDP) Sessions " & My.Resources.strCcCheckSucceeded
txtCheck6.Text = My.Resources.strCcEOLOK
Catch ex As Exception
pbCheck6.Image = My.Resources.Bad_Symbol
lblCheck6.ForeColor = Color.Firebrick
lblCheck6.Text = "(RDP) Sessions " & Language.Base.CcCheckFailed
txtCheck6.Text = Language.Base.CcEOLFailed
lblCheck6.Text = "(RDP) Sessions " & My.Resources.strCcCheckFailed
txtCheck6.Text = My.Resources.strCcEOLFailed
mC.AddMessage(Messages.MessageClass.WarningMsg, "EOLWTSCOM " & errorMsg, True)
mC.AddMessage(Messages.MessageClass.ErrorMsg, ex.Message, True)
End Try
End Sub
#End Region
End Class
End Namespace
End Namespace

File diff suppressed because it is too large Load Diff

View File

@@ -3,7 +3,8 @@ Imports System.Windows
Imports System.Windows.Forms
Imports Crownwood
Imports WeifenLuo.WinFormsUI.Docking
Imports mRemote.App.Runtime
Imports PSTaskDialog
Imports mRemoteNG.App.Runtime
Namespace UI
Namespace Window
@@ -82,14 +83,14 @@ Namespace UI
'
'cmenTabFullscreen
'
Me.cmenTabFullscreen.Image = Global.mRemote.My.Resources.Resources.Fullscreen
Me.cmenTabFullscreen.Image = Global.mRemoteNG.My.Resources.Resources.Fullscreen
Me.cmenTabFullscreen.Name = "cmenTabFullscreen"
Me.cmenTabFullscreen.Size = New System.Drawing.Size(201, 22)
Me.cmenTabFullscreen.Text = "Fullscreen (RDP)"
'
'cmenTabSmartSize
'
Me.cmenTabSmartSize.Image = Global.mRemote.My.Resources.Resources.SmartSize
Me.cmenTabSmartSize.Image = Global.mRemoteNG.My.Resources.Resources.SmartSize
Me.cmenTabSmartSize.Name = "cmenTabSmartSize"
Me.cmenTabSmartSize.Size = New System.Drawing.Size(201, 22)
Me.cmenTabSmartSize.Text = "SmartSize (RDP/VNC)"
@@ -107,14 +108,14 @@ Namespace UI
'
'cmenTabScreenshot
'
Me.cmenTabScreenshot.Image = Global.mRemote.My.Resources.Resources.Screenshot_Add
Me.cmenTabScreenshot.Image = Global.mRemoteNG.My.Resources.Resources.Screenshot_Add
Me.cmenTabScreenshot.Name = "cmenTabScreenshot"
Me.cmenTabScreenshot.Size = New System.Drawing.Size(201, 22)
Me.cmenTabScreenshot.Text = "Screenshot"
'
'cmenTabStartChat
'
Me.cmenTabStartChat.Image = Global.mRemote.My.Resources.Resources.Chat
Me.cmenTabStartChat.Image = Global.mRemoteNG.My.Resources.Resources.Chat
Me.cmenTabStartChat.Name = "cmenTabStartChat"
Me.cmenTabStartChat.Size = New System.Drawing.Size(201, 22)
Me.cmenTabStartChat.Text = "Start Chat (VNC)"
@@ -122,14 +123,14 @@ Namespace UI
'
'cmenTabTransferFile
'
Me.cmenTabTransferFile.Image = Global.mRemote.My.Resources.Resources.SSHTransfer
Me.cmenTabTransferFile.Image = Global.mRemoteNG.My.Resources.Resources.SSHTransfer
Me.cmenTabTransferFile.Name = "cmenTabTransferFile"
Me.cmenTabTransferFile.Size = New System.Drawing.Size(201, 22)
Me.cmenTabTransferFile.Text = "Transfer File (SSH)"
'
'cmenTabRefreshScreen
'
Me.cmenTabRefreshScreen.Image = Global.mRemote.My.Resources.Resources.Refresh
Me.cmenTabRefreshScreen.Image = Global.mRemoteNG.My.Resources.Resources.Refresh
Me.cmenTabRefreshScreen.Name = "cmenTabRefreshScreen"
Me.cmenTabRefreshScreen.Size = New System.Drawing.Size(201, 22)
Me.cmenTabRefreshScreen.Text = "Refresh Screen (VNC)"
@@ -137,7 +138,7 @@ Namespace UI
'cmenTabSendSpecialKeys
'
Me.cmenTabSendSpecialKeys.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.cmenTabSendSpecialKeysCtrlAltDel, Me.cmenTabSendSpecialKeysCtrlEsc})
Me.cmenTabSendSpecialKeys.Image = Global.mRemote.My.Resources.Resources.Keyboard
Me.cmenTabSendSpecialKeys.Image = Global.mRemoteNG.My.Resources.Resources.Keyboard
Me.cmenTabSendSpecialKeys.Name = "cmenTabSendSpecialKeys"
Me.cmenTabSendSpecialKeys.Size = New System.Drawing.Size(201, 22)
Me.cmenTabSendSpecialKeys.Text = "Send special Keys (VNC)"
@@ -168,7 +169,7 @@ Namespace UI
'
'cmenTabRenameTab
'
Me.cmenTabRenameTab.Image = Global.mRemote.My.Resources.Resources.Rename
Me.cmenTabRenameTab.Image = Global.mRemoteNG.My.Resources.Resources.Rename
Me.cmenTabRenameTab.Name = "cmenTabRenameTab"
Me.cmenTabRenameTab.Size = New System.Drawing.Size(201, 22)
Me.cmenTabRenameTab.Text = "Rename Tab"
@@ -188,7 +189,7 @@ Namespace UI
'
'cmenTabDisconnect
'
Me.cmenTabDisconnect.Image = Global.mRemote.My.Resources.Resources.Pause
Me.cmenTabDisconnect.Image = Global.mRemoteNG.My.Resources.Resources.Pause
Me.cmenTabDisconnect.Name = "cmenTabDisconnect"
Me.cmenTabDisconnect.Size = New System.Drawing.Size(201, 22)
Me.cmenTabDisconnect.Text = "Disconnect"
@@ -204,7 +205,7 @@ Namespace UI
Me.ClientSize = New System.Drawing.Size(632, 453)
Me.Controls.Add(Me.TabController)
Me.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Icon = Global.mRemote.My.Resources.Resources.mRemote_Icon
Me.Icon = Global.mRemoteNG.My.Resources.Resources.mRemote_Icon
Me.Name = "Connection"
Me.TabText = "UI.Window.Connection"
Me.Text = "UI.Window.Connection"
@@ -215,7 +216,12 @@ Namespace UI
#End Region
#Region "Public Methods"
Public Sub New(ByVal Panel As DockContent, Optional ByVal FormText As String = Language.Base.NewPanel)
Public Sub New(ByVal Panel As DockContent, Optional ByVal FormText As String = "")
If FormText = "" Then
FormText = My.Resources.strNewPanel
End If
Me.WindowType = Type.Connection
Me.DockPnl = Panel
Me.InitializeComponent()
@@ -223,7 +229,7 @@ Namespace UI
Me.TabText = FormText
End Sub
Public Function AddConnectionTab(ByVal conI As mRemote.Connection.Info) As Magic.Controls.TabPage
Public Function AddConnectionTab(ByVal conI As mRemoteNG.Connection.Info) As Magic.Controls.TabPage
Try
Dim nTab As New Magic.Controls.TabPage
nTab.Anchor = AnchorStyles.Bottom Or AnchorStyles.Left Or AnchorStyles.Right Or AnchorStyles.Top
@@ -254,7 +260,7 @@ Namespace UI
nTab.Title &= ")"
End If
Dim conIcon As Icon = mRemote.Connection.Icon.FromString(conI.Icon)
Dim conIcon As Icon = mRemoteNG.Connection.Icon.FromString(conI.Icon)
If conIcon IsNot Nothing Then
nTab.Icon = conIcon
End If
@@ -282,28 +288,40 @@ Namespace UI
End Sub
Private Sub ApplyLanguage()
cmenTabFullscreen.Text = Language.Base.Fullscreen & " (RDP)"
cmenTabSmartSize.Text = Language.Base.SmartSize & " (RDP/VNC)"
cmenTabViewOnly.Text = Language.Base.Props_ViewOnly & " (VNC)"
cmenTabScreenshot.Text = Language.Base.Screenshot
cmenTabStartChat.Text = Language.Base.StartChat & " (VNC)"
cmenTabTransferFile.Text = Language.Base.TransferFile & " (SSH)"
cmenTabRefreshScreen.Text = Language.Base.RefreshScreen & " (VNC)"
cmenTabSendSpecialKeys.Text = Language.Base.SendSpecialKeys & " (VNC)"
cmenTabSendSpecialKeysCtrlAltDel.Text = Language.Base.Key_Control & "+" & Language.Base.Key_Alt & "+" & Language.Base.Key_Del
cmenTabSendSpecialKeysCtrlEsc.Text = Language.Base.Key_Control & "+" & Language.Base.Key_Esc
cmenTabExternalApps.Text = Language.Base.Menu_ExternalApplications
cmenTabRenameTab.Text = Language.Base.RenameTab
cmenTabDuplicateTab.Text = Language.Base.DuplicateTab
cmenTabReconnect.Text = Language.Base.Reconnect
cmenTabDisconnect.Text = Language.Base.Disconnect
cmenTabFullscreen.Text = My.Resources.strMenuFullScreenRDP
cmenTabSmartSize.Text = My.Resources.strMenuSmartSize
cmenTabViewOnly.Text = My.Resources.strMenuViewOnly
cmenTabScreenshot.Text = My.Resources.strMenuScreenshot
cmenTabStartChat.Text = My.Resources.strMenuStartChat
cmenTabTransferFile.Text = My.Resources.strMenuTransferFile
cmenTabRefreshScreen.Text = My.Resources.strMenuRefreshScreen
cmenTabSendSpecialKeys.Text = My.Resources.strMenuSendSpecialKeys
cmenTabSendSpecialKeysCtrlAltDel.Text = My.Resources.strMenuCtrlAltDel
cmenTabSendSpecialKeysCtrlEsc.Text = My.Resources.strMenuCtrlEsc
cmenTabExternalApps.Text = My.Resources.strMenuExternalTools
cmenTabRenameTab.Text = My.Resources.strMenuRenameTab
cmenTabDuplicateTab.Text = My.Resources.strMenuDuplicateTab
cmenTabReconnect.Text = My.Resources.strMenuReconnect
cmenTabDisconnect.Text = My.Resources.strMenuDisconnect
cmenTabPuttySettings.Text = My.Resources.strPuttySettings
End Sub
Private Sub Connection_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
If Not frmMain.IsClosing And My.Settings.ConfirmCloseConnection And TabController.TabPages.Count > 0 Then
Dim Result As DialogResult = cTaskDialog.MessageBox(Me, My.Application.Info.ProductName, String.Format(My.Resources.strConfirmCloseConnectionPanelMainInstruction, Me.Text), "", "", "", My.Resources.strCheckboxDoNotShowThisMessageAgain, eTaskDialogButtons.YesNo, eSysIcons.Question, Nothing)
If cTaskDialog.VerificationChecked Then
My.Settings.ConfirmCloseConnection = False
End If
If Result = DialogResult.No Then
e.Cancel = True
Exit Sub
End If
End If
Try
For Each tabP As Magic.Controls.TabPage In Me.TabController.TabPages
If tabP.Tag IsNot Nothing Then
Dim IC As mRemote.Connection.InterfaceControl = tabP.Tag
Dim IC As mRemoteNG.Connection.InterfaceControl = tabP.Tag
IC.Protocol.Close()
End If
Next
@@ -316,8 +334,8 @@ Namespace UI
Try
For Each tabP As Magic.Controls.TabPage In Me.TabController.TabPages
If tabP.Tag IsNot Nothing Then
If TypeOf tabP.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = tabP.Tag
If TypeOf tabP.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = tabP.Tag
IC.Protocol.Resize()
End If
End If
@@ -338,12 +356,23 @@ Namespace UI
End Sub
Private Sub CloseConnectionTab()
Dim SelectedTab As Crownwood.Magic.Controls.TabPage = Me.TabController.SelectedTab
If My.Settings.ConfirmCloseConnection Then
Dim Result As DialogResult = cTaskDialog.MessageBox(Me, My.Application.Info.ProductName, String.Format(My.Resources.strConfirmCloseConnectionMainInstruction, SelectedTab.Title), "", "", "", My.Resources.strCheckboxDoNotShowThisMessageAgain, eTaskDialogButtons.YesNo, eSysIcons.Question, Nothing)
If cTaskDialog.VerificationChecked Then
My.Settings.ConfirmCloseConnection = False
End If
If Result = DialogResult.No Then
Exit Sub
End If
End If
Try
If Me.TabController.SelectedTab.Tag IsNot Nothing Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If SelectedTab.Tag IsNot Nothing Then
Dim IC As mRemoteNG.Connection.InterfaceControl = SelectedTab.Tag
IC.Protocol.Close()
Else
Me.CloseTab(Me.TabController.SelectedTab)
Me.CloseTab(SelectedTab)
End If
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "CloseConnectionTab (UI.Window.Connections) failed" & vbNewLine & ex.Message, True)
@@ -359,7 +388,7 @@ Namespace UI
#Region "Drag and Drop"
Private Sub TabController_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TabController.DragDrop
If e.Data.GetDataPresent("System.Windows.Forms.TreeNode", True) Then
App.Runtime.OpenConnection(e.Data.GetData("System.Windows.Forms.TreeNode", True).Tag, Me, mRemote.Connection.Info.Force.DoNotJump)
App.Runtime.OpenConnection(e.Data.GetData("System.Windows.Forms.TreeNode", True).Tag, Me, mRemoteNG.Connection.Info.Force.DoNotJump)
End If
End Sub
@@ -382,17 +411,17 @@ Namespace UI
Exit Sub
End If
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If IC Is Nothing Then
Exit Sub
End If
If IC.Info.Protocol = mRemote.Connection.Protocol.Protocols.RDP Then
If IC.Info.Protocol = mRemoteNG.Connection.Protocol.Protocols.RDP Then
Me.cmenTabFullscreen.Enabled = True
Me.cmenTabSmartSize.Enabled = True
Dim rdp As mRemote.Connection.Protocol.RDP = IC.Protocol
Dim rdp As mRemoteNG.Connection.Protocol.RDP = IC.Protocol
Me.cmenTabSmartSize.Checked = rdp.SmartSize
Me.cmenTabFullscreen.Checked = rdp.Fullscreen
Else
@@ -400,7 +429,7 @@ Namespace UI
Me.cmenTabSmartSize.Enabled = False
End If
If IC.Info.Protocol = mRemote.Connection.Protocol.Protocols.VNC Then
If IC.Info.Protocol = mRemoteNG.Connection.Protocol.Protocols.VNC Then
Me.cmenTabSendSpecialKeys.Enabled = True
Me.cmenTabViewOnly.Enabled = True
@@ -409,7 +438,7 @@ Namespace UI
Me.cmenTabRefreshScreen.Enabled = True
Me.cmenTabTransferFile.Enabled = False
Dim vnc As mRemote.Connection.Protocol.VNC = IC.Protocol
Dim vnc As mRemoteNG.Connection.Protocol.VNC = IC.Protocol
Me.cmenTabSmartSize.Checked = vnc.SmartSize
Me.cmenTabViewOnly.Checked = vnc.ViewOnly
Else
@@ -420,11 +449,11 @@ Namespace UI
Me.cmenTabTransferFile.Enabled = False
End If
If IC.Info.Protocol = mRemote.Connection.Protocol.Protocols.SSH1 Or IC.Info.Protocol = mRemote.Connection.Protocol.Protocols.SSH2 Then
If IC.Info.Protocol = mRemoteNG.Connection.Protocol.Protocols.SSH1 Or IC.Info.Protocol = mRemoteNG.Connection.Protocol.Protocols.SSH2 Then
Me.cmenTabTransferFile.Enabled = True
End If
If TypeOf IC.Protocol Is mRemote.Connection.Protocol.PuttyBase Then
If TypeOf IC.Protocol Is mRemoteNG.Connection.Protocol.PuttyBase Then
Me.cmenTabPuttySettings.Enabled = True
Else
Me.cmenTabPuttySettings.Enabled = False
@@ -467,11 +496,11 @@ Namespace UI
End Sub
Private Sub cmenTabSendSpecialKeysCtrlAltDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmenTabSendSpecialKeysCtrlAltDel.Click
Me.SendSpecialKeys(mRemote.Connection.Protocol.VNC.SpecialKeys.CtrlAltDel)
Me.SendSpecialKeys(mRemoteNG.Connection.Protocol.VNC.SpecialKeys.CtrlAltDel)
End Sub
Private Sub cmenTabSendSpecialKeysCtrlEsc_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmenTabSendSpecialKeysCtrlEsc.Click
Me.SendSpecialKeys(mRemote.Connection.Protocol.VNC.SpecialKeys.CtrlEsc)
Me.SendSpecialKeys(mRemoteNG.Connection.Protocol.VNC.SpecialKeys.CtrlEsc)
End Sub
Private Sub cmenTabFullscreen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmenTabFullscreen.Click
@@ -503,14 +532,14 @@ Namespace UI
Private Sub ToggleSmartSize()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf IC.Protocol Is mRemote.Connection.Protocol.RDP Then
Dim rdp As mRemote.Connection.Protocol.RDP = IC.Protocol
If TypeOf IC.Protocol Is mRemoteNG.Connection.Protocol.RDP Then
Dim rdp As mRemoteNG.Connection.Protocol.RDP = IC.Protocol
rdp.ToggleSmartSize()
ElseIf TypeOf IC.Protocol Is mRemote.Connection.Protocol.VNC Then
Dim vnc As mRemote.Connection.Protocol.VNC = IC.Protocol
ElseIf TypeOf IC.Protocol Is mRemoteNG.Connection.Protocol.VNC Then
Dim vnc As mRemoteNG.Connection.Protocol.VNC = IC.Protocol
vnc.ToggleSmartSize()
End If
End If
@@ -523,12 +552,12 @@ Namespace UI
Private Sub TransferFile()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If IC.Info.Protocol = mRemote.Connection.Protocol.Protocols.SSH1 Or IC.Info.Protocol = mRemote.Connection.Protocol.Protocols.SSH2 Then
If IC.Info.Protocol = mRemoteNG.Connection.Protocol.Protocols.SSH1 Or IC.Info.Protocol = mRemoteNG.Connection.Protocol.Protocols.SSH2 Then
SSHTransferFile()
ElseIf IC.Info.Protocol = mRemote.Connection.Protocol.Protocols.VNC Then
ElseIf IC.Info.Protocol = mRemoteNG.Connection.Protocol.Protocols.VNC Then
VNCTransferFile()
End If
End If
@@ -541,11 +570,11 @@ Namespace UI
Private Sub SSHTransferFile()
Try
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
Windows.Show(Type.SSHTransfer)
Dim conI As mRemote.Connection.Info = IC.Info
Dim conI As mRemoteNG.Connection.Info = IC.Info
Windows.sshtransferForm.Hostname = conI.Hostname
Windows.sshtransferForm.Username = conI.Username
@@ -558,8 +587,8 @@ Namespace UI
Private Sub VNCTransferFile()
Try
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
Dim vnc As mRemote.Connection.Protocol.VNC = IC.Protocol
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
Dim vnc As mRemoteNG.Connection.Protocol.VNC = IC.Protocol
vnc.StartFileTransfer()
Catch ex As Exception
mC.AddMessage(Messages.MessageClass.ErrorMsg, "VNCTransferFile (UI.Window.Connections) failed" & vbNewLine & ex.Message, True)
@@ -569,13 +598,13 @@ Namespace UI
Private Sub ToggleViewOnly()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf IC.Protocol Is mRemote.Connection.Protocol.VNC Then
If TypeOf IC.Protocol Is mRemoteNG.Connection.Protocol.VNC Then
cmenTabViewOnly.Checked = Not cmenTabViewOnly.Checked
Dim vnc As mRemote.Connection.Protocol.VNC = IC.Protocol
Dim vnc As mRemoteNG.Connection.Protocol.VNC = IC.Protocol
vnc.ToggleViewOnly()
End If
End If
@@ -588,11 +617,11 @@ Namespace UI
Private Sub StartChat()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf IC.Protocol Is mRemote.Connection.Protocol.VNC Then
Dim vnc As mRemote.Connection.Protocol.VNC = IC.Protocol
If TypeOf IC.Protocol Is mRemoteNG.Connection.Protocol.VNC Then
Dim vnc As mRemoteNG.Connection.Protocol.VNC = IC.Protocol
vnc.StartChat()
End If
End If
@@ -605,11 +634,11 @@ Namespace UI
Private Sub RefreshScreen()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf IC.Protocol Is mRemote.Connection.Protocol.VNC Then
Dim vnc As mRemote.Connection.Protocol.VNC = IC.Protocol
If TypeOf IC.Protocol Is mRemoteNG.Connection.Protocol.VNC Then
Dim vnc As mRemoteNG.Connection.Protocol.VNC = IC.Protocol
vnc.RefreshScreen()
End If
End If
@@ -619,14 +648,14 @@ Namespace UI
End Try
End Sub
Private Sub SendSpecialKeys(ByVal Keys As mRemote.Connection.Protocol.VNC.SpecialKeys)
Private Sub SendSpecialKeys(ByVal Keys As mRemoteNG.Connection.Protocol.VNC.SpecialKeys)
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf IC.Protocol Is mRemote.Connection.Protocol.VNC Then
Dim vnc As mRemote.Connection.Protocol.VNC = IC.Protocol
If TypeOf IC.Protocol Is mRemoteNG.Connection.Protocol.VNC Then
Dim vnc As mRemoteNG.Connection.Protocol.VNC = IC.Protocol
vnc.SendSpecialKeys(Keys)
End If
End If
@@ -639,11 +668,11 @@ Namespace UI
Private Sub ToggleFullscreen()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf IC.Protocol Is mRemote.Connection.Protocol.RDP Then
Dim rdp As mRemote.Connection.Protocol.RDP = IC.Protocol
If TypeOf IC.Protocol Is mRemoteNG.Connection.Protocol.RDP Then
Dim rdp As mRemoteNG.Connection.Protocol.RDP = IC.Protocol
rdp.ToggleFullscreen()
End If
End If
@@ -656,11 +685,11 @@ Namespace UI
Private Sub ShowPuttySettingsDialog()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim objInterfaceControl As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim objInterfaceControl As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf objInterfaceControl.Protocol Is mRemote.Connection.Protocol.PuttyBase Then
Dim objPuttyBase As mRemote.Connection.Protocol.PuttyBase = objInterfaceControl.Protocol
If TypeOf objInterfaceControl.Protocol Is mRemoteNG.Connection.Protocol.PuttyBase Then
Dim objPuttyBase As mRemoteNG.Connection.Protocol.PuttyBase = objInterfaceControl.Protocol
objPuttyBase.ShowSettingsDialog()
End If
@@ -696,8 +725,8 @@ Namespace UI
Private Sub StartExternalApp(ByVal ExtA As Tools.ExternalApp)
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
ExtA.Start(IC.Info)
End If
@@ -711,8 +740,8 @@ Namespace UI
Private Sub CloseTabMenu()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
IC.Protocol.Close()
End If
@@ -725,10 +754,10 @@ Namespace UI
Private Sub DuplicateTab()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
App.Runtime.OpenConnection(IC.Info, mRemote.Connection.Info.Force.DoNotJump)
App.Runtime.OpenConnection(IC.Info, mRemoteNG.Connection.Info.Force.DoNotJump)
End If
End If
Catch ex As Exception
@@ -739,13 +768,13 @@ Namespace UI
Private Sub Reconnect()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
Dim conI As mRemote.Connection.Info = IC.Info
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
Dim conI As mRemoteNG.Connection.Info = IC.Info
IC.Protocol.Close()
App.Runtime.OpenConnection(conI, mRemote.Connection.Info.Force.DoNotJump)
App.Runtime.OpenConnection(conI, mRemoteNG.Connection.Info.Force.DoNotJump)
End If
End If
Catch ex As Exception
@@ -755,7 +784,7 @@ Namespace UI
Private Sub RenameTab()
Try
Dim nTitle As String = InputBox(Language.Base.NewTitle & ":", , Me.TabController.SelectedTab.Title.Replace("&&", "&"))
Dim nTitle As String = InputBox(My.Resources.strNewTitle & ":", , Me.TabController.SelectedTab.Title.Replace("&&", "&"))
If nTitle <> "" Then
Me.TabController.SelectedTab.Title = nTitle.Replace("&", "&&")
@@ -768,7 +797,7 @@ Namespace UI
#Region "Protocols"
Public Sub Prot_Event_Closed(ByVal sender As Object)
Dim Prot As mRemote.Connection.Protocol.Base = sender
Dim Prot As mRemoteNG.Connection.Protocol.Base = sender
CloseTab(Prot.InterfaceControl.Parent)
End Sub
#End Region
@@ -809,8 +838,8 @@ Namespace UI
Private Sub FocusIC()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
IC.Protocol.Focus()
End If
End If
@@ -822,11 +851,11 @@ Namespace UI
Public Sub RefreshIC()
Try
If Me.TabController.SelectedTab IsNot Nothing Then
If TypeOf Me.TabController.SelectedTab.Tag Is mRemote.Connection.InterfaceControl Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If TypeOf Me.TabController.SelectedTab.Tag Is mRemoteNG.Connection.InterfaceControl Then
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If IC.Info.Protocol = mRemote.Connection.Protocol.Protocols.VNC Then
TryCast(IC.Protocol, mRemote.Connection.Protocol.VNC).RefreshScreen()
If IC.Info.Protocol = mRemoteNG.Connection.Protocol.Protocols.VNC Then
TryCast(IC.Protocol, mRemoteNG.Connection.Protocol.VNC).RefreshScreen()
End If
End If
End If
@@ -845,9 +874,9 @@ Namespace UI
If curRect.Contains(Form.MousePosition) Then
If curTab IsNot Nothing Then
Dim IC As mRemote.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
Dim IC As mRemoteNG.Connection.InterfaceControl = Me.TabController.SelectedTab.Tag
If IC.Info.Protocol = mRemote.Connection.Protocol.Protocols.RDP Then
If IC.Info.Protocol = mRemoteNG.Connection.Protocol.Protocols.RDP Then
IC.Protocol.Focus()
End If
End If

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