Compare commits

..

2618 Commits

Author SHA1 Message Date
David Sparer
3ed8e768aa bumped patch version 2018-10-07 09:04:48 -05:00
David Sparer
d362691389 updated build scripts to include debug symbols and normalized github
asset names

cherrypicked from the develop branch
2018-10-07 07:53:31 -05:00
David Sparer
4b7c54d5b5 updated changelog 2018-10-07 07:28:57 -05:00
David Sparer
ec80a5aa70 fixed #1117 2018-09-30 13:19:35 -05:00
David Sparer
0c95f178ca updated changelog 2018-09-30 11:04:03 -05:00
David Sparer
e0405b15df fixes #1110 2018-09-30 11:02:01 -05:00
David Sparer
e029f30acf added a few try/catch blocks around some rdp code. related to #853 2018-09-30 10:44:22 -05:00
David Sparer
44ed836b7c fixed #1115 2018-09-29 12:14:44 -05:00
David Sparer
00401201d1 fixed Spanish translation issue. fixes #1112 2018-09-27 08:23:17 -05:00
David Sparer
20f46bea61 fixes #1106 2018-09-20 15:10:43 -05:00
Sean Kaim
a5d22d287c Fixed #1091 2018-08-28 14:59:07 -04:00
Sean Kaim
793095900b fix #1092
parse enums properly
2018-08-28 09:35:08 -04:00
David Sparer
f10e54e47b bumped assembly version to 1.76.8 2018-08-25 10:31:35 -05:00
David Sparer
704e0c1dc1 updated changelog 2018-08-25 10:29:43 -05:00
David Sparer
0c79a9acde fixes #1088 2018-08-24 14:43:08 -05:00
David Sparer
ebfc2715e7 updated changelog 2018-08-24 13:24:23 -05:00
David Sparer
b0dbc9dc18 only delete reg key value if the value exists 2018-08-24 13:23:52 -05:00
David Sparer
507cdf75a5 fixes #1087 2018-08-24 13:23:02 -05:00
David Sparer
8f8492b0be xml deserializer now gives connections an ID if the ID string in xml is empty
fixes #1082
2018-08-24 10:37:54 -05:00
David Sparer
457e715188 set assembly version to 1.76.7 and set release date in changelog 2018-08-22 10:59:45 -05:00
David Sparer
1724521ebf added some null guards to methods 2018-08-22 07:06:44 -05:00
David Sparer
b0fb3596aa added some safety checks around accessing putty registry settings 2018-08-22 07:06:16 -05:00
David Sparer
fb228d72b1 resolved bug #1076 2018-08-19 11:44:43 -05:00
David Sparer
916361a3be update changelog 2018-08-11 20:03:27 -05:00
David Sparer
408c40f699 fixed a few toolbar location loading edge cases
related to #1068
2018-08-11 10:02:07 -05:00
David Sparer
4173f6d775 swapped direct calls to Monitor with a lock statement and added a few method comments 2018-08-11 06:47:31 -05:00
Sean Kaim
e6f3c22064 code clean up / add'l checks
related to #1061
2018-08-03 10:13:31 -04:00
David Sparer
a013518eac bump assembly version 2018-08-03 08:51:44 -05:00
David Sparer
9c88cacb3d hopefully a fix for #1061 2018-08-03 08:33:51 -05:00
David Sparer
d49bf04b15 fixes #1062 2018-08-03 08:13:39 -05:00
David Sparer
1dbd5dc5bc set 1.76.5 release date in changelog 2018-08-02 18:15:33 -05:00
David Sparer
c103706a54 added test to verify #1057 2018-08-02 17:55:36 -05:00
David Sparer
b0a027df52 updated changelog 2018-08-02 17:49:50 -05:00
David Sparer
868641378a Merge pull request #1055 from mRemoteNG/647_save_symbols
647 save symbols
2018-08-02 16:34:04 -05:00
David Sparer
11baae3107 applying patch provided by Toomix in #1057 and merged in 7dbef77 2018-08-01 07:01:45 -05:00
David Sparer
ed8125042e make portable symbols zip file name easier to distinguish from regular symbols 2018-07-30 17:02:08 -05:00
David Sparer
25b2655d0f log which files are uploaded to github release 2018-07-30 16:55:09 -05:00
David Sparer
145a264154 handle wildcard in github asset upload file path 2018-07-30 16:45:55 -05:00
David Sparer
3e33170ae0 handle non-auto hidden notification panel focusing too 2018-07-30 15:23:59 -05:00
David Sparer
d18bf68f0e fix release tests 2018-07-30 14:12:17 -05:00
David Sparer
368917e108 accidentally left off the variable identifier for msbuild 2018-07-30 11:16:04 -05:00
David Sparer
cdea4c3911 missed a groovy var 2018-07-30 11:02:05 -05:00
David Sparer
b4b9b55bbf updated jenkins publish script to target msbuild15 2018-07-30 10:59:21 -05:00
David Sparer
6092c63df4 fix zipping symbols 2018-07-30 08:03:40 -05:00
David Sparer
fda5132184 zip symbols 2018-07-29 22:22:13 -05:00
Sean Kaim
6a9fb25a18 fixes #868
DialogResult is not currently checked, so it's a minimal/non-impact bug currently. But it's fixed now in case it's used in the future...
2018-07-29 21:30:11 -04:00
Sean Kaim
18d7344690 fixes #762
Increased button size by about 150%
2018-07-29 21:16:19 -04:00
Sean Kaim
ba50cf20a0 update changelog 2018-07-29 21:03:54 -04:00
Sean Kaim
7bd6e126e2 Fix #893
Disabled ClickOnce/Publish wihtin the project options.
2018-07-29 21:02:33 -04:00
Sean Kaim
f7521c81d5 Fixes #1052
and some code clean up
2018-07-29 19:03:21 -04:00
David Sparer
f483a2dc2f replaced Timer implementation with Task async call
fixes #1052
2018-07-29 12:02:41 -05:00
Sean Kaim
9769d5af06 changelog update 2018-07-28 22:31:26 -04:00
Sean Kaim
0a2dc3563e fixes #1040
clicking close would have the same effect. Check return code and don't open the connection unless user input has been provided.
2018-07-28 22:30:06 -04:00
Sean Kaim
e9f0157b2b code clean up 2018-07-28 22:15:11 -04:00
Sean Kaim
e8e566fcdd localization fixes 2018-07-28 22:10:17 -04:00
Sean Kaim
72b7d22cef localization fixes 2018-07-28 22:09:27 -04:00
Sean Kaim
f79da476fd options pages code clean up 2018-07-28 21:59:24 -04:00
Sean Kaim
ef31b7844c Merge pull request #1053 from mRemoteNG/cherry
Cherry picked commits for 1.76
2018-07-28 13:54:34 -04:00
Sean Kaim
f1ed1bf115 appveyor post build tests 2018-07-28 13:11:56 -04:00
Sean Kaim
23ea028965 don't run post build zip in appveyor 2018-07-28 13:11:10 -04:00
Sean Kaim
42046a614f Solution config was building wrong projects 2018-07-28 13:05:37 -04:00
Sean Kaim
36055f56e6 the post publish job in the appveyor.yaml in ps1 form 2018-07-28 13:05:28 -04:00
Sean Kaim
b693cb30fc Trim ConfigurationName 2018-07-28 13:03:27 -04:00
Sean Kaim
20377d4ff5 zip portable directly via powershell
Trying to fix appveyor artifact build
2018-07-28 13:03:16 -04:00
Sean Kaim
570d732b0e latest 7-zip 2018-07-28 13:03:00 -04:00
Sean Kaim
d9d2b1de70 code clean up (convert to expression body) 2018-07-28 13:02:36 -04:00
Sean Kaim
0a7eaaf36f minor code clean up 2018-07-28 13:02:25 -04:00
Sean Kaim
36dd3e496d minor code clean up 2018-07-28 13:02:14 -04:00
Sean Kaim
83fd914d7b code clean up 2018-07-28 13:01:41 -04:00
Sean Kaim
281c6b13fa minor code clean up
* No need to kick off the registry provider here (it's done already in PuttySessionsManager#StartWatcher())

* if (Directory.Exists(sessionsFolderPath)) thows an exception even though it should have just fallen through... but if (!Directory.Exists(sessionsFolderPath)) doesn't throw and logs a message with a graceful return????

IDK... I had a Uri.IsWellFormedUriString test in there to avoid the exception, but it seems unnecessary...
2018-07-28 13:01:06 -04:00
David Sparer
00b7b1221c fixes #1051 2018-07-28 09:03:57 -05:00
David Sparer
56cbf0ff3f fixes #1050 2018-07-28 07:52:57 -05:00
Sean Kaim
f852a4d341 minor code clean up 2018-07-27 17:02:51 -04:00
Sean Kaim
7c8c7d482a frmChoosePanel was not properly themed 2018-07-27 16:58:25 -04:00
Sean Kaim
9e95ae2cb0 code clean up 2018-07-27 16:45:38 -04:00
Sean Kaim
0d2d935f17 set default theme when themes disabled
Fixes #1039
Also some code clean up
2018-07-27 16:04:42 -04:00
Sean Kaim
eeb320a825 more clean up (use .ToString) 2018-07-27 14:50:44 -04:00
Sean Kaim
9452d4dbe3 Theme code clean up 2018-07-27 14:45:07 -04:00
Sean Kaim
03d2387cdd appveyor build for 1.76 branch 2018-07-27 14:44:35 -04:00
Sean Kaim
61b325ccb9 code clean up 2018-07-27 14:26:01 -04:00
Sean Kaim
e57de9a4de localized strings 2018-07-27 14:24:42 -04:00
Sean Kaim
96946f3a1e porting fix for #971 to 1.76 branch 2018-07-27 14:15:23 -04:00
David Sparer
8cd6fb7ae2 updated changelog 2018-07-26 13:40:53 -05:00
David Sparer
a5afa90790 fixes #1045 2018-07-26 13:39:12 -05:00
David Sparer
f634eb8d37 created tests for the config window to ensure property grid items correctly display for certain object types 2018-07-26 13:38:53 -05:00
David Sparer
694b61a67b added a property to expose the list of object properties being shown by the property grid
this will help a lot with testing the property grid/config window
2018-07-26 09:12:47 -05:00
David Sparer
88f0d00a15 minor style cleanup 2018-07-26 08:55:55 -05:00
David Sparer
e31088fd2e ensure that quick connect items always have a panel set, even if the con default Panel setting is empty
related to #802
2018-07-25 14:39:23 -05:00
David Sparer
1d7bb63710 ensure ConDefaultPanel has a default value
related to #802
2018-07-25 14:21:44 -05:00
David Sparer
af1ed5349f updated changelog 2018-07-25 08:08:35 -05:00
David Sparer
9dcf71dc31 new connection tree nodes will survive filtering until they exit edit mode
resolves #1038
2018-07-25 08:05:48 -05:00
David Sparer
8bf9af0ed8 updated changelog 2018-07-24 14:49:33 -05:00
David Sparer
aecfad5871 only access first array item if array has any items
resolves #1036
2018-07-24 14:49:01 -05:00
David Sparer
3edd155898 updated changelog 2018-07-24 12:55:27 -05:00
David Sparer
2c419c0b2e minor cleanup 2018-07-24 12:54:34 -05:00
David Sparer
2fb67e7042 fixed issue where the connection context menu wasn't using translated strings
The ctor for the context menu was being called before we loaded the desired culture, leading to the use of the English default strings. Resolves #1034
2018-07-24 12:54:20 -05:00
David Sparer
29483b2625 attached the file backup pruner to listen to connection file save events
resolves #1020
2018-07-23 12:53:03 -05:00
David Sparer
7fc59e79f3 bumped assembly version in preparation for next alpha release 2018-07-23 12:03:53 -05:00
David Sparer
79b3e21148 updated changelog 2018-07-23 12:02:09 -05:00
David Sparer
ee91117010 renamed function to be a bit more accurate 2018-07-23 11:54:49 -05:00
David Sparer
0548037ff3 added a few method summaries 2018-07-23 11:53:50 -05:00
David Sparer
46002632bb removed duplicate code 2018-07-23 11:52:38 -05:00
David Sparer
9659ac1611 added a dialog to prompt for action when decrypting a connection file fails 2018-07-23 11:51:58 -05:00
David Sparer
bbc497e68d added some quality of life methods to Optional 2018-07-23 08:03:03 -05:00
David Sparer
d7ec7574ad updated changelog 2018-07-20 14:54:42 -05:00
David Sparer
2f476d9e61 fix a null ref exception when importing from port scan without selecting a tree node. resolves #1030 2018-07-20 14:52:12 -05:00
David Sparer
c74f37f0de confirmer should return false if deletion target is null. found during regression testing 2018-07-20 12:31:59 -05:00
David Sparer
d27a62cbfc added some extra null checks in the rdcman importer 2018-07-20 07:26:38 -05:00
David Sparer
8029e491a3 Merge branch 'auto_save_during_sort' into release/v1.76 2018-07-18 14:53:26 -05:00
David Sparer
fe56268421 added a simple system to batch saves in the connection service 2018-07-18 14:53:02 -05:00
David Sparer
2db6fabbe9 reverted 3bdcf65 2018-07-18 14:52:12 -05:00
David Sparer
035e89801a reduce FrmMain minimum size to prevent issues with other system features. resolves #1024 2018-07-17 08:07:10 -05:00
David Sparer
3bdcf655fd suspend tree model events during sort, since this can produce a lot of changes 2018-06-25 15:15:46 -05:00
David Sparer
284755f298 fix tab ordering on port scan page 2018-06-23 09:03:25 -05:00
David Sparer
ad5eed96e7 fixed visual bug when filtering connection tree. resolves #993 2018-06-22 15:09:53 -05:00
David Sparer
431c830ea0 resize connection tree column width when calling expand all. related to #993 2018-06-22 13:56:22 -05:00
David Sparer
da047427a5 fix test 2018-06-21 20:33:32 -05:00
David Sparer
69da1dca5f added some tests of the connection tree duplicate function. related to #1004 2018-06-21 18:04:29 -05:00
David Sparer
cc61501f63 dont attempt to delete selected node if it is not a valid deletion target. resolves #1004 2018-06-21 17:35:42 -05:00
David Sparer
4ced2d3392 accidentally put a few changelog items under the wrong version 2018-06-21 16:51:41 -05:00
David Sparer
7c72bfdf6b connection tree now removes filtering when 'use filtering' option turned off. resolves #1002 2018-06-21 15:33:43 -05:00
David Sparer
b8878e1458 updated changelog 2018-06-21 08:35:29 -05:00
David Sparer
abd40cec1b removed duplicate disable/enable shortcut calls that was causing an issue. resolves #1001 2018-06-21 08:34:26 -05:00
David Sparer
cc18da4f28 updated changelog 2018-06-20 16:43:24 -05:00
David Sparer
1a39039162 reenable all hotkeys once file menu closes. Resolves #999 2018-06-20 16:42:58 -05:00
David Sparer
cf9dd72ea5 dont allow folder/connections to be added to the putty root node in connection tree. Resolves #998 2018-06-20 16:25:08 -05:00
David Sparer
b7cdf81665 ensure putty root node returns correct tree node type. Related to #998 2018-06-20 16:20:51 -05:00
David Sparer
8497a05fd1 resolves #991
fixed bug when deleting connection tree node when in filtered view
2018-06-13 14:34:05 -05:00
David Sparer
7db4eec45c fixed bug where the export screen was using new credential manager code that shouldn't be active yet 2018-06-03 10:45:29 -05:00
David Sparer
cd822b545a random stuff the ui designer regenerated 2018-06-03 10:45:06 -05:00
David Sparer
e872581d3c updated changelog 2018-06-03 09:50:42 -05:00
David Sparer
defe9e094c made opening an empty panel on startup configurable in options 2018-05-31 06:26:43 -05:00
David Sparer
5662735cb8 bumped assembly version for next pre-release 2018-05-25 18:01:32 -05:00
David Sparer
8646dce21b update jenkins build to use newest msbuild (enables c# 7 lang features) 2018-05-20 11:07:43 -05:00
David Sparer
99a3eabbaf updated changelog 2018-05-19 17:00:57 -05:00
David Sparer
c57bd386f2 dont try to connect to folders in quick connect menu. resolves #924 2018-05-19 16:57:34 -05:00
David Sparer
f2a52b03df menu bar can be moved when "lock toolbar position" is turned off. closes #902 2018-05-19 12:57:29 -05:00
David Sparer
860e1ccfaa fix a mismerged language item 2018-05-18 21:33:16 -05:00
David Sparer
49967b38d4 update changelog 2018-05-18 21:32:51 -05:00
David Sparer
36038fff6d fix minor code typo 2018-05-18 20:52:17 -05:00
David Sparer
c5958954b0 apply language later in app startup 2018-05-18 20:45:27 -05:00
David Sparer
d0d63016ca Merge branch 'pr_948_target' into release/v1.76
# Conflicts:
#	mRemoteV1/Resources/Language/Language.resx
#	mRemoteV1/UI/Forms/frmMain.Designer.cs
#	mRemoteV1/UI/Menu/ViewMenu.cs
2018-05-18 20:04:23 -05:00
David Sparer
35f2484adf Merge pull request #948 from farosch/translation
some changes regarding tranlsation
2018-05-18 18:41:06 -05:00
David Sparer
c2cf496ded updated changelog and credits 2018-04-29 12:00:08 -05:00
David Sparer
8a172f02a9 updated changelog and credits for #942 2018-04-19 08:08:44 -05:00
David Sparer
f27935ea61 Merge pull request #942 from sli-pro/develop
Made several strings translatable and added Russian translations
2018-04-19 07:58:16 -05:00
Faryan Rezagholi
043df0aec3 fixed wording 2018-04-14 11:56:01 +02:00
Faryan Rezagholi
63a2e18760 added missing items 2018-04-14 11:56:01 +02:00
Faryan Rezagholi
c3ced7ed03 fix: translations of main file menu items were not loaded 2018-04-14 11:56:01 +02:00
Faryan Rezagholi
f597e14b3d fix group box was not translatable 2018-04-14 11:56:01 +02:00
Faryan Rezagholi
aff4ba9115 fix: set labels dock mode to fill (wasnt displaying longer translated texts) 2018-04-14 11:56:01 +02:00
Faryan Rezagholi
554e0805e3 fix: title of options page was not translatable 2018-04-14 11:56:01 +02:00
Faryan Rezagholi
f4efa74a23 Added missing translation options in viewMenu.cs 2018-04-14 11:56:01 +02:00
Vladimir Semenov
ddc19587fa Edited and added a translation of the Russian language in the forms
- File/import
- File/Import from AD
- File/Export to File
- View/Lock Toolbar position
- View/Mylti SSH toolbar
- Tools/Options/Additionally
Related to question #940.
2018-04-10 13:41:34 +03:00
Vladimir Semenov
5f1232727e Edit and add a translation on the external tools form.
Added and corrected Russian and English translations in the external tools tab.
Adjusted the placement of components on the external tools form so that the text does not overlap during translation.
Related to question #940.
2018-04-10 09:58:59 +03:00
David Sparer
9c373e8f0a Merge pull request #938 from sli-pro/develop
Small visual correction of the forms
2018-04-07 11:25:55 -05:00
David Sparer
83942d788f Merge branch '916_default_properties_not_saving' into develop 2018-04-06 15:05:35 -05:00
David Sparer
73d6fec6f3 updated changelog 2018-04-06 15:05:00 -05:00
David Sparer
a37b5deaa1 finished updating some tests for default inheritance 2018-04-06 15:02:14 -05:00
Vladimir Semenov
3b9de847e7 Small visual correction of the forms
- for the main form set the minimum resolution 1140; 603.
- for the form of port scans, done visual editing of components.
2018-04-06 20:59:15 +03:00
David Sparer
924f1f1e48 improved tests for default connection info 2018-04-05 16:37:22 -05:00
David Sparer
7bdebbe25b Merge pull request #936 from sli-pro/develop
Update Language ru
2018-04-05 15:16:31 -05:00
David Sparer
8f46c25dc9 Merge pull request #935 from marcomsousa/develop
Update Language es
2018-04-05 15:15:04 -05:00
Vladimir Semenov
8bb4a03639 Update Language ru
Fix typos in Russian language
2018-04-05 18:51:47 +03:00
Marco Sousa
7b5bc5e057 Update Language es 2018-04-05 12:39:02 +02:00
David Sparer
35582a5e6a fixed bug with saving and loading default connection info data
updated tests to better cover this feature. related to #916
2018-03-22 16:54:50 -05:00
David Sparer
20340fd31f Merge pull request #913 from mRemoteNG/github-templates
Update .github templates
2018-03-22 07:44:10 -05:00
David Sparer
d6d7664b48 update readme shield 2018-03-14 19:30:25 -05:00
David Sparer
ce97e63876 bump version 2018-03-14 19:17:29 -05:00
David Sparer
378b98ff89 set release date 2018-03-14 19:09:02 -05:00
David Sparer
ce31199e57 updated changelog 2018-03-10 17:55:15 -06:00
David Sparer
227f3b2924 fix csv serialization bug where some empty fields would not be included
related to #911
2018-03-10 17:47:33 -06:00
David Sparer
5076f1354c fix bug where inheritance is incorrectly allowed on nodes under the root node after deserializing 2018-03-10 16:37:54 -06:00
Bennett Blodinger
e5a34388ae Update .github templates
Bumping up the quality of the templates with help from https://www.talater.com/open-source-templates
2018-03-09 09:46:03 -05:00
David Sparer
6a5f65c018 add a bit more documentation to the ps script that creates bulk connections 2018-03-09 08:08:29 -06:00
David Sparer
6d5f41b3d8 forgot to bump the stable branch when 1.75.7012 was released 2018-03-03 09:39:37 -06:00
David Sparer
64f10ead63 bump development channel download shield 2018-03-03 09:31:27 -06:00
David Sparer
575dae446f bump version and update changelog 2018-03-03 09:16:55 -06:00
David Sparer
9b438576f2 deserializing enums now ignores case. resolves #899 2018-02-27 09:48:09 -06:00
David Sparer
cbd32f1a07 added powershell script for creating bulk connections 2018-02-27 08:37:25 -06:00
David Sparer
516182ec40 the xml v2.6 schema must have the export field event if we dont use it. need to bump to v2.7 to get rid of it 2018-02-26 08:11:59 -06:00
David Sparer
4ad3a68d80 readded Export field to xml schema 2018-02-26 07:13:36 -06:00
David Sparer
2f9ba32c07 bump readme for development channel badge 2018-02-25 13:41:32 -06:00
David Sparer
dfc45a2904 update changelog 2018-02-25 12:59:58 -06:00
David Sparer
563fdffb67 fixed build scripts that publish to github
github no longer accepts tls1.0 connections, use tls1.2
2018-02-25 12:58:12 -06:00
David Sparer
f2e9c5e2c0 fixed issue with expanded property not being deserialized 2018-02-25 12:57:40 -06:00
David Sparer
86a591364c modified the xml serializer slightly to make it conform to the XSD file
This required all bools to be serialized to lower case which broke a few assumptions we made in the deserializer
2018-02-25 11:26:29 -06:00
David Sparer
2a82485f81 fixed build issue where installer wasnt being renamed with version number 2018-02-25 09:04:59 -06:00
David Sparer
e13549d361 fixed build issue where binary signatures were not being validated during release builds 2018-02-25 09:00:51 -06:00
David Sparer
a85c1bd7d3 bumped assembly and set release date 2018-02-24 15:19:09 -06:00
David Sparer
946679f490 dont attempt to close a tab if it is disposed 2018-02-24 15:09:09 -06:00
David Sparer
b6f27eac18 added another test and did some cleanup 2018-02-24 14:34:13 -06:00
David Sparer
2cc82145a3 csv serialization now fully preserves tree structure 2018-02-24 12:58:16 -06:00
David Sparer
2dae0f2d8e fix bug where sometimes containers would have their container flag turned off 2018-02-24 12:57:38 -06:00
David Sparer
412f6edc36 change guard checks to use extension method 2018-02-16 20:17:31 -06:00
David Sparer
764791b8e5 changed the Maybe type name to Optional, which is slightly more common 2018-02-16 20:17:30 -06:00
David Sparer
bd20d6ae7d moved classes to new namespace 2018-02-16 20:17:30 -06:00
David Sparer
8db0bf7bea make constant id readonly 2018-02-13 16:15:49 -06:00
David Sparer
cff6aa72fc update changelog 2018-02-13 14:38:58 -06:00
David Sparer
63ddf06057 Made port scan timeout configurable
resolves #648
2018-02-13 14:29:26 -06:00
David Sparer
3d9d57b7fa adding several tool chain dependencies 2018-02-09 13:09:58 -06:00
David Sparer
2c1734aea6 change post-build scripts to use bin tools from the repo
this should prevent some build issues new devs have and gives us more control over our build process
2018-02-08 16:11:16 -06:00
David Sparer
301c39aad0 update copyright 2018-02-08 15:39:35 -06:00
David Sparer
5be346c89d changed a few localized strings used by the initial connection file not found dialog 2018-02-04 19:44:39 -06:00
David Sparer
e4eaf0037e fixed an issue that was making bug #479 reappear 2018-02-04 19:14:03 -06:00
David Sparer
8f97be82cb added some more safety around retrieving inherited values 2018-02-04 19:08:29 -06:00
David Sparer
4ab7f92b82 reapply the quick connect focus bug fix provided in #651 2018-02-04 18:13:18 -06:00
David Sparer
0ec95a7729 Merge branch '625_deserialize_csv' into develop 2018-02-04 17:59:49 -06:00
David Sparer
98c38716cd updated changelog 2018-02-04 17:59:15 -06:00
David Sparer
6a46df780c did some refactoring
made IConnectionImporter generic to cut down on code
2018-02-04 16:00:50 -06:00
David Sparer
7788198f26 fixed an issue with serializing csv data with semi colons in fields 2018-02-04 11:52:26 -06:00
David Sparer
3010963283 hooked up csv deserialization to ui 2018-02-04 11:39:04 -06:00
David Sparer
6522524c0f added serialization for a few more inheritance properties 2018-02-04 10:32:18 -06:00
David Sparer
160434c114 Merge branch 'develop' into 625_deserialize_csv 2018-02-04 09:33:33 -06:00
David Sparer
36acb9ac12 update develop branch download badge 2018-02-01 21:38:10 -06:00
David Sparer
1a06783dab update changelog and credits 2018-02-01 21:13:42 -06:00
David Sparer
ec38ee9abc remove dead code 2018-02-01 20:54:24 -06:00
David Sparer
2e82551b7c fix toolbar location loading bug 2018-02-01 20:34:22 -06:00
David Sparer
49121fb945 remove deleted file from solution 2018-02-01 20:34:07 -06:00
David Sparer
6e436f55c3 Merge pull request #840 from jotatsu/develop
Fix themes on installer version, initial menu position fix
2018-02-01 20:32:59 -06:00
David Sparer
afb0131a28 save and load multi ssh toolbar position. resolves #846 2018-01-28 21:15:12 -06:00
David Sparer
92588282a6 always set file menu position to the top left 2018-01-28 21:14:42 -06:00
David Sparer
765e997976 Merge pull request #858 from Fyers/develop
fixed putty session name encoding - fixes #800
2018-01-26 20:39:39 -06:00
Sean Kaim
ddbf6a2e7a ports from dev for appveyor build 2018-01-25 12:35:32 -05:00
Sean Kaim
8567e912a3 add citrixReceiver.exe for appveyor 2018-01-25 12:25:48 -05:00
Sean Kaim
42e4f168d1 appveyor build status badge for master 2018-01-25 12:22:15 -05:00
Sean Kaim
7c98f2809c add appveyor.yml 2018-01-25 12:14:01 -05:00
Sean Kaim
e68b529a34 Merge branch 'develop' of https://github.com/mRemoteNG/mRemoteNG into develop 2018-01-25 12:13:29 -05:00
Sean Kaim
1ed4987277 Update appveyor.yml 2018-01-25 12:13:26 -05:00
Sean Kaim
a5d1f0995c appveyor badge for develop branch 2018-01-25 12:11:28 -05:00
Sean Kaim
b6951df72e fix link for translations 2018-01-25 11:09:15 -05:00
David Sparer
b1c31048a9 trim rdp file parts for safety 2018-01-24 10:47:07 -06:00
Fyers
e13faa1b66 fixed putty session name encoding #800 2018-01-06 19:54:14 +01:00
Sean Kaim
9349aca76e remove credit
hotkey selection control is no lnger used
2018-01-03 12:13:58 -05:00
Sean Kaim
4946726d1e appveyor config 2018-01-02 17:06:23 -05:00
Sean Kaim
72c7800c02 update nunit 2018-01-02 16:11:33 -05:00
Sean Kaim
e4c35b2ba2 CitrixReceiver.exe - for appveyor 2018-01-02 15:47:19 -05:00
Sean Kaim
bccb885508 ignore cred repo tests 2018-01-02 15:43:53 -05:00
David Sparer
7b7e0e0522 Merge branch 'develop' into develop 2018-01-02 08:22:00 -06:00
Camilo Alvarez
991d1d82b8 Misc fixes
- Clear redundant settings form app.config
- Deleted DesignModeTest as ThemeManager can now be used in design time without adjustements, removed usage from all custo elements
- Instance _themeManager in NGNumericUpDown at object creation to avoid null reference errors
- Errorsform instancing is now defaulted to DockBottomAutoHide  in frmMain
-Fix missing panel at startup by adding a blank panel, temporary solution as magic library is beign phased out
2017-12-26 12:15:11 -05:00
David Sparer
5832205624 update credits and changelog for #829 2017-12-18 14:20:39 -06:00
David Sparer
8aeea4d212 added option for enabling utf8 encoding of the rdp "load balance info" property 2017-12-18 14:13:21 -06:00
David Sparer
e1934cd1b0 Merge pull request #829 from sirLoaf/AzureLoadBalanceInfoFix
Fix for connecting to azure instances (cloud services). LoadBalanceIn…
2017-12-18 13:27:32 -06:00
Camilo Alvarez
056cce2f97 Removed windings fonts
Now using unicode for better compatibility in special characters for drawing controls
2017-12-13 09:34:27 -03:00
David Sparer
61f6463e59 rearranged a few items on the sql server page 2017-12-12 09:47:27 -06:00
David Sparer
a929552c3d fixed a bad merge that I made 2017-12-12 09:44:08 -06:00
David Sparer
10cd02d2e7 Merge pull request #836 from dekelMP/develop
SQL Read Only Option
2017-12-12 09:42:23 -06:00
David Sparer
afac50c18f Merge branch 'develop' into develop 2017-12-12 09:32:49 -06:00
David Sparer
24ade35df8 Merge branch 'develop' into develop 2017-12-12 09:30:42 -06:00
David Sparer
d50341ff8e updated changelog 2017-12-12 09:25:14 -06:00
David Sparer
54bd6d5336 added option to lock the toolbar controls
resolves #838
2017-12-12 09:22:33 -06:00
Camilo Alvarez
7bc26787db Reorganize menus, fix empty values in design mode 2017-12-12 08:47:35 -03:00
Camilo Alvarez
e923f816a4 fix installer version missing themes
fixed the installed veresion missing themes, added more controls for theme failure to load
2017-12-11 08:29:18 -03:00
Dekel Asaf
c6e4439ab9 Added check for SQL read only in SqlDataProvider 2017-12-10 22:22:38 +02:00
Dekel Asaf
94f66da84e Added SQL Read Only option
Avoid saving when SQL Read Only check box is checked
2017-12-10 21:59:57 +02:00
Dekel Asaf
384399c1c8 Merge develop from upstream 2017-12-10 21:13:50 +02:00
Dekel Asaf
7bac63310f Merge remote-tracking branch 'upstream/develop' into develop 2017-12-10 21:07:03 +02:00
David Sparer
f85de2c960 set release date of 1.76 alpha 1 in changelog 2017-12-08 15:14:43 -06:00
Fabio Laib
173b516270 Fix for connecting to azure instances (cloud services). LoadBalanceInfo requires a UTF8 encoded string 2017-12-06 12:52:51 +01:00
David Sparer
3af25610b8 Merge branch 'master' into develop
# Conflicts:
#	CHANGELOG.TXT
#	mRemoteV1/App/Startup.cs
#	mRemoteV1/Properties/AssemblyInfo.cs
2017-12-05 08:00:23 -06:00
David Sparer
0898ed8c00 began implementing csv deserializing 2017-12-04 22:00:18 -06:00
David Sparer
0d0b056f6b resolves #561 2017-12-03 16:41:17 -06:00
David Sparer
3f6b572f51 added ability to launch mremoteng from last screen of installer 2017-12-03 15:46:11 -06:00
David Sparer
1a2b906e0a bump assembly version to 1.75.7012 2017-12-01 10:18:52 -06:00
David Sparer
d48331b706 Merge branch '1.75.7012' 2017-12-01 10:17:06 -06:00
David Sparer
d95cc62c8e update changelog 2017-12-01 10:15:43 -06:00
David Sparer
f04aa78fd7 resolves #803 2017-12-01 10:06:33 -06:00
David Sparer
b03d355d69 connection's inheritance is now correctly disabled when rootnode is the parent 2017-11-30 12:29:56 -06:00
David Sparer
834e7c1abb Merge branch '1.75.7012' into develop 2017-11-24 08:33:12 -06:00
David Sparer
c37caa95a4 resigned putty with new code signing cert 2017-11-24 08:32:44 -06:00
David Sparer
3ffcc5d5ba fixed bug where our custom drag sink was being overwritten
closes #814
2017-11-21 12:40:22 -06:00
Sean Kaim
52fa87a7c6 minor refactor 2017-11-20 14:54:38 -05:00
Sean Kaim
0ddcfbeed7 Merge branch 'develop' of https://github.com/mRemoteNG/mRemoteNG into develop 2017-11-20 14:36:33 -05:00
Sean Kaim
a2f56682e6 streamlined error handling for Authenticode check 2017-11-20 14:36:31 -05:00
David Sparer
edc4af6da5 fixed bug where user/domain/pass inheritance wasnt being shown
this was due to some credential manager work that didnt get rolled back
2017-11-20 12:18:00 -06:00
David Sparer
283354d4d9 fixed bug where closing the options window would always prompt for a connections file to load 2017-11-19 15:00:55 -06:00
David Sparer
c3fbc573e2 forgot a thing... 2017-11-19 14:49:30 -06:00
David Sparer
e7f0091b48 made a ui buttons text translatable 2017-11-19 14:48:54 -06:00
David Sparer
446327dffd Merge pull request #809 from mRemoteNG/338_connection_tree_filtering
Implemented connection search filtering feature
2017-11-19 14:40:42 -06:00
David Sparer
03a0449662 updated changelog 2017-11-19 10:11:44 -06:00
David Sparer
3fb72dfc24 implemented search filtering feature 2017-11-19 09:13:44 -06:00
David Sparer
7c4ccde69b updated credits and changelog 2017-11-17 15:04:05 -06:00
David Sparer
167a50816f Domain is now available on connections with protocol Int App
Closes #485
2017-11-15 11:27:56 -06:00
David Sparer
a753b868e6 Updated urls for the forum to point to reddit
Closes #608
2017-11-15 11:19:26 -06:00
David Sparer
0958c9da44 minor refactoring. removed need for compiler conditionals 2017-11-15 10:52:50 -06:00
David Sparer
bdee98feb0 Merge pull request #799 from mRemoteNG/340_save_connections_on_edit
Implemented option for saving connections on edit
2017-11-15 10:13:25 -06:00
David Sparer
6f9c76c9ba SaveConnectionsAfterEveryEdit defaults to true 2017-11-15 10:10:03 -06:00
David Sparer
c4fdf075b3 Merge branch '644_target' into develop
# Conflicts:
#	mRemoteV1/App/Windows.cs
#	mRemoteV1/UI/Forms/frmMain.Designer.cs
#	mRemoteV1/UI/Forms/frmMain.cs
#	mRemoteV1/UI/Forms/frmMain.resx
#	mRemoteV1/mRemoteV1.csproj
2017-11-15 10:06:15 -06:00
David Sparer
0a19874ef3 Merge pull request #644 from mrwulf/Multi-SSH
Multi ssh
2017-11-15 07:51:30 -06:00
David Sparer
39af07cc22 Merge branch '644_target' into Multi-SSH 2017-11-15 07:51:10 -06:00
David Sparer
7ac3a264da Merge branch '644_target' into Multi-SSH 2017-11-15 07:50:39 -06:00
David Sparer
8951b45a39 Merge pull request #805 from pablomh/patch-1
Fix typo and minor nits
2017-11-15 07:38:29 -06:00
pablomh
a4e4315002 Fix typo and minor nits
- s/approprite/appropriate .
- Add a dot at end of sentence.
- Fix </li> formatting to comply with existing style.
2017-11-15 10:20:28 +01:00
David Sparer
3a9d108b76 Merge pull request #801 from DamianBis/797
issue #797 removed duplicate strings & fixed spelling
2017-11-14 14:53:28 -06:00
Sean Kaim
651a4ae2bf remove version #'s
Closes #615
2017-11-13 15:47:00 -05:00
Sean Kaim
75007db630 Changes from #708
Closes #708
Closes #197
2017-11-13 14:58:28 -05:00
Unknown
d0adfebf7a issue #797 removed duplicate strings & fixed spelling 2017-11-13 21:48:02 +11:00
David Sparer
f9e8496d3f moved event handler for saving connections on edit 2017-11-12 16:14:34 -06:00
David Sparer
f583b741d4 implemented save connections on edit 2017-11-12 15:14:50 -06:00
David Sparer
1d80b166b1 began implementing plumbing for saving connections on edit 2017-11-12 15:06:18 -06:00
David Sparer
42e59ee564 moved RemoteConnectionsSyncronizer references from Runtime to ConnectionsService 2017-11-12 14:30:23 -06:00
David Sparer
e2c82086be more refactoring. most connection saving/loading calls now go through the connection service class 2017-11-12 14:23:00 -06:00
David Sparer
e9d47f046d removed code for saving to .vre format
we havent supported this for a long time
2017-11-12 11:39:15 -06:00
David Sparer
4acc73ac19 did some refactoring to consolidate connection loading into a single service 2017-11-12 11:32:19 -06:00
David Sparer
96c27efa68 added setting for saving connections file on edit 2017-11-12 09:37:11 -06:00
David Sparer
52ad4435ac resolves #468 2017-11-12 08:22:06 -06:00
David Sparer
b6426dd202 the settings editor decided these should be in here... they must have accidentally been wiped away by a merge 2017-11-12 07:57:37 -06:00
David Sparer
abbdbdbc18 fixed bug where window text wasnt updated when choosing to create new connection from dialog popup 2017-11-11 21:44:36 -06:00
David Sparer
9ad6c20d42 Merge pull request #798 from mRemoteNG/sql_test_connection
Added way to test sql connections on sql options page
2017-11-11 21:18:42 -06:00
David Sparer
d96c854756 Merge branch 'develop' into sql_test_connection
# Conflicts:
#	mRemoteV1/Resources/Language/Language.Designer.cs
#	mRemoteV1/Resources/Language/Language.resx
#	mRemoteV1/mRemoteV1.csproj
2017-11-11 21:16:39 -06:00
David Sparer
ac4c578396 Merge pull request #786 from brucetp/MR-421_The_startup_connection_file_could_not_be_loaded
MR-421 The startup connection file could not be loaded
2017-11-11 21:07:46 -06:00
David Sparer
5d527c8e72 Merge branch 'develop' into MR-421_The_startup_connection_file_could_not_be_loaded 2017-11-11 20:48:26 -06:00
David Sparer
15ef6c77dc Merge branch 'develop' into MR-421_The_startup_connection_file_could_not_be_loaded 2017-11-11 20:41:25 -06:00
David Sparer
8b990ac273 improved external tools window
- can edit items in listview
- improved data binding between model and ui
- delete and launch buttons disabled if no item selected
- item selection updates when deleting/adding item
2017-11-11 20:37:37 -06:00
David Sparer
99ffe9eac2 made ExternalTool implement INotifyPropertyChanged
Also codified the rule that "WaitForExit" cannot be set at the same time as "TryIntegrate". TryIntegrate will always be settable, but WaitForExit will have to defer its state.
2017-11-11 18:20:36 -06:00
David Sparer
3d8dda23ce added a AddRange method to FullyObservableCollection
more efficient collection updating - it only raises 1 event for the whole batch
2017-11-11 18:18:34 -06:00
David Sparer
4fe5df51fa Merge branch 'pr706_target' into develop
# Conflicts:
#	mRemoteV1/Config/Settings/SettingsSaver.cs
#	mRemoteV1/Tools/ExternalTool.cs
#	mRemoteV1/UI/Window/ExternalToolsWindow.Designer.cs
#	mRemoteV1/UI/Window/ExternalToolsWindow.cs
#	mRemoteV1/UI/Window/ExternalToolsWindow.resx
2017-11-11 13:36:19 -06:00
David Sparer
d7d6aa78f5 Merge pull request #706 from pedro2555/custom-workdir-external-tool
[RFC] Added support for custom working directory in External Tool
2017-11-11 12:07:26 -06:00
David Sparer
3646cb0ce6 Removed flicker when external tool toolbar entries are changed 2017-11-11 11:40:08 -06:00
David Sparer
e2bd1b8ba3 Merge pull request #775 from brucetp/MR-152_Add_to_External_Tools_Toolbar_option
MR 152 add to external tools toolbar option
2017-11-11 11:31:34 -06:00
David Sparer
b061f7e405 Merge pull request #704 from pedro2555/fix-portable-settings-cleaned
Fixes settings save location on portable version
2017-11-11 11:10:36 -06:00
David Sparer
78f38f1a48 fixed tests 2017-11-11 10:50:32 -06:00
David Sparer
eeec81bf3b added way to test sql db connection in options page 2017-11-11 10:31:16 -06:00
David Sparer
4682096d98 refactored sqldatabaseconnector to require connection details in ctor
created factory for creating SqlDatabaseConnectors from settings data for convenience
2017-11-11 10:31:15 -06:00
Bruce Peterson
ca369e2df5 Merge Conflict 2017-11-11 08:45:20 -05:00
Bruce Peterson
1a6efebea4 Resolving Merge Conflicts 2017-11-11 08:35:01 -05:00
David Sparer
bba3a45f0f Merge pull request #796 from farosch/develop
Further design optimizations on settings
2017-11-10 17:34:07 -06:00
Faryan Rezagholi
de83a273a9 Further optimazations on settings
Small layout fixes to frmOptions and option pages:
-Unified button heights
-fixed tab order on some option pages elements
-Resized "Launch PuTTY"-button under  Options>Advanced to display PuTTY Icon in full size
-Resized main panel in frmOption to fit size of option panes
-Reduced size of bottom panel in frmOptions to waste less space
-Fixed distance to form border of"OK" and "Cancel" buttons in frmOptions
-Unified all border styles of panels in frmOptions to none. (This makes the design look a little bit more flat and cleaner, also removes the strange edge  in the title bar where the two panels meet)
-set width of deviders on frmOptions to 1px (also looks a lot cleaner)
2017-11-10 18:52:04 +01:00
David Sparer
ba2954baf4 lowered sql connection schema version back down to 2.6 (pre-credential manager) 2017-11-10 08:44:19 -06:00
David Sparer
9e4f2ee3e7 resolves #419. removed all string collation directives.
Previously, all varchars had "COLLATE SQL_Latin1_General_CP1_CI_AS". This was done to better support international users
2017-11-10 08:13:41 -06:00
David Sparer
0c6ad58bca made file data provider tests safer for concurrent execution in jenkins
When multiple builds had to run, these tests would sometimes fail due to the file system being a shared resource.
Each test now creates its own random folder and cleans it up after the test runs
2017-11-10 08:03:03 -06:00
Bruce Peterson
8319ec988f Added File Not Found test 2017-11-09 23:03:16 -05:00
David Sparer
fc65476918 Merge pull request #791 from farosch/develop
Rearranged settings elements
2017-11-09 20:17:55 -06:00
David Sparer
42b45408ed readded tests that got missed in a merge 2017-11-09 19:47:42 -06:00
David Sparer
792f0b5c7a Merge pull request #754 from brucetp/MR-225_Can_not_import_RDCMan_v2.7
MR-225 Can not import RDCMan v2.7
2017-11-09 19:20:13 -06:00
David Sparer
b68e0600bd safer test cleanup 2017-11-09 18:48:59 -06:00
David Sparer
a667502836 connection tree context menu now gets set. Why was this line missing? bad merge? 2017-11-09 15:37:23 -06:00
Faryan Rezagholi
254d545e58 Rearranged settings elements
Rearranged some elements from the settings to prevent that translated strings overlap with these elements. Issue #784
2017-11-09 18:19:13 +01:00
David Sparer
cdde4b0cc9 Merge branch 'develop' into fix-portable-settings-cleaned 2017-11-09 08:40:03 -06:00
Bruce Peterson
0346497f45 Added dialogs and options for new config, path, or importing a file 2017-11-08 21:12:41 -05:00
David Sparer
af3527d6cf updated the download shield icons 2017-11-08 15:20:22 -06:00
David Sparer
08186d98f5 Merge branch 'develop' into MR-225_Can_not_import_RDCMan_v2.7 2017-11-08 12:04:23 -06:00
David Sparer
9b8b01515c Merge branch 'develop' into MR-225_Can_not_import_RDCMan_v2.7 2017-11-08 11:58:34 -06:00
David Sparer
49e5b71235 Merge branch 'master' into develop
# Conflicts:
#	CHANGELOG.TXT
#	mRemoteNGTests/mRemoteNGTests.csproj
#	mRemoteV1/App/Startup.cs
#	mRemoteV1/Connection/Protocol/IntegratedProgram.cs
#	mRemoteV1/Properties/AssemblyInfo.cs
#	mRemoteV1/Resources/Language/Language.Designer.cs
#	mRemoteV1/Resources/Language/Language.resx
#	mRemoteV1/UI/Controls/ConnectionTree/ConnectionTree.cs
#	mRemoteV1/UI/Forms/frmMain.cs
#	mRemoteV1/UI/Window/ConnectionTreeWindow.cs
2017-11-08 11:52:10 -06:00
David Sparer
f63980f122 Merge branch 'hotfix11' 2017-11-07 20:22:00 -06:00
David Sparer
9cee827f6b updated changelog 2017-11-07 20:21:13 -06:00
David Sparer
9c57976906 singleton instance should be given focus 2017-11-07 20:20:24 -06:00
David Sparer
ef5b09b6fa fix issue where /resetpanels did nothing 2017-11-07 16:35:25 -06:00
David Sparer
469b4224dc fixed bug with resetting window position
resetting window position now places app in center of main monitor like it should
2017-11-07 10:05:18 -06:00
David Sparer
afc410cfe6 fixed #778
custom cons param bug introduced in commit f73c9c9d
2017-11-07 08:21:32 -06:00
David Sparer
b686bc1112 Update mRemoteNGTests.csproj
removed unit test I accidentally re-added
2017-11-06 10:17:33 -06:00
David Sparer
25bee76fff Merge branch 'develop' into MR-225_Can_not_import_RDCMan_v2.7 2017-11-06 10:14:35 -06:00
David Sparer
98a8b9944e Merge branch 'develop' into MR-225_Can_not_import_RDCMan_v2.7 2017-11-06 10:09:49 -06:00
Bruce Peterson
66745d2ddf Correcting Merge conflicts with TESTS project file. 2017-11-06 10:15:10 -05:00
Bruce Peterson
cf9e1fe54c Attempting to correct merge conflicts 2017-11-06 09:56:10 -05:00
David Sparer
9bf59bed2f update jenkins build tools paths 2017-11-06 08:08:49 -06:00
Bruce Peterson
48a9968d20 Update the External Tools Toolbar based upon the collection 2017-11-05 22:01:49 -05:00
Bruce Peterson
d23355b147 Bug Fix on External Tools column header 2017-11-05 20:34:14 -05:00
Bruce Peterson
83ec5658c4 Added Show on Toolbar to External Tools Dialog 2017-11-05 19:53:06 -05:00
David Sparer
aed509155b inheritance button should be disabled when parent is root connection node 2017-11-05 09:04:10 -06:00
David Sparer
0120762dbe putty sessions should not have the inheritance button 2017-11-05 08:41:13 -06:00
David Sparer
85b67ecd0b fixed bug in connection tree context menu
right clicking in white space (no connection tree item selected) made the context menu appear with all options enabled. No context menu should appear in that case
2017-11-05 07:24:28 -06:00
David Sparer
7451383c24 putty nodes and root putty node should not have context menu items "import" or "export" 2017-11-05 07:09:17 -06:00
David Sparer
88d735ed56 resolved bug that would sometimes disable connection tree hot keys
bug was introduced in #652. I made sure that the original issue is still resolved
2017-11-04 22:04:08 -05:00
David Sparer
7a002e4b89 updated changelog 2017-11-04 11:45:14 -05:00
David Sparer
01ad0b4875 safer connection tree gui updating 2017-11-03 15:10:35 -05:00
David Sparer
4defa5fa9c Resolves #758
introduced in commit 8a3e3704
2017-11-03 15:09:18 -05:00
David Sparer
32a1dd64ab Merge branch 'master' into develop
# Conflicts:
#	CHANGELOG.TXT
#	CREDITS.TXT
#	README.MD
#	Tools/postbuild_installer.ps1
#	Tools/set_LargeAddressAware.ps1
#	mRemoteNGTests/mRemoteNGTests.csproj
#	mRemoteNGTests/packages.config
#	mRemoteV1/App/Logger.cs
#	mRemoteV1/App/Runtime.cs
#	mRemoteV1/App/Startup.cs
#	mRemoteV1/Connection/DefaultConnectionInfo.cs
#	mRemoteV1/Connection/Protocol/IntegratedProgram.cs
#	mRemoteV1/Connection/Protocol/PuttyBase.cs
#	mRemoteV1/Messages/MessageCollector.cs
#	mRemoteV1/Properties/AssemblyInfo.cs
#	mRemoteV1/Resources/Language/Language.Designer.cs
#	mRemoteV1/Resources/PuTTYNG.exe
#	mRemoteV1/Tools/ConnectionsTreeToMenuItemsConverter.cs
#	mRemoteV1/Tools/ExternalToolArgumentParser.cs
#	mRemoteV1/Tools/IeBrowserEmulation.cs
#	mRemoteV1/Tools/NotificationAreaIcon.cs
#	mRemoteV1/Tools/PortScanner.cs
#	mRemoteV1/UI/Controls/ConnectionTree/ConnectionTree.cs
#	mRemoteV1/UI/Controls/ConnectionTree/NameColumn.cs
#	mRemoteV1/UI/Forms/OptionsPages/ConnectionsPage.cs
#	mRemoteV1/UI/Forms/frmMain.cs
#	mRemoteV1/UI/Window/AboutWindow.cs
#	mRemoteV1/UI/Window/PortScanWindow.cs
2017-11-03 11:15:20 -05:00
David Sparer
5ce8171f12 updated changelog 2017-11-01 15:29:54 -05:00
David Sparer
e3121cb043 bumped assembly version 2017-11-01 15:14:55 -05:00
David Sparer
99e52ab0b5 updated changelog 2017-10-31 15:08:06 -05:00
David Sparer
2b672dc4fc Fixed another minor issue with external tools 2017-10-31 14:07:18 -05:00
David Sparer
6db7adf900 re-implemented autoresizecolumn in the connection tree
I did this in order to get around a weird bug where the connection tree would sometimes be set to a very small width (making it not visible)
2017-10-31 13:10:49 -05:00
David Sparer
65782285a3 added a few unit tests for integrated programs 2017-10-31 09:56:48 -05:00
David Sparer
64bd5a93ad resolves #761 2017-10-31 08:11:57 -05:00
David Sparer
93d7ef48eb removed unnecessary specflow file 2017-10-30 15:30:06 -05:00
Sean Kaim
a90b7abff7 proper xml formatting 2017-10-30 15:10:08 -04:00
Sean Kaim
a479b4b109 fix line terminators 2017-10-30 14:57:40 -04:00
Sean Kaim
326e1118da more nuget package updates 2017-10-30 14:57:29 -04:00
Sean Kaim
90f1e324ce update gecko 2017-10-30 14:39:20 -04:00
Sean Kaim
41e0228c03 re-target for .net 4.6 2017-10-30 13:42:26 -04:00
Sean Kaim
e72691a164 Merge pull request #760 from brucetp/MR-747_PuttySessions.Watcher.StartWatching_failed._Not_found
MR-747 putty sessions.watcher.start watching failed. not found
2017-10-30 12:28:24 -04:00
Bruce Peterson
7b1d2a0b38 Attempting to start Putty FileSystemWatcher on a folder that doesn't exist. 2017-10-30 12:03:21 -04:00
David Sparer
470d76faab added another valid microsoft cert thumbprint 2017-10-30 10:30:03 -05:00
Sean Kaim
aec9a75bba additional log adjustments 2017-10-30 11:27:43 -04:00
Sean Kaim
fcbac22577 add some details to StackTrace messages 2017-10-30 11:23:29 -04:00
Bruce Peterson
1153a5dd3c Putty config file path was incorrectly parsed 2017-10-30 11:22:26 -04:00
David Sparer
04fccad19c removed jenkins build step to publish test reports
they seem ot be failing a lot lately and its really not worth the trouble
2017-10-29 17:41:49 -05:00
David Sparer
1bce756bd6 Merge pull request #742 from mRemoteNG/revert_credmanager
Reverted credential manager functionality
2017-10-29 17:30:29 -05:00
David Sparer
68f052efcb Merge branch 'hotfix10' 2017-10-29 12:44:53 -05:00
David Sparer
4a8baf79fb bumped assembly version 2017-10-29 12:44:18 -05:00
David Sparer
499ac0295e fixed one case where visible connection tree width wasnt being updated correctly 2017-10-29 12:33:29 -05:00
David Sparer
29c422501a resolves #756 2017-10-29 12:17:18 -05:00
David Sparer
8efe74f614 bump assembly version 2017-10-28 16:25:08 -05:00
David Sparer
4e0f12f4b9 Merge branch 'Patch9' 2017-10-28 15:55:09 -05:00
David Sparer
cbd3a61259 updated changelog and credits 2017-10-28 15:48:16 -05:00
David Sparer
2406a7be49 fixes #600 2017-10-28 15:12:30 -05:00
Bruce Peterson
87322a36ca Included Test Cases for RDCMan v2.7 2017-10-27 23:36:36 -04:00
Bruce Peterson
bbe4d28a40 Modified Conn Manager Deserializer to import from RDCMan v2.7 2017-10-27 23:35:30 -04:00
David Sparer
dd40b56047 Merge pull request #728 from dekelMP/Patch9
Fixed #529
2017-10-27 18:55:22 -05:00
Sean Kaim
f14a0d5ee3 Merge pull request #710 from pedro2555/issue#649-cannot-integrate-cli-apps
Fixed integrated cli apps?
2017-10-19 09:54:07 -04:00
David Sparer
2994419381 revert confcons version back to 2.6 when serializing 2017-10-17 13:55:03 -05:00
David Sparer
81f06026d0 no longer try to load credential repo list 2017-10-17 13:54:39 -05:00
David Sparer
2df9441c20 reverted credential manager functionality as best I could 2017-10-16 14:39:41 -05:00
Sean Kaim
47190d9c02 Update ISSUE_TEMPLATE.md 2017-09-27 13:58:05 -04:00
Dekel Asaf
e0383d6c59 Fixed #529 2017-09-22 20:57:46 +03:00
Dekel Asaf
a436d9c070 fixed #529 2017-09-22 20:54:47 +03:00
Pedro Rodrigues
eeabcd94ed re-removed WaitForInputIdle
later consideration
2017-09-19 23:07:55 +01:00
Sean Kaim
8a3e37041a remove unnecessary converts 2017-09-18 17:37:04 -04:00
Sean Kaim
a1e9aefeb2 Merge branch 'Patch9' of https://github.com/mRemoteNG/mRemoteNG into Patch9 2017-09-18 10:02:09 -04:00
Sean Kaim
670cb51352 unnecessary convert.tostring's 2017-09-18 10:02:07 -04:00
Sean Kaim
a43dff88c5 Merge pull request #715 from pedro2555/492
fallback to empty credentials settings in external apps
2017-09-18 09:58:24 -04:00
David Sparer
fb3c87359f Merge pull request #724 from mRemoteNG/482_proposed_fix
Default connection password must be decrypted before first use
2017-09-18 08:48:06 -05:00
kmscode
a49dec7e6d just claify a comment. 2017-09-17 14:57:56 -04:00
kmscode
a7156235c3 puttyng 0.70
fixes #635
2017-09-17 14:22:36 -04:00
David Sparer
3cb52ba3f1 rearranged program init to ensure ConDefaultPassword is decrypted before assignment to DefaultConnectionInfo object 2017-09-17 11:10:32 -05:00
Sean Kaim
024f1a7047 minor code clean up 2017-09-15 17:37:28 -04:00
Sean Kaim
b77c7e922f Merge pull request #720 from pedro2555/676
First startup ignores cons param
2017-09-15 17:33:22 -04:00
Sean Kaim
9335c4706b fix editbin post build on jenkins 2017-09-15 16:52:42 -04:00
Sean Kaim
e09a9dabd6 update nuget packages 2017-09-15 15:42:28 -04:00
Pedro Rodrigues
e4e2f50015 Saving settings before exiting, and avoid early return 2017-09-15 20:38:34 +01:00
Sean Kaim
61865050c7 minor code cleanup 2017-09-15 15:34:54 -04:00
Sean Kaim
05d90c26ff Merge pull request #709 from pedro2555/issue#335
Changed quick connect connection icon image to play icon when there a…
2017-09-15 15:31:16 -04:00
Sean Kaim
43cdb29eb6 we don't need to look in ProgramData 2017-09-15 15:28:29 -04:00
Pedro Rodrigues
87ff1cb2b2 preparing ConsParam, and use Path.Combine in favor of string concatenation 2017-09-15 19:36:00 +01:00
Pedro Rodrigues
f73c9c9d02 Refactored cons param, corrected fallback override on first initialization.
Fixes 676
2017-09-15 19:17:08 +01:00
Sean Kaim
d15e444cb7 code clean up / null checks & logging 2017-09-15 13:58:32 -04:00
Pedro Rodrigues
2eff6c3dc4 if ( == false) is confusing, no need for it, if no else then ! 2017-09-15 18:49:06 +01:00
David Sparer
41fe211aec resolved #610 2017-09-15 08:07:12 -05:00
David Sparer
2acfa6d88d added another valid MS certificate thumbprint for build tools 2017-09-14 14:57:40 -05:00
Pedro Rodrigues
348b0c728c fallback to empty credentials settings in external apps #492 2017-09-14 20:16:53 +01:00
Pedro Rodrigues
ece2bda680 Credits to crdx, just found there's a proper place for that 2017-09-13 21:48:42 +01:00
Pedro Rodrigues
875e1573a4 Fixed integrated cli apps?
What was WaitForInputIdle() then?
2017-09-11 01:01:18 +01:00
Pedro Rodrigues
926dc868ef Changed quick connect connection icon image to play icon when there are open connections 2017-09-10 22:42:29 +01:00
Pedro Rodrigues
4a69ff6428 Added option to run external tool with elevated privileges 2017-09-10 19:33:35 +01:00
Pedro Rodrigues
75cf17e2ce Added browse button for ExternalTool working directory
Fixed minor bug on browse button for external tool filename, which was not saving upon selecting a new file, but rather relying on any other thing triggering the update on the actual ExternalTool instance.
2017-09-10 00:26:37 +01:00
Pedro Rodrigues
af3f66a5fa Wired up saver and loader 2017-09-10 00:11:26 +01:00
Pedro Rodrigues
61adf1f784 Wired up the form 2017-09-10 00:05:18 +01:00
Pedro Rodrigues
1d0311a194 Added controls for Working Directory option on ExternalToolsWindow 2017-09-10 00:00:08 +01:00
Pedro Rodrigues
bda9974eb8 A bit of house cleaning before adding new controls to ExternalToolsWindow 2017-09-09 23:39:10 +01:00
Pedro Rodrigues
0306296ae9 Added support for custom working directory in ExternalTool class
Not sure about l79 and argParser
2017-09-09 21:35:09 +01:00
kmscode
86ecb38ae2 minor code cleanup 2017-09-09 15:36:53 -04:00
Sean Kaim
f3ca58111c Merge pull request #705 from pedro2555/fix-proposal-issue#665
Fix proposal for issue 'Can not add new connection or new folder'
2017-09-09 15:34:44 -04:00
kmscode
3124d3ca1c minor code cleanup 2017-09-09 15:10:33 -04:00
Sean Kaim
9012506209 Merge pull request #700 from pedro2555/fix-write-log-file-option
Prevented log file creation when writeLogFile option is not set
2017-09-09 15:01:06 -04:00
kmscode
adb874ca74 avoid writing to the log when configured not to
plus some minor optimization.
2017-09-09 14:59:42 -04:00
Sean Kaim
f006a8aab6 Merge pull request #702 from jotatsu/develop
fix theme ui
2017-09-09 14:46:55 -04:00
kmscode
6aaf2f031b find editbin for vs 2017 community
updated acceptable authenticode for editbin.
2017-09-09 14:26:38 -04:00
Pedro Rodrigues
1669377938 Use root node when creating new connection/folder and no node is selected 2017-09-09 17:17:23 +01:00
Pedro Rodrigues
da45abaafb Applied PortableSettingsProvider.patch cleaned 2017-09-09 16:03:06 +01:00
CamAlvar
2b942f03b2 fix theme ui
- Fixed bug in ngcombobox that wasnt rendering DisplayMember elements text in theme mode
- Change in ngbutton icon placement for long text button names
- Verify SSH and notifications file transfer for theme, its ok
- Changed ConnectionTree to elipse text based on the width of the panel
2017-09-07 08:10:49 -05:00
Sean Kaim
985b5e6724 Merge pull request #698 from pedro2555/develop
README.md overhaul
2017-09-06 15:56:11 -07:00
Pedro Rodrigues
198c235765 Prevent log file writing when option is not set 2017-09-06 22:19:32 +01:00
Pedro Rodrigues
e82ee97666 Merge branch 'develop' into develop 2017-09-06 15:32:12 +01:00
Pedro Rodrigues
8be7dac209 README.md overhaul
Added titles to separate concerns.
Included quick access links to relevant wiki pages
Hopefully there is now everything one may be looking for in the README.
2017-09-06 15:28:24 +01:00
Sean Kaim
d2e35d8b2c Merge pull request #692 from mRemoteNG/pr/671
Pr/671 fixes
2017-09-05 10:02:10 -07:00
Sean Kaim
5938bc72b4 jenkins doesn't like this... 2017-09-05 12:59:07 -04:00
Sean Kaim
23860e5897 Merge pull request #671 from jotatsu/develop
Theming system revamp
2017-09-05 09:55:13 -07:00
Sean Kaim
11adbed079 code clean up 2017-09-05 12:50:32 -04:00
Sean Kaim
07eb45ad76 fix some of my merge fix boo boos 2017-09-05 11:45:58 -04:00
Sean Kaim
726e908b5a Merge branch 'develop' into develop 2017-09-05 08:40:25 -07:00
Sean Kaim
526c6d8852 fix virtual call in constructor 2017-09-05 11:06:12 -04:00
Sean Kaim
6d2be2e0a1 revert the few things that jenkins doesn't like 2017-08-21 17:48:36 -04:00
Sean Kaim
a8a9423ab0 ok... code clean up again... 2017-08-21 17:39:33 -04:00
Sean Kaim
78a82be4a0 Revert "code clean up"
This reverts commit 1acdb27996.
2017-08-21 16:54:01 -04:00
Sean Kaim
1acdb27996 code clean up 2017-08-21 16:48:20 -04:00
David Sparer
66f2c55343 Merge remote-tracking branch 'origin/master' into Patch9 2017-08-10 17:19:29 -05:00
David Sparer
0f3fa86bed Merge pull request #677 from mRemoteNG/improve_publish_automation
Improve publish automation
2017-08-10 17:18:19 -05:00
David Sparer
e5c2cfd243 fix github release body builder function 2017-08-10 16:35:17 -05:00
David Sparer
1a7ce13ec3 fixed error in test project 2017-08-06 10:40:36 -05:00
David Sparer
b4c535c76a can now delete multiple credentials 2017-08-06 10:32:48 -05:00
David Sparer
1c7592c707 Merge branch '659_dont_reference_creds_directly' into develop 2017-08-05 19:07:42 -05:00
David Sparer
e4f8f96b83 unloaded credentials now display a message 2017-08-05 19:06:27 -05:00
CamAlvar
105baa0557 Improved no-theme handlig for missing /themes folder, target to unit test 2017-08-05 18:22:13 -05:00
David Sparer
ec554dae2e cred record drop down now works
you can select the credential associated to a connection via a property window drop down
2017-08-05 16:35:21 -05:00
David Sparer
da86f113b8 fixed copyfrom bug
fixed a bug where an exception would be thrown if we tried to set a property that only exposed a getter
2017-08-05 16:09:30 -05:00
David Sparer
ef1c397f11 updated changelog 2017-08-05 11:02:16 -05:00
David Sparer
12e0cc3d7b Merge pull request #652 from mrwulf/Issue550
Issue #550 Fix - Don't propagate edit if it didn't come from the menu item
2017-08-05 10:59:06 -05:00
David Sparer
ff6bb6ebb0 update changelog and credits 2017-08-05 10:52:36 -05:00
David Sparer
6b78215b2e Merge pull request #651 from mrwulf/Issue176
Only do ActivateConnection when one of our known controls wasn't clicked (Addresses Issue #176)
2017-08-05 10:45:16 -05:00
CamAlvar
29a25b708c added comments to code, language location to new user strings, checked diff for merge 2017-08-04 19:02:28 -05:00
CamAlvar
376f22ce08 Finish wiring the options window, creation and modifying of themes. Added script to output themes at compilation 2017-08-04 01:07:22 -05:00
CamAlvar
6f25a72fb7 Added defaulting disable theming, wiring the theme manager with the option page 2017-08-02 22:08:55 -05:00
David Sparer
ec50078f18 minor test cleanup
did some small resharper cleanup. refactored the compiler conditionals to be more refactor-safe
2017-07-31 09:55:59 -05:00
David Sparer
c4900f5a66 fixed cred id showing up in config window 2017-07-29 22:07:51 -05:00
David Sparer
edb5dff064 bit of cleanup 2017-07-29 21:49:29 -05:00
David Sparer
3961e1844c Maybe<T> now calls T.ToString() 2017-07-29 11:46:16 -05:00
David Sparer
d09ecac35d added a MaybeParse extension
this makes parsing guids much nicer. no dealing with out vars or try blocks
2017-07-29 11:45:05 -05:00
Sean Kaim
5d9a02657f Fixes #658
Also fix a comment.
2017-07-28 15:25:56 -04:00
David Sparer
792edd9146 refactored a bit to use the Maybe pattern
implemented via ienumerable<t> so we can make use of the existing ienum monads
2017-07-28 13:01:15 -05:00
CamAlvar
fd045fcc39 Added images to buttons, updated the dockpanel version 2017-07-28 08:56:12 -05:00
David Sparer
7a2ab59346 connections now just reference credential ids 2017-07-27 21:50:50 -05:00
CamAlvar
dc7970ac80 99% #themed 2017-07-27 08:42:52 -05:00
CamAlvar
d08d4fa488 Almost all dialogs,forms and panels themed 2017-07-25 09:06:50 -05:00
Brandon Wulf
0807e7fec1 Send commands to quickconnect created connections too! 2017-07-24 17:41:39 -07:00
Brandon Wulf
1c4b5d1ca5 Merge branch 'Multi-SSH' of github.com:mrwulf/mRemoteNG into Multi-SSH 2017-07-24 16:45:56 -07:00
Brandon Wulf
a3d9b2b9cb Pulled MultiSSH code into its own class 2017-07-24 16:45:38 -07:00
CamAlvar
d0df08de2c Added more controls, replaced normal elements with NG versions 2017-07-24 09:25:02 -05:00
Brandon Wulf
14d670a9a2 Don't propagate edit if it didn't come from the menu item 2017-07-21 15:38:46 -07:00
Brandon Wulf
67801506e0 Only do ActivateConnection when one of our known controls wasn't clicked. 2017-07-21 14:19:08 -07:00
David Sparer
e98291498b Merge pull request #639 from emazv72/develop
fixed italian spelling
2017-07-20 19:12:07 -05:00
David Sparer
d82a86e01b Merge pull request #650 from polluks/develop
German typo
2017-07-20 11:59:51 -05:00
Stefan
760d053cd7 typo 2017-07-20 18:52:03 +02:00
Sean Kaim
48eb6dbbe0 updated changelog 2017-07-18 15:13:48 -04:00
Sean Kaim
d520c6a816 Exception after clicking on import port scan
Fixes #646
2017-07-18 14:31:21 -04:00
CamAlvar
a3894323db Added more custo controls, external tools window list redesigned, external tools window finished 2017-07-18 09:43:30 -05:00
Brandon Wulf
a4b902d5af Reverting the references
...even though it won't compile on my box without them..
2017-07-17 16:14:54 -07:00
Brandon Wulf
5f9f0769eb Switched Multi SSH window to a Multi SSH toolbar 2017-07-17 15:00:59 -07:00
Brandon Wulf
49390574bf Builds and basically works 2017-07-14 18:16:27 -07:00
Emanuele Zavallone
71fab09581 fixed italian spelling 2017-07-14 09:51:01 +02:00
CamAlvar
9225df85da Fixed design time controls, added custom button control 2017-07-13 09:34:17 -05:00
CamAlvar
81160ac1ea implemented custom label to override winforms disabled hacks
Fix for dark themes on disabled label text (default to black in the winforms code)
2017-07-12 09:48:59 -05:00
CamAlvar
5dd02602b7 theme more windows,panels and menu 2017-07-10 08:06:38 -05:00
CamAlvar
a92dfa3920 fixed color default method
fixed color default method, fixed message box foreground color and mixed warning and error colors
2017-07-06 01:30:52 -05:00
CamAlvar
0c19a1aafe changed loading and defaulting theme method
Use resource style  and xpath for loading, now the default is merged dinamically into the active theme by using a dictionary storange
2017-07-06 01:06:26 -05:00
CamAlvar
5429bb7d2b fixes and improvements
Defaulting extended palette in embedded themes, removed the reference to the dockpanel theme palette, that only exist in vs2015
2017-06-28 00:26:01 -05:00
David Sparer
664799c01b minor fix to allow building on some older machines
Oder editbin.exe files from Microsoft were signed with a different cert thumbprint. This update makes it easier to add additional valid thumbprints for MS signed tools
2017-06-27 12:20:39 -05:00
David Sparer
d88c5b9db2 minor error message correction
changed an error message that referred to File -> Load Connections (which doesn't exist). Changed this to File -> Open Connection File
2017-06-27 12:15:38 -05:00
CamAlvar
509acd1192 Fix property loaded
Removed unnecesary call for load proprerties, added a theme for reference implementation
2017-06-20 07:57:57 -05:00
CamAlvar
8db74a4514 First try
Lots of things broken, but basic structure is there
2017-06-19 22:51:34 -05:00
Camilo Alvarez
0d6f98f50a Update README.MD 2017-06-19 22:41:49 -05:00
Sean Kaim
0fe7a693f8 changelog 2017-06-16 10:08:04 -04:00
Sean Kaim
d368fbbf5b changelog 2017-06-16 10:07:02 -04:00
Sean Kaim
1e7c123145 add log message
Relates to #596
2017-06-16 10:04:12 -04:00
Sean Kaim
9a2efd9686 Exception launching ExtTool without con selected 2017-06-16 09:54:52 -04:00
Sean Kaim
069b0b0153 merge 1.75.7008 changes into develop 2017-06-15 15:10:23 -04:00
Sean Kaim
c12c64380d changelog update 2017-06-15 15:10:22 -04:00
Sean Kaim
88961fbdb5 Merge pull request #593 from mRemoteNG/kmscode-patch-1
changelog update
2017-06-15 15:02:20 -04:00
Sean Kaim
a11ceced09 changelog update 2017-06-15 15:00:34 -04:00
Sean Kaim
9da94b38b3 hotfix 8 2017-06-15 12:20:02 -04:00
Sean Kaim
ca35662ca2 Merge pull request #592 from mRemoteNG/hotfix7
Hotfix8
2017-06-15 11:52:59 -04:00
Sean Kaim
e7c4bbe1e8 increment version 2017-06-15 11:33:50 -04:00
Sean Kaim
1bc56b5c9e Merge remote-tracking branch 'refs/remotes/origin/master' into hotfix7 2017-06-15 11:29:55 -04:00
Sean Kaim
25a0630bcb updated putty build
New version number: 0.69.0.1

Fixes #589
2017-06-15 11:28:41 -04:00
Sean Kaim
1f7d122bee clean up installer build a bit 2017-06-15 11:19:30 -04:00
Sean Kaim
d9cb32ca53 enable verbose logging within the MSI 2017-06-15 11:19:02 -04:00
David Sparer
9cdfc61a30 Merge pull request #558 from vbfox/treeview_icons
Use the connection icon everywhere
2017-06-14 13:07:59 -05:00
David Sparer
760587ee2e Merge pull request #590 from mRemoteNG/update_jenkinsfile
jenkins release builds will now clean then build
2017-06-14 11:21:21 -05:00
David Sparer
d2fe8a2ddb builds will now clean then build 2017-06-14 11:14:36 -05:00
David Sparer
d2dc76baf1 removed a few unnecessary powershell params 2017-06-14 10:47:55 -05:00
David Sparer
232de66683 find_vstool now verifies that the tool can be executed
This improvement is meant to discard tool binaries that cannot be run. This is useful when you have an old install of VS that is broken for whatever reason. Now, we will ensure the tool has a valid exit code
2017-06-14 10:40:46 -05:00
Sean Kaim
3d61d1bca0 hotfix7 readme updates 2017-06-14 11:26:31 -04:00
Sean Kaim
c2c9531c1b changelog update 2017-06-14 11:22:57 -04:00
Sean Kaim
461df14cf7 rebuilt & signed puttyng 0.69
Fixes #583
2017-06-14 11:20:46 -04:00
Sean Kaim
81b0be0489 Merge pull request #588 from mRemoteNG/hotfix7
Hotfix7 changelog
2017-06-14 11:10:19 -04:00
Sean Kaim
3074a211f8 changelog 2017-06-14 11:08:55 -04:00
Sean Kaim
0659b140f5 Merge pull request #587 from mRemoteNG/hotfix7
Hotfix7
2017-06-14 10:59:06 -04:00
Sean Kaim
0b8160ae34 changelog 2017-06-14 10:57:49 -04:00
Sean Kaim
dbf2b7b4b6 increment version 2017-06-14 10:51:24 -04:00
Sean Kaim
1e8afc8ea4 update readme 2017-06-14 10:48:57 -04:00
Sean Kaim
70bd2e8a78 rebuilt & signed puttyng 0.69 2017-06-14 10:48:46 -04:00
Sean Kaim
b1dfe6e714 update download links to hotfix6 2017-06-13 17:17:04 -04:00
David Sparer
46bc0fe8b4 no longer request users tag issues
Removed lines in Bug/Feature headings that requested users tag their own issues. Normal users cannot set issue tags.
2017-06-13 13:47:50 -05:00
Sean Kaim
8045544051 Merge pull request #581 from mRemoteNG/hotfix6
Hotfix6
2017-06-13 11:15:08 -04:00
Sean Kaim
0cef4dc9b3 changelog update 2017-06-13 10:49:05 -04:00
Sean Kaim
f1cfa4330a fix build/porting problem for about window 2017-06-13 10:42:31 -04:00
Sean Kaim
a50b370262 Use all space on about page
Fixed 377
9c5e4f7a7c
2017-06-13 10:24:40 -04:00
Julien Roncaglia
7cc3639758 React to icon change events 2017-06-13 10:26:25 +02:00
Julien Roncaglia
24b5dd0c8c Add server icons in the treeview 2017-06-13 10:26:24 +02:00
David Sparer
32afdfc257 Update README.MD
Removed build badge for the beta branch. We do not build a new binary for beta builds, they are promoted from development releases
2017-06-08 10:36:39 -05:00
Sean Kaim
10e61e28c6 changelog update 2017-06-02 16:49:46 -04:00
Sean Kaim
d88be9aca4 Quick Connect from ntf area icon displays warning
warning occurs when clicking on a folder.

Fixes #546
2017-06-02 16:48:52 -04:00
Sean Kaim
064fd217ba initial Hotfix 6 commit 2017-06-02 16:45:23 -04:00
Sean Kaim
dd2e2734ce Addl protections to avoid problems on update chk
fixes #527
2017-06-02 15:16:56 -04:00
David Sparer
390c230de9 updated credits 2017-05-27 20:37:49 -06:00
David Sparer
b43f868eba updated changelog and credits 2017-05-27 20:34:54 -06:00
David Sparer
119a18aa15 Merge pull request #567 from peterchenadded/develop
Added extra logic to search the hostname and description fields of the connection instead of just the name.
2017-05-27 20:27:21 -06:00
David Sparer
b79c35042a Merge pull request #557 from vbfox/credential_manager_upgrade_crash
Credential manager upgrade crash
2017-05-27 19:00:57 -06:00
Chen, Peter
12f8e0fe71 Saved lowercase searchText to variable and used it for the comparison 2017-05-24 22:47:35 +10:00
Chen, Peter
0b065b16b1 Fixed incorrect test name 2017-05-24 22:42:39 +10:00
Chen, Peter
b4d5451b11 Added extra logic to search the hostname and description of the connection instead of just the name. Also added associated tests 2017-05-24 22:36:29 +10:00
David Sparer
2fb4c8d227 Merge pull request #555 from polluks/patch-1
Update README.MD
2017-05-19 09:18:26 -06:00
Julien Roncaglia
9d8f3db511 Fix a second instance of the same problem 2017-05-15 22:02:23 +02:00
Julien Roncaglia
76813e9df4 Culture-Independent parsing of the configuration version
The configuration version was parsed in the credential manager upgrade
process using the current user culture and crashed on cultures where '.'
isn't the decimal separator.
2017-05-15 21:53:15 +02:00
Stefan
35da9cfb54 Update README.MD
https://en.wikipedia.org/wiki/Telnet
2017-05-15 13:52:38 +02:00
David Sparer
3f28594376 Cleaned up some event handlers in PortScanner 2017-05-12 10:36:55 -06:00
David Sparer
64c142d21e extracted a Runtime function to a new class 2017-05-12 09:08:19 -06:00
David Sparer
36304e8356 slightly improved the setup of Runtime.IsPortableEdition
refactoring the name of this property is now safer
2017-05-11 15:39:33 -06:00
David Sparer
4090930142 delayed the creation of a dependency to resolve a nullref error
There is currently a circular dependency between frmmain and connectioninitiator. This change temporarily resolves the issue of the nullref, but these two classes need to be decoupled somehow.
2017-05-11 15:20:30 -06:00
David Sparer
cd4d5df4db extracted a Runtime method to a different class 2017-05-11 15:12:53 -06:00
David Sparer
b921964c88 updated changelog 2017-05-11 10:46:32 -06:00
David Sparer
6dcef71ebc changed the backup file timestamp to use system time rather than utc 2017-05-11 10:42:58 -06:00
David Sparer
c69d4107d8 fixed unit tests 2017-05-11 10:37:32 -06:00
David Sparer
d6c34f2312 simplified backup file creation 2017-05-11 10:29:06 -06:00
David Sparer
8666c491ce extracted some Runtime class methods to new classes 2017-05-11 09:53:32 -06:00
David Sparer
7f4cfc267e updated supporteduicultures in settings file. this wasn't set when the korean translation was added 2017-05-11 09:16:37 -06:00
David Sparer
9d48eb6d74 refactored a few usages of compiler conditionals 2017-05-10 21:32:04 -06:00
David Sparer
7f80cad356 moved property from Runtime to ConnectionsService 2017-05-10 19:59:56 -06:00
David Sparer
36b3278698 moved a property from Runtime to ConnectionsService 2017-05-10 17:59:58 -06:00
David Sparer
2633b4c876 extracted all external tools related code from Runtime to a new class 2017-05-10 17:42:40 -06:00
David Sparer
fd26e9755d extracted some Runtime methods to the ConnectionsService 2017-05-10 17:24:54 -06:00
David Sparer
c5623a10c1 fix non-portable build 2017-05-10 16:44:59 -06:00
David Sparer
4049695425 extracted a runtime method to a new class 2017-05-10 16:42:30 -06:00
David Sparer
25b0d12576 migrated a property from Runtime to frmMain 2017-05-10 16:11:58 -06:00
David Sparer
cb1c490a1c simplified save filter a bit 2017-05-10 16:07:54 -06:00
David Sparer
565a20a83e extracted Runtime method to a new class 2017-05-10 11:43:03 -06:00
David Sparer
077965f083 extracted Runtime method to new class 2017-05-10 11:16:35 -06:00
David Sparer
eae4f569c2 removed some references to Runtime class 2017-05-10 11:13:06 -06:00
David Sparer
3f999e525a changed namespace that was colliding with a class name 2017-05-10 11:01:27 -06:00
David Sparer
509606dbda extracted a Runtime method to a new class 2017-05-10 10:58:53 -06:00
David Sparer
1b12a689a3 cleaned up some code in Runtime relating to new confcons creation 2017-05-10 09:27:11 -06:00
David Sparer
f91d09b2ae FileDataProvider now creates directories if they do not exist 2017-05-10 09:11:33 -06:00
David Sparer
89c02483eb extracted method to improve code readability 2017-05-10 08:34:21 -06:00
David Sparer
9725082b06 hooked up the cred upgrader form to the connections loader code 2017-05-09 11:58:30 -06:00
David Sparer
4c9471c415 minor cleanup 2017-05-09 11:55:54 -06:00
David Sparer
2bee87916d added error handling to the jenkinsfile to ensure nunit test results are uploaded on test failures
previously, a failure of a test would stop the pipeline at that point without uploading any test data
now, the pipeline will stop on the step that fails but still upload all test reports that have been created up to that point.
2017-05-09 11:23:20 -06:00
David Sparer
7838b6dc0e added some artificial delay to a test to help ensure it doesnt fail due to completing too quickly 2017-05-08 13:39:20 -06:00
David Sparer
6ae279c292 created some tests to verify that the file data providers work as expected 2017-05-08 13:23:49 -06:00
David Sparer
28aea45f95 made the cred upgrader form a deserializer decorator so we can inline it with other deserializers 2017-05-07 23:13:45 -06:00
David Sparer
38d0be992c updated the NewConnections function to use the already built serializer 2017-05-07 23:12:17 -06:00
David Sparer
73b0c8c68c promoted cred file path to a public property 2017-05-07 23:11:27 -06:00
David Sparer
b8002ce577 created language resources for some new entries in the cred upgrader form 2017-05-07 21:31:22 -06:00
David Sparer
5eebcd01ef hooked up several buttons in the cred upgrader form
- create new confcons file now works
- we can select a new confcons file to upgrade
2017-05-07 21:24:06 -06:00
David Sparer
5a455e1558 set up placeholder calls for localizing the form 2017-05-07 21:02:52 -06:00
David Sparer
c2d0eec9d2 began creating form for handling the upgrade of confcons to handle cred manager 2017-05-07 18:34:25 -06:00
David Sparer
97104d820e some more cleanup 2017-05-07 18:32:18 -06:00
David Sparer
f334f804b6 more minor cleanup 2017-05-07 18:26:24 -06:00
David Sparer
38bcafbfe5 cleaned up RdpProtocol 2017-05-07 17:22:59 -06:00
David Sparer
72196c705e minor cleanup of MessageFocusDecorator class 2017-05-07 16:46:42 -06:00
David Sparer
eb4d800e40 minor cleanup of NotificationAreaIcon class to condense refs to frmMain 2017-05-07 16:46:16 -06:00
David Sparer
ad508a30ea minor cleanup of frmMain 2017-05-07 16:45:05 -06:00
David Sparer
7068309b04 minor cleanup of connection window 2017-05-07 16:40:05 -06:00
David Sparer
06ab054118 cleaned up RawProtocol 2017-05-07 16:36:22 -06:00
David Sparer
4f5c929a9b renamed ProtocolICA to IcaProtocol 2017-05-07 16:34:31 -06:00
David Sparer
268a146775 cleaned up ICA protocol 2017-05-07 16:29:37 -06:00
David Sparer
7151c347a0 minor cleanup of Startup class 2017-05-07 16:21:50 -06:00
David Sparer
98d813c172 cleaned up Screens class 2017-05-07 16:19:11 -06:00
David Sparer
7b5a805eda minor cleanup of Windows class 2017-05-07 16:16:17 -06:00
David Sparer
d2b6429c8b changed setting saver method signature to require frmmain rather than using static singleton variable 2017-05-07 16:08:50 -06:00
David Sparer
450c9bb755 refactored dock panel saver to split serialization to a separate class 2017-05-07 16:07:28 -06:00
David Sparer
a45cd01e26 renamed the dock panel load/save classes to be more indicative of their purpose 2017-05-07 15:31:12 -06:00
David Sparer
28f7a7315e refactored layout saver code to a new class 2017-05-07 15:21:47 -06:00
David Sparer
d9e7e359f9 refactored external tools saver code to a new class 2017-05-07 15:15:25 -06:00
David Sparer
bee41e0e75 few minor refactorings in frmMain 2017-05-07 15:00:12 -06:00
David Sparer
5e826a3392 refactored the cred manager upgrader to be a deserialization decorator 2017-05-07 14:48:40 -06:00
David Sparer
635ff88a53 removed unused param 2017-05-07 12:17:33 -06:00
David Sparer
83156bf28e refactored xml credential loading to a new class 2017-05-07 11:57:15 -06:00
David Sparer
9ba081f241 refactored sql connection loader 2017-05-07 11:45:09 -06:00
David Sparer
179c3725ca added a tab control that hides its tabs during runtime (shown during design time) 2017-05-07 11:29:22 -06:00
David Sparer
645fedb1ed refactored the cred manager migration code to a new class 2017-05-07 11:27:33 -06:00
David Sparer
104ee3829f combined several duplicate sort methods 2017-05-07 00:01:59 -06:00
David Sparer
9f80eb2f74 normalized line endings 2017-05-06 23:58:01 -06:00
David Sparer
44b3a643dd Merge pull request #480 from pfjason/develop
Added a BeginEdit() at the end of the AddNode function.
2017-05-06 23:39:10 -06:00
David Sparer
cf61a6bbe7 removed a call that was causing many unnecessary host pings. should help #480 2017-05-06 23:36:25 -06:00
David Sparer
93b45fba84 fixed auto column sizing to also include a horizontal scroll bar. resolves #501 2017-05-06 22:40:35 -06:00
David Sparer
0d1851a73b updated credits and changelog to include korean translation and cred manager 2017-05-06 20:13:56 -06:00
David Sparer
5d6377f71c added some unit tests 2017-05-06 13:36:59 -06:00
David Sparer
28872f39c1 cleaned up messages module 2017-05-06 12:47:25 -06:00
David Sparer
c0b8eab4b8 cleanup the resources folder by combining some icon/image folders 2017-05-06 12:04:58 -06:00
David Sparer
75ba00735d removed another unused file 2017-05-06 11:58:48 -06:00
David Sparer
fdd7951d13 removed unneeded files 2017-05-06 11:55:11 -06:00
David Sparer
e0427ae200 hook up korean translation to be used 2017-05-06 11:44:21 -06:00
David Sparer
ec269f7177 Merge pull request #504 from gyuha/develop
Add Korean translation
2017-05-06 11:40:19 -06:00
David Sparer
2226082b6b Merge pull request #543 from mRemoteNG/improve_credential_manager
Improve credential manager
2017-05-06 11:26:16 -06:00
David Sparer
c69c188de9 cleaned up jenkinsfile stages 2017-05-05 18:00:33 -06:00
David Sparer
8499655c94 added code coverage stage to jenkins pipeline 2017-05-05 16:05:35 -06:00
David Sparer
4c0c13e792 updated nunit and nsubstitute packages 2017-05-05 15:01:35 -06:00
David Sparer
9d2d693a63 updated "stage" definitions to follow newer jenkins pipeline guidelines 2017-05-05 14:58:45 -06:00
David Sparer
e8d4db3f80 added portable unit tests and acceptance tests to the jenkins build 2017-05-05 14:46:39 -06:00
David Sparer
e7ebea535e fix nunit test report upload 2017-05-05 14:15:30 -06:00
David Sparer
c3a7e91a1d update path to nunit console 2017-05-05 12:18:56 -06:00
David Sparer
44be066b26 update jenkins to use nunit test runner 2017-05-05 12:06:29 -06:00
David Sparer
47f4efe60c added some interfaces to making testing easier
created simple behavior tests for the credential service facade
2017-05-05 11:22:17 -06:00
David Sparer
a4d7aff651 some more refactoring to better segregate confcons version upgrade code 2017-05-05 10:45:52 -06:00
David Sparer
d55b41963b minor refactor to segregate code that upgrades confcons v26 to 27 2017-05-05 09:06:12 -06:00
David Sparer
6bfad8e2d0 removed test menu item 2017-05-05 09:02:01 -06:00
David Sparer
e06ba65e6c minor cleanup 2017-05-04 17:50:37 -06:00
David Sparer
3acd77a63d added a few minor tests 2017-05-04 17:40:51 -06:00
David Sparer
25b32a6444 removed unused code 2017-05-04 17:40:26 -06:00
David Sparer
62ae4fb265 split sql db version upgraders to separate classes 2017-05-04 17:16:55 -06:00
David Sparer
57fe2a6cc2 added some tests for the cred record converter 2017-05-04 10:20:01 -06:00
David Sparer
a6ef8e0b40 renamed class 2017-05-04 08:26:18 -06:00
David Sparer
467ceb89b1 moved some cred repo classes to a sub-namespace 2017-05-03 17:54:51 -06:00
David Sparer
873bc3f582 removed an unused class 2017-05-03 17:02:50 -06:00
David Sparer
9ebb37c524 added function to get a specific cred record by id 2017-05-03 16:07:01 -06:00
David Sparer
ccf4ba2269 signed putty 0.69 binary 2017-05-03 09:48:06 -06:00
Sean Kaim
e377a72f75 PuTTYNG 0.69 2017-05-03 11:40:52 -04:00
David Sparer
4ed806ea97 Merge branch 'develop' into improve_credential_manager 2017-05-02 12:43:41 -06:00
David Sparer
57ba991673 resolved issue with clone still setting con info parent 2017-05-02 12:41:46 -06:00
David Sparer
21a48ccab5 some minor cleanup 2017-05-02 12:25:02 -06:00
David Sparer
0f0c27ad09 reordered repo grid to put the Loaded column ahead of Source 2017-05-02 12:24:49 -06:00
David Sparer
40ed6450ff fixed some minor ui bugs where elements would not update right away 2017-05-02 12:23:41 -06:00
David Sparer
a0c0ea4c4c Merge branch 'develop' into improve_credential_manager 2017-05-02 10:15:06 -06:00
David Sparer
2dc413ca3a Merge branch 'master' into develop
# Conflicts:
#	CHANGELOG.TXT
#	mRemoteV1/Properties/AssemblyInfo.cs
#	mRemoteV1/Resources/PuTTYNG.exe
#	mRemoteV1/UI/Controls/ConnectionContextMenu.cs
2017-05-02 10:14:33 -06:00
David Sparer
692b26622c Merge pull request #534 from mRemoteNG/530_fix_tree_node_entry_creation_on_exttool_run
530 fix tree node entry creation on exttool run
2017-05-02 10:00:30 -06:00
David Sparer
72a56d33d0 updated changelog 2017-05-02 09:08:49 -06:00
David Sparer
ce4bfc55c1 ConnectionInfo.Clone no longer sets the Parent property
this resolves undesirable tree nodes from being created
2017-05-02 08:49:04 -06:00
David Sparer
faba53fa5f Merge pull request #524 from mRemoteNG/improve_build_script_compatibility
Improve compatibility with different build environments
2017-05-02 07:57:02 -06:00
David Sparer
f0faec9def Merge pull request #528 from mRemoteNG/hotfix5
1.75 Hotfix5
2017-04-27 15:36:16 -06:00
David Sparer
e6ef28050c set release date in changelog for 1.75.7005 2017-04-27 15:20:07 -06:00
David Sparer
547ec3cb3a updated msi installer requirements
Replaced KB2923545 with KB2830477 (which is the REAL rdp 8.1 update)
2017-04-25 21:06:25 -06:00
Sean Kaim
5bfc67af4f Let's get some more clear validation 2017-04-21 17:20:23 -04:00
Sean Kaim
c72d9b544e just a slightly more informative message 2017-04-21 17:01:05 -04:00
David Sparer
cd34619acd added a few more known-good MS cert thumbprints 2017-04-21 14:52:40 -06:00
David Sparer
f091817d66 further reduce our search space
this also reduces the chance we will try to access a folder which we dont have permissions for
2017-04-21 14:42:33 -06:00
David Sparer
f2c65314b4 added a post build action to dump bin headers 2017-04-21 13:59:09 -06:00
David Sparer
a9fcdd3341 extracted a new script for finding a vstool (such as editbin.exe) 2017-04-21 12:13:54 -06:00
David Sparer
36a5cc7446 update changelog 2017-04-21 08:27:23 -06:00
David Sparer
fc0f278962 signed putty v0.68 exe 2017-04-20 09:27:14 -06:00
David Sparer
1f3db15892 Merge branch '442_fix_importing_putty_session_with_spaces_in_name' into hotfix5 2017-04-20 09:17:22 -06:00
David Sparer
e3e4c49427 changelog update 2017-04-20 09:16:31 -06:00
David Sparer
1520b8bf73 fixed bug where any sessions with spaces in the name would be filtered out
this fixes the bug, but the entire putty sessions loading component should be refactored heavily
2017-04-20 09:07:21 -06:00
David Sparer
c9e7f82905 fixed minor bug with adding a duplicate default session in some situations 2017-04-20 08:53:57 -06:00
Sean Kaim
14a1a665ef changelog 2017-04-19 12:43:28 -04:00
Sean Kaim
d2357fa779 changelog update 2017-04-19 12:38:54 -04:00
Sean Kaim
703178ddf1 Fix NPE when importing from the connection tree
Fixes #518
2017-04-19 12:37:56 -04:00
Sean Kaim
ec836e2e79 Fix NPE when importing from the connection tree
Fixes #518
2017-04-19 12:35:43 -04:00
Sean Kaim
4e9c5de16c changelog 2017-04-17 17:34:09 -04:00
Sean Kaim
2a677aaf02 changelog 2017-04-17 17:33:41 -04:00
Sean Kaim
2a141cd9b3 update changelog 2017-04-17 17:30:59 -04:00
Sean Kaim
3d1fcc35df Update credits.txt 2017-04-17 17:30:14 -04:00
Sean Kaim
e20d7afb72 update changelog 2017-04-17 17:29:32 -04:00
Sean Kaim
5ade8b208e Update credits.txt 2017-04-17 17:26:06 -04:00
Sean Kaim
9c5e4f7a7c Use all space on about page
Fixes #377
2017-04-17 16:46:59 -04:00
Sean Kaim
07e2bc3858 update change log 2017-04-17 11:56:47 -04:00
David Sparer
5c785ca1c6 moved default credential selection to the new credentials option page and created a cred records combobox 2017-04-14 18:01:43 -06:00
David Sparer
b389b20ca3 app now honors the prompt-unlock-on-startup setting 2017-04-14 17:25:48 -06:00
David Sparer
6f1d496a9e created a credentials options page and a setting for prompting repo unlock on startup 2017-04-14 17:23:36 -06:00
David Sparer
fe12cb345e merged branch 'develop' into 'improve_credential_manager'
# Conflicts:
#      CredentialManagerForm.cs
#      PasswordForm.cs
2017-04-14 16:56:02 -06:00
David Sparer
2607994c4c only save repo data if it is loaded 2017-04-14 16:35:27 -06:00
David Sparer
47a02afea6 updated some tests 2017-04-14 16:34:28 -06:00
David Sparer
a2e0a0c6f7 created factory for creating cred unlocker forms. unlocking repos from the manager now uses the unlocker form 2017-04-14 16:33:11 -06:00
Sean Kaim
f3b11d6f72 Fix for #434 - SysTray SafeHandle 2017-04-14 17:25:40 -04:00
Sean Kaim
edac8f764b Fix build issue (2015 doesn't like this) 2017-04-14 17:11:12 -04:00
David Sparer
4fa68e3bb0 when decrypting xml cred repos, we must be able to decrypt the auth header 2017-04-14 15:09:30 -06:00
Sean Kaim
69f310c02c PuTTYNG.exe 0.68 2017-04-14 17:00:22 -04:00
Sean Kaim
09789e163c PuTTYNG 0.68 2017-04-14 16:59:44 -04:00
Sean Kaim
84c8851ff8 check for nulls 2017-04-14 16:23:08 -04:00
Sean Kaim
95dacdd6da minor optimizations 2017-04-14 16:19:39 -04:00
Sean Kaim
3308f1146c load expanded data properly
and minor optimization
2017-04-14 15:50:20 -04:00
David Sparer
37b9e46e96 localized the repo unlocker form 2017-04-14 13:37:36 -06:00
Sean Kaim
8e8cf3df8d check for nulls 2017-04-14 15:34:55 -04:00
David Sparer
f4b188a9ac added some visual indicators when a repo is unlocked 2017-04-14 13:23:52 -06:00
David Sparer
35c886a59c added some error feedback on password error 2017-04-14 13:07:15 -06:00
Sean Kaim
26fdd924ef Increment version number
And make it match the hotfix number - you have no idea how much that was
annoying me...
2017-04-14 14:44:26 -04:00
Sean Kaim
e87a49796f Merge pull request #513 from mRemoteNG/483_make_datatable_serializer_safer
483 make datatable serializer safer
2017-04-14 14:41:56 -04:00
Sean Kaim
7e0b1e479c Merge branch 'develop' into 483_make_datatable_serializer_safer 2017-04-14 14:40:48 -04:00
David Sparer
1af2f7848e added some error handling when repo unlocking fails 2017-04-14 12:39:13 -06:00
Sean Kaim
ea3494f6e7 Merge pull request #512 from mRemoteNG/483_make_datatable_serializer_safer
483 make datatable serializer safer
2017-04-14 14:37:33 -04:00
David Sparer
0e7b93771e created a facade service for the credentials module to give other portions of the code a single api to use 2017-04-14 12:11:29 -06:00
David Sparer
ea5a21e487 added some more code around loading converted/harvested cred repo 2017-04-13 17:15:43 -06:00
David Sparer
dc72b87479 refactored repo unlocker select-next method 2017-04-13 12:29:48 -06:00
David Sparer
2f20acfa34 fixed some more empty string deserialization bugs 2017-04-12 17:50:55 -06:00
David Sparer
4869058f46 fixed exception that would occur if the repo list xml file did not exist 2017-04-12 17:37:42 -06:00
David Sparer
fa006afd0d changed the "skip" button to "close" 2017-04-12 17:37:14 -06:00
David Sparer
8e06255758 fixed tab focus ordering 2017-04-12 17:14:24 -06:00
David Sparer
ba57b25cd4 set password box text masking 2017-04-12 17:12:21 -06:00
David Sparer
4fa9d98171 repo unlocker form runs on app startup 2017-04-12 17:02:25 -06:00
David Sparer
6d19832d01 did a bit of code rearranging 2017-04-12 15:19:09 -06:00
David Sparer
bdaa059fa3 resolved object-disposed bug due to stale event subscription 2017-04-12 14:55:04 -06:00
Sean Kaim
f7bfc51735 check for nulls 2017-04-12 16:25:32 -04:00
Sean Kaim
998e156b21 deregister VNC event handler on disconnect. 2017-04-12 16:13:43 -04:00
Sean Kaim
491bf850e8 Merge pull request #506 from mRemoteNG/434_SafeHandle_Implmentation
434 safe handle implmentation
2017-04-12 15:14:01 -04:00
Sean Kaim
9bf53c6b25 fix & supress warning 2017-04-12 14:58:52 -04:00
Sean Kaim
e2fb49037a fix ruleset again... 2017-04-12 14:58:36 -04:00
David Sparer
3291c24c8c created SecureSerializer abstraction 2017-04-12 12:39:38 -06:00
Sean Kaim
f0bc375421 Merge remote-tracking branch 'refs/remotes/origin/develop' into 434_SafeHandle_Implmentation 2017-04-12 14:02:50 -04:00
Sean Kaim
e3c223dc0a Set code analysis rules to something reasonable 2017-04-12 13:48:39 -04:00
Sean Kaim
53c8b3b66d use statement bodys to allow building with VS2015 2017-04-12 13:40:36 -04:00
Sean Kaim
af5000b0f8 use statement bodys to allow building with VS2015 2017-04-12 13:15:32 -04:00
Sean Kaim
d5d4fdefc8 VncSharp Updates
* New VncSharp.dll built with a .NET 4 runtime target
* Minor code cleanup
* Avoid exceptions on VNC close/disconnect
2017-04-12 12:43:48 -04:00
gyuha
1caa0c6210 Add Korean translation 2017-04-12 16:23:04 +09:00
Sean Kaim
5b646617d1 code clean up 2017-04-11 16:24:34 -04:00
David Sparer
9f028d9104 added some safety checking for data table deserialization
added some tests for the data table deserializer
2017-04-09 17:36:56 -06:00
David Sparer
f40be696c7 made utility for creating test connection tree models 2017-04-09 17:35:52 -06:00
David Sparer
95a503a390 fix issue with setting up data table 2017-04-09 17:05:36 -06:00
David Sparer
88c51f4933 added some safety checks to the data table serialier 2017-04-09 16:57:56 -06:00
David Sparer
d63177f3c7 modified the cred repo interface
load now requires a decryption key
2017-04-06 14:56:19 -06:00
David Sparer
e9d41fd01b changed interface for loading credentials from a repo to get around issues with providing a key 2017-04-06 09:16:14 -06:00
David Sparer
224d2987db added some tests for the cred record loader 2017-04-06 08:54:10 -06:00
David Sparer
8439d6d3aa lots of reworked interfaces around cred repo serialization
- decryptors now expose a property that represents what key they will use for decrypt. this can be used by decorators to properly encapsulate password prompts
- added some basic acceptance tests around cred repos
- added some stubby implementations for IDataProvider and the key provider decorators
2017-04-03 20:09:47 -06:00
David Sparer
13b38955e6 removed duplicate interface 2017-04-03 13:51:22 -06:00
David Sparer
ae3fb9a2dd added iKeyProvider interface for dynamically retrieving keys/passwords
this will support the push towards constructor injection / decorators. this interface can act as a stand-in for what would otherwise be a static decryption key
2017-04-03 12:40:07 -06:00
David Sparer
9d78d769c4 began adding acceptance tests in specflow 2017-04-03 11:33:45 -06:00
David Sparer
e436a31a18 split up crypto provider factories and created an interface 2017-04-02 22:33:36 -06:00
David Sparer
929ade554c renamed method 2017-04-02 22:26:23 -06:00
David Sparer
d6c7066bfa changed the credential serializer lifecycle test to include password de/encryption 2017-04-02 21:29:52 -06:00
David Sparer
2387f183e9 added password decryption decorator 2017-04-02 21:28:50 -06:00
David Sparer
e8d645467f modified the interface of IDeserializer
now requires: TOut Deserialize(TIn serializedData)
2017-04-02 20:28:25 -06:00
David Sparer
a8e022cab4 added some lifecycle tests for the cred de/encrypt 2017-04-02 19:32:49 -06:00
David Sparer
579e8abda1 refactored tests for less duplication 2017-04-02 18:42:15 -06:00
David Sparer
4d44440e90 removed some more unnecessary args 2017-04-02 17:42:51 -06:00
David Sparer
709f914561 removed unnecessary arguments related to encrypting xml creds 2017-04-02 17:36:05 -06:00
David Sparer
0afa8e092e fix build 2017-04-02 17:25:03 -06:00
David Sparer
e886619b22 simplified the implementation of the xml cred deserializer
removed anything to do with encryption which will be handled by decorators
2017-04-02 17:22:42 -06:00
David Sparer
fa5f423bbd added decorator for encrypting credential xml files 2017-04-02 14:26:47 -06:00
David Sparer
bfbf5c70d5 reorganized more tests 2017-04-02 12:10:36 -06:00
David Sparer
2c19a442a7 moved a few tests to correct namespace 2017-04-02 11:56:56 -06:00
David Sparer
984ca69e8c reverted code that only compiles on vs2017 2017-03-31 20:26:24 -06:00
David Sparer
544d7a15d4 wired up data bindings for the cred repo unlocker 2017-03-31 17:56:31 -06:00
David Sparer
858f49d265 created a form for unlocking multiple credential repos 2017-03-31 15:44:25 -06:00
Jason Aquino
1b66d446f9 Added a BeginEdit() at the end of the AddNode function. 2017-03-31 11:18:24 -04:00
David Sparer
6e92fc0505 we dont need the tests playlist anymore 2017-03-28 11:35:05 -06:00
David Sparer
ea84403811 Merge branch 'develop' into improve_credential_manager 2017-03-28 11:30:52 -06:00
David Sparer
65a02795d6 fixed annoying exception when trying to ping empty hostname 2017-03-28 11:30:29 -06:00
David Sparer
c5549367eb Merge branch 'develop' into improve_credential_manager 2017-03-28 10:38:02 -06:00
David Sparer
6aa4a4d205 Merge branch 'master' into develop
# Conflicts:
#	CHANGELOG.TXT
#	InstallerProjects/Installer/Installer.wixproj
#	Tools/signfiles.ps1
#	mRemoteV1/Properties/AssemblyInfo.cs
#	mRemoteV1/mRemoteV1.csproj
2017-03-28 10:36:07 -06:00
David Sparer
9e20f1dd33 created script for publishing a github release that is currently in draft mode 2017-03-24 18:08:27 -06:00
David Sparer
16be19b5d3 split github functions to a library script 2017-03-24 18:07:23 -06:00
David Sparer
80ac0259b8 fix script name 2017-03-24 16:50:15 -06:00
David Sparer
9f7911923c updated the create_upg_check_files script to be parameterized for use within jenkins 2017-03-24 16:40:41 -06:00
David Sparer
686005071e Merge branch 'resolve_sql_deserialization_issue' 2017-03-24 15:26:28 -06:00
David Sparer
e16d31d605 fixed stupid transposition typo 2017-03-24 15:14:57 -06:00
David Sparer
8b201d22cb added authkey requirement to get-githubrelease in order to show drafts 2017-03-24 15:07:31 -06:00
David Sparer
0f6f8d43bd added cmdlet for retrieving a github release 2017-03-24 14:28:18 -06:00
David Sparer
8f171cddd9 fix content type of msi upload to github 2017-03-24 14:23:38 -06:00
David Sparer
c77c323f73 fix jenkinsfile variable 2017-03-24 14:22:17 -06:00
David Sparer
9e358309e4 Merge branch 'master' into resolve_sql_deserialization_issue 2017-03-24 12:14:26 -06:00
David Sparer
485438f38d Merge pull request #472 from mRemoteNG/fix_jenkinsfile_publish
fixed hard coded branch names in jenkinsfile_publish
2017-03-24 12:06:55 -06:00
David Sparer
fe26a60337 fixed hard coded branch names in jenkinsfile_publish 2017-03-24 12:04:52 -06:00
David Sparer
d2c2de4dd7 Merge branch 'master' into resolve_sql_deserialization_issue 2017-03-24 11:42:01 -06:00
David Sparer
d49d58f7f8 fixed parent reference update issue in mRemoteNGImporter 2017-03-24 11:40:28 -06:00
David Sparer
c0c5579027 Merge branch 'develop' into improve_credential_manager
# Conflicts:
#	mRemoteV1/UI/Forms/frmMain.cs
#	mRemoteV1/UI/Menu/ToolsMenu.cs
2017-03-23 17:25:16 -06:00
David Sparer
164d4fff8b Merge pull request #470 from mRemoteNG/pipeline_tests
Create jenkins pipeline script for release automation
2017-03-23 16:46:13 -06:00
Sean Kaim
6e7e4a129b Merge pull request #469 from mRemoteNG/vs2017_build
Vs2017 build
2017-03-23 18:01:06 -04:00
David Sparer
7726406674 added loggers to the test runners 2017-03-23 09:40:31 -06:00
David Sparer
ed38b39fec attempting to resolve bug with accessing correct key store 2017-03-23 08:59:09 -06:00
David Sparer
9188d4316e fix variable issue 2017-03-23 08:52:24 -06:00
David Sparer
cf374c6b8b added cert password as an auto-injected resource 2017-03-23 08:29:47 -06:00
David Sparer
82388dcbc3 added finger-printing to artifacting step 2017-03-23 08:26:18 -06:00
David Sparer
7a6a99e2b6 attempting to use the publishing jenkinsfile from scm 2017-03-23 08:08:29 -06:00
David Sparer
c383736834 more debug code 2017-03-22 17:06:30 -06:00
David Sparer
6e5e78df3b investigating certificate unlock issues 2017-03-22 17:03:38 -06:00
David Sparer
311bf1b641 fix issue with retrieving fuzzy file name 2017-03-22 16:48:38 -06:00
David Sparer
5c9933791c do base64 decoding in the script 2017-03-22 16:39:47 -06:00
David Sparer
039d4d11aa add a cast to help aleviate bat file issues 2017-03-22 16:33:12 -06:00
David Sparer
c0f2d2aa84 fixed bug 2017-03-22 16:27:28 -06:00
David Sparer
45099bfa07 try to get around weird type casting issue 2017-03-22 16:22:53 -06:00
David Sparer
695ae9d970 added script for publishing a release to github 2017-03-22 14:41:35 -06:00
David Sparer
21eb0064b1 enable code signing for installer 2017-03-22 08:45:25 -06:00
David Sparer
513fe402af signed the firefox binaries 2017-03-21 12:47:47 -06:00
David Sparer
b27e5754e8 fix arg passing 2017-03-21 12:07:49 -06:00
David Sparer
fa7231d77b added puttyng.exe to the sign files exclusion list 2017-03-21 11:52:52 -06:00
David Sparer
f5a30ecb33 added some more support for excluding files from signing 2017-03-21 11:42:50 -06:00
David Sparer
7f22289889 add previously signed puttyng binary 2017-03-21 11:21:12 -06:00
David Sparer
f80c39077a Added ability to exclude items from signing 2017-03-21 11:19:09 -06:00
David Sparer
75c60a1cc4 release certificate resources after we've used them 2017-03-21 11:16:05 -06:00
David Sparer
2cf38d6b7c removed some debug code 2017-03-21 11:15:16 -06:00
David Sparer
482c9c1574 added some temp debugging code 2017-03-21 11:10:33 -06:00
David Sparer
882e59a260 normalized the unit test output folder for the portable builds 2017-03-21 10:55:18 -06:00
David Sparer
7a036956b7 added some certificate checks to be more sure that the editbin we're using is legit 2017-03-21 10:29:48 -06:00
David Sparer
7520b20cf9 fixed bug in setting largeaddressaware 2017-03-21 10:28:49 -06:00
David Sparer
d47ccd75d5 Revert "removed unnecessary build configs for the unit tests project"
This reverts commit 56ff81a0ed.
2017-03-21 10:20:20 -06:00
David Sparer
56ff81a0ed removed unnecessary build configs for the unit tests project
im not even sure we need to distinguish between debug and portable builds, but ill leave it like this for now
2017-03-21 10:10:48 -06:00
David Sparer
8db76f5324 actually fix the sensitive param leakage 2017-03-18 17:25:30 -06:00
David Sparer
a9442ea06e added some error output for cert loading action 2017-03-18 16:30:03 -06:00
David Sparer
92bd0d3ea0 do not echo sensitive params 2017-03-18 16:29:44 -06:00
David Sparer
512d7322b2 request cert path and password as script parameters 2017-03-18 16:13:20 -06:00
David Sparer
45645c439f test of msbuild param passing 2017-03-18 15:13:23 -06:00
David Sparer
84ebb82cae the installer project now uses a powershell script for post build actions 2017-03-18 00:24:39 -06:00
David Sparer
576f6a3bd6 fixed issue with tidying release files 2017-03-18 00:24:07 -06:00
David Sparer
96df821eca changed signature failures from errors to warnings 2017-03-18 00:23:44 -06:00
David Sparer
8589778e92 split postbuild actions into powershell scripts 2017-03-17 23:53:59 -06:00
David Sparer
a8a7de9ee6 began converting all post build actions to powershell 2017-03-17 18:01:08 -06:00
David Sparer
1d99340425 remove quoting 2017-03-17 16:33:27 -06:00
David Sparer
a8cdfb56f3 single quote might be safer 2017-03-17 16:18:20 -06:00
David Sparer
0958cdaa2d ensure paths are quoted 2017-03-17 16:13:12 -06:00
David Sparer
ebfb3dd31e added a build config for the installer 2017-03-17 16:01:50 -06:00
Sean Kaim
2293a14a90 sysTray object safehandle implementation 2017-03-17 17:51:04 -04:00
Sean Kaim
3e664a7c2c refactor and fix compiler warning 2017-03-17 17:02:15 -04:00
David Sparer
30b37951b2 Merge branch 'update_signing_script' into develop 2017-03-17 09:20:28 -06:00
David Sparer
0d177d12fe added ability to exclude files for signing. cleaned up script 2017-03-17 09:17:10 -06:00
David Sparer
f7c8a570f8 signed puttyng.exe
we want each version of putty signed only once. this way the file hashes will be the same for each release
2017-03-17 09:16:28 -06:00
Sean Kaim
1814aa86b7 Merge pull request #458 from mRemoteNG/frmmain_menus_refactor_option2
Frmmain menus refactor option2
2017-03-16 13:25:00 -04:00
Sean Kaim
d0a5e658d1 reset dock for toolstrips, get File/View in dsgnr 2017-03-16 13:04:41 -04:00
Sean Kaim
2cbc1da286 Add quickconnect & ext tools to tsContainer 2017-03-16 12:47:15 -04:00
David Sparer
75d21231ae changed all menu classes to use property injection instead of ctor injection so we can use them at design time 2017-03-16 10:24:51 -06:00
Sean Kaim
f2d340a012 VS prompted to update supporte cultures
prompt occured while looking at project properties.
2017-03-15 17:55:02 -04:00
Sean Kaim
1b28111c6d update all nuget's target framework 2017-03-15 16:59:17 -04:00
Sean Kaim
4f4efcbc23 Merge remote-tracking branch 'refs/remotes/origin/develop' into vs2017_build
# Conflicts:
#	mRemoteV1/mRemoteV1.csproj
2017-03-15 16:28:21 -04:00
Sean Kaim
7006d18e93 .net 4.0 / log4net update 2017-03-15 16:24:32 -04:00
Sean Kaim
049959b567 Merge pull request #454 from mRemoteNG/Gecko_Insecure_Certs_v2
Gecko insecure certs v2
2017-03-15 11:43:47 -04:00
Sean Kaim
7cd8c0475e replace log4net with nuget (and latest version) 2017-03-14 16:24:41 -04:00
Sean Kaim
207accf21f update NSubstitute and NUnit packages 2017-03-14 16:17:25 -04:00
Sean Kaim
bd1e62abc1 localization message support, logging, formatting 2017-03-14 12:20:20 -04:00
Sean Kaim
d2e33ee423 I was doing some backwards thinking it appears... 2017-03-14 11:58:51 -04:00
Sean Kaim
f2934f8453 update message, change unhandled messages to false 2017-03-14 10:23:15 -04:00
Sean Kaim
20fb269828 Initial prompt for allow untrusted cert 2017-03-13 18:05:07 -04:00
Sean Kaim
cc13707fea Better error handling 2017-03-13 17:29:17 -04:00
Sean Kaim
a9db6a0473 More code cleanup 2017-03-13 17:26:52 -04:00
Sean Kaim
282ddb85c7 code clean up
Fix - CA2214: Do not call overridable methods in constructors

Relates to #249
2017-03-13 17:11:21 -04:00
David Sparer
3943b8753f split releases 2017-03-10 14:41:14 -07:00
David Sparer
9e26ea1866 bumped assembly version 2017-03-10 14:26:35 -07:00
David Sparer
8152a87514 bumped patch version 2017-03-10 14:20:23 -07:00
David Sparer
b28775c2c6 made sqlbulkcopy column-position independant 2017-03-10 14:18:55 -07:00
David Sparer
9b27200793 updated changelog and credits 2017-03-10 13:03:44 -07:00
David Sparer
0b7d7dac38 Merge pull request #429 from rheingold/develop_added_czech_loc
Develop added czech loc
2017-03-10 12:49:35 -07:00
David Sparer
3eb96ef765 set changelog and bumped patch version 2017-03-10 11:40:20 -07:00
David Sparer
8805584cbe updated sql code
- added upgrade script to bring db version up to 2.6
- refactored db upgrade code to a new class
- resolved an issue with db column naming for one of the new features
- updated new sql db creation script
2017-03-10 11:13:26 -07:00
rheingold
c2edf314c2 Updated czech language file for the new Microphone redirect feature. 2017-03-10 13:31:54 +01:00
Sean Kaim
2da2d54013 Build changes
* Upgrade to VS2017 solution (still compatible with VS2015 though)
* Require .NET 4.5
* Use latest log4net NuGet package (removed old copy)
2017-03-08 11:54:57 -05:00
David Sparer
f433b911a0 modified export form to handle the new credential management system 2017-03-06 15:04:48 -07:00
David Sparer
8b44815b70 fixed some issues with the CSV exporter 2017-03-06 14:46:36 -07:00
David Sparer
788f597a3f Merge branch 'master' into develop
# Conflicts:
#	CHANGELOG.TXT
#	mRemoteNGTests/Config/Serializers/XmlConnectionNodeSerializer27Tests.cs
#	mRemoteNGTests/Config/Serializers/XmlConnectionsDocumentCompilerTests.cs
#	mRemoteNGTests/Config/Serializers/XmlConnectionsDocumentEncryptorTests.cs
#	mRemoteNGTests/Config/Serializers/XmlConnectionsSerializerTests.cs
#	mRemoteV1/Config/Serializers/XmlConnectionNodeSerializer26.cs
#	mRemoteV1/Config/Serializers/XmlConnectionsDocumentCompiler.cs
#	mRemoteV1/Config/Serializers/XmlConnectionsSerializer.cs
#	mRemoteV1/Properties/AssemblyInfo.cs
2017-03-06 13:21:56 -07:00
Sean Kaim
4ee70acf12 update to 1.75hotfix1 2017-03-06 13:26:15 -05:00
David Sparer
be5c66bd93 Merge pull request #438 from mRemoteNG/1_75_hotfixes
1.75 hotfix 1
2017-03-06 10:33:04 -07:00
David Sparer
5347e5a3aa implemented new versioning scheme. resolves #437 2017-03-06 10:27:25 -07:00
David Sparer
9b22254b6c update changelog 2017-03-06 10:24:41 -07:00
Sean Kaim
e5ccd27fd9 correct namespace and code clean up 2017-03-05 20:00:11 -05:00
Sean Kaim
d34ad62c8a fix possible (but highly unlikely) null assignment
found by ReSharper
2017-03-05 19:45:33 -05:00
Sean Kaim
0d0bee674d not used in portable version 2017-03-05 18:35:05 -05:00
Sean Kaim
279747d3a4 fix protection level / non-portable build failure 2017-03-05 15:01:56 -05:00
Sean Kaim
1e4bf38402 Fix copmlier warning CA1401 2017-03-05 14:54:02 -05:00
Sean Kaim
93d1163c5f fix complier warning CA1065
code cleanup/refactor
2017-03-05 14:44:03 -05:00
Sean Kaim
a3e436e42d convert big if-else to switch 2017-03-05 14:43:25 -05:00
Sean Kaim
e824886e19 remove redundant argument values
and other minor resharper cleanup
2017-03-03 16:54:02 -05:00
rheingold
9c724b31de Corrected also the app settings file 2017-03-03 12:16:47 +01:00
David Sparer
6a67e0ea8b resolved issue with export filter not being respected. resolves #427 2017-03-02 16:42:00 -07:00
David Sparer
7b118995ea updated changelog 2017-03-02 13:26:40 -07:00
David Sparer
35b4564644 turned off a feature of ObjectListView that was stealing focus from keepass autotype events. resolves #312 2017-03-02 13:02:51 -07:00
David Sparer
30df947365 resolved issue when clicking in connection tree white space #422 2017-03-02 08:55:10 -07:00
David Sparer
b1ec975612 Merge pull request #425 from mRemoteNG/1_75_release
1 75 release
2017-03-02 08:51:19 -07:00
David Sparer
a4851c8d81 added null guard when loading default conn info properties 2017-03-01 17:58:24 -07:00
David Sparer
469f48f473 Merge branch 'develop' into improve_credential_manager 2017-03-01 17:37:06 -07:00
David Sparer
c915ac4a74 Added null propagation check for single click handler. resolves #422 2017-03-01 17:35:13 -07:00
David Sparer
9b74c470da Merge branch 'v1_75_release_candidates' into develop
# Conflicts:
#	CHANGELOG.TXT
2017-03-01 17:14:48 -07:00
David Sparer
1034e434c4 updated changelog with release date 2017-03-01 16:23:40 -07:00
David Sparer
0a4935d193 fixed a brittle (and currently failing) test 2017-03-01 15:56:39 -07:00
rheingold
5995f6fbef Added czech localization file 2017-02-21 00:28:24 +01:00
Sean Kaim
0ca15a6c65 code clean up 2017-02-16 14:18:36 -05:00
David Sparer
72193833a9 removed the "export" flag from the confCons file - it is no longer necessary for us to differentiate between normal and exported confcons files 2017-02-16 09:21:38 -07:00
David Sparer
e40ffabe4a Merge branch 'v1_75_release_candidates' into develop
# Conflicts:
#	CHANGELOG.TXT
#	mRemoteV1/App/Export.cs
2017-02-16 08:51:43 -07:00
David Sparer
f419bff545 #394 resolved bug where export flag would not get set on the exported connections file 2017-02-16 08:29:31 -07:00
Sean Kaim
69eec0135e Update to SHA512 file hashes 2017-02-15 15:21:18 -05:00
David Sparer
a267e32e0e made the iserializer and ideserializer interfaces more generic 2017-02-14 15:52:20 -07:00
David Sparer
92a5249e45 renamed test class 2017-02-14 15:51:54 -07:00
David Sparer
fbfe664438 replaced duplicate code 2017-02-14 14:58:09 -07:00
David Sparer
b52b5b4287 renamed class 2017-02-14 14:53:20 -07:00
David Sparer
ba3513341a moved some source files into folders 2017-02-14 14:50:12 -07:00
David Sparer
de06ce909e fixed eventing bug when opening the cred manager multiple times 2017-02-14 13:26:16 -07:00
David Sparer
fa29b746e7 moved the IsLoaded property from the RepoConfig to the Repo since this is a state flag 2017-02-14 13:23:30 -07:00
David Sparer
5527ebf085 added an Auth attribute to the xml cred file to get around an issue when the file contains no passwords 2017-02-14 13:21:54 -07:00
David Sparer
cca2052b15 added ability to load/unload a repo 2017-02-14 10:36:40 -07:00
David Sparer
ec0338bb30 fixed small bug with the PasswordForm when it gets loaded multiple times 2017-02-14 10:36:22 -07:00
David Sparer
f40a1b6de8 added support for authenticating to a repo on load 2017-02-14 09:33:42 -07:00
David Sparer
7110337dcd added an interface for requesting a password from the user 2017-02-14 09:28:14 -07:00
David Sparer
cbfe850351 added a flag to set whether a repo is loaded or not 2017-02-14 08:43:45 -07:00
David Sparer
d6d768029b finished linking cred update events together 2017-02-13 15:59:58 -07:00
David Sparer
d003e086bb created a class and event type for handling collections that need to raise events for collection changes and child updates
this is for cases where you would like to have INotifyCollectionChanged and INotifyPropertyChanged implemented, but dont need the level of detail that those types provide.
2017-02-13 13:56:58 -07:00
David Sparer
a3b66ec456 defined new event args classes 2017-02-13 12:05:55 -07:00
David Sparer
1c3d41c03b cleanup 2017-02-11 20:42:20 -07:00
David Sparer
56b1751c3f set default page when opening up cred manager form 2017-02-11 20:41:20 -07:00
David Sparer
93724063e2 cleanup 2017-02-11 20:32:55 -07:00
David Sparer
72b8cd2ac8 credential lists are now loaded and saved from the provider list 2017-02-11 20:30:39 -07:00
David Sparer
e5b22255e9 added a Title property to cred repos to allow creating a friendly name 2017-02-11 19:12:35 -07:00
David Sparer
a4639e295d created page for selecting a credential provider for a new credential 2017-02-11 18:42:36 -07:00
David Sparer
8dc4246c98 renamed page 2017-02-11 18:00:45 -07:00
David Sparer
a187832cdc moved the repository list view to a new class 2017-02-11 17:58:36 -07:00
David Sparer
d08a46a573 fix 2017-02-11 17:57:49 -07:00
David Sparer
e86fcc9636 fix 2017-02-11 17:35:59 -07:00
David Sparer
1f60405d43 began converting credential editor to a page 2017-02-11 17:32:22 -07:00
David Sparer
8f568cc6ac loading creds 2017-02-11 17:31:01 -07:00
David Sparer
4d61820a78 made the treenode click handler generic 2017-02-11 17:25:13 -07:00
David Sparer
b6d49233fb removed CredentialManager in favor of the cred repo list 2017-02-11 16:23:44 -07:00
David Sparer
beac6be7db fixed some tests 2017-02-11 16:23:14 -07:00
David Sparer
b99931df95 started converting everything to use the cred repo list instead of the cred manager 2017-02-11 15:14:55 -07:00
David Sparer
00ba661456 refactored the credential repository to project all loaded items to a locally managed list 2017-02-11 14:39:08 -07:00
David Sparer
2ffde30340 fixed bug where config changes were automatically being accepted and saved 2017-02-11 13:35:29 -07:00
David Sparer
f97a84d2df repository config updates now trigger saves 2017-02-11 13:30:38 -07:00
David Sparer
c5bb10db4c fixed serialization bug 2017-02-11 13:06:54 -07:00
David Sparer
acf4d2f740 we can now save the cred repo list 2017-02-11 12:50:44 -07:00
David Sparer
1c2f6913bb set the cred repo list file path to a non-test value 2017-02-11 12:41:59 -07:00
David Sparer
31be8bee95 dont add cred providers with a duplicate guid 2017-02-11 12:38:33 -07:00
David Sparer
2a113efe5c we can now load the cred repo list 2017-02-11 12:35:02 -07:00
David Sparer
801791b4df renamed cred repo config property "Name" to "TypeName" 2017-02-11 12:18:19 -07:00
David Sparer
643a2ee739 created classes for deserializing a list of cred providers 2017-02-11 12:03:43 -07:00
David Sparer
cd9c97ffc0 password loaded when editing cred repo 2017-02-11 11:30:41 -07:00
David Sparer
c105319b08 added double click support for editing cred repos 2017-02-11 11:17:03 -07:00
David Sparer
d98fa381e8 edit button only active when we have a selected repo 2017-02-11 11:12:17 -07:00
David Sparer
1f39b43869 resolved bug where editing a cred repo would also create a new instance of it 2017-02-11 11:08:37 -07:00
David Sparer
3aeb6a662a we can now edit cred repos 2017-02-11 11:05:07 -07:00
David Sparer
d7c176d4fd resolved small bug in the xml cred repo editor page validation 2017-02-11 11:03:30 -07:00
David Sparer
cac1df7a66 fixed double-click support for selecting cred repo type 2017-02-11 10:54:31 -07:00
David Sparer
aafa383f56 refactored the pagesequence class to be event-based. sequenced pages no longer need a reference to the sequence controller 2017-02-11 10:49:19 -07:00
David Sparer
af6e2abdb2 added another convenience ctor for pagesequence to allow variable arity 2017-02-11 08:33:30 -07:00
David Sparer
05430f7e47 added convenience ctor to the pagesequence class 2017-02-11 08:28:06 -07:00
David Sparer
2daf4cf46a xml cred repo editor page now validates contents before allowing to confirm submission 2017-02-11 08:20:10 -07:00
David Sparer
52333beabe added support for setting the password-mask char for the new-password control 2017-02-11 08:10:26 -07:00
David Sparer
49d1e0622b removed unnecessary classes 2017-02-11 07:48:31 -07:00
David Sparer
eebd87c6b7 created a new class to handle sequences of pages that support next and previous page navigation 2017-02-11 07:44:06 -07:00
David Sparer
c1b6b30144 added ability to remove cred repositories 2017-02-10 17:05:35 -07:00
David Sparer
7703986c9e we can now view currently added credential repositories 2017-02-10 17:00:30 -07:00
David Sparer
6c272d9336 renamed ICredentialProviderCatalog to ICredentialRepositoryList 2017-02-10 16:41:43 -07:00
David Sparer
73b0416dbe we now use a single credential provider catalog throughout the app 2017-02-10 16:37:10 -07:00
David Sparer
c7760b0ed9 creating new xml repositories is mostly complete 2017-02-10 16:32:35 -07:00
David Sparer
c0db476f80 created a new-password control 2017-02-10 16:32:11 -07:00
David Sparer
7999c29b51 began writing logic for creating a new repo from the editor page 2017-02-10 14:52:20 -07:00
David Sparer
1d111a252e added support for double clicking a repo item to begin setup 2017-02-10 14:31:10 -07:00
David Sparer
93d085e23e we can now go back from the repo type selector page 2017-02-10 14:15:14 -07:00
David Sparer
67e0e34f40 clicking "Add" now advances to the repo selection page 2017-02-10 14:05:22 -07:00
David Sparer
098e61295c Renamed CredentialSourcePage to CredentialRepositoryPage 2017-02-10 13:53:18 -07:00
David Sparer
1d2666a343 we can now create cred repo editor pages for selected repo type 2017-02-10 13:03:11 -07:00
David Sparer
b8c2c86c59 renamed ICredentialProvider to ICredentialRepository and split up data/behavior to separate classes 2017-02-10 12:17:12 -07:00
David Sparer
edf0342404 began creating a page for adding a new credential repository 2017-02-10 09:51:16 -07:00
David Sparer
dc6815045c started splitting creential manager gui into a multipage control 2017-02-08 16:51:59 -07:00
David Sparer
23ed1cf5e5 bumped assembly version to 1.76 2017-02-08 09:26:06 -07:00
David Sparer
97715f260f removed old VB config file that is not used 2017-02-08 09:23:35 -07:00
David Sparer
87411ee952 Merge branch 'cleanup_frmMain' into develop 2017-02-08 09:16:19 -07:00
David Sparer
d0bbf1e4ad resolved a toolstrip loading bug due to the main menu being initialized too late 2017-02-08 09:11:50 -07:00
David Sparer
3bbd088733 some rename/cleanup 2017-02-08 09:11:15 -07:00
David Sparer
d96dd5fe82 factored out some logic from frmmain wndproc to a new class 2017-02-08 09:10:54 -07:00
David Sparer
6028e3f299 added a summary msg to one of the native method constants 2017-02-08 09:09:44 -07:00
David Sparer
37bfce1905 moved external tools tool strip to a new class 2017-02-07 16:00:40 -07:00
David Sparer
5993b30ccf moved the quick connect toolstrip to its own class 2017-02-07 15:17:19 -07:00
David Sparer
2fc6c4c0bc removed unnecessary instance var 2017-02-07 14:40:07 -07:00
David Sparer
0195a6bab5 refactored info menu to new class 2017-02-07 14:33:00 -07:00
David Sparer
ccb35bdc5a factored out tools menu to new class 2017-02-07 10:33:34 -07:00
David Sparer
bfadfaf261 moved main and view menus to new classes. they will be further split up to their component parts 2017-02-07 10:14:06 -07:00
David Sparer
d0180a6633 refactored a class out of frm main 2017-02-07 09:13:28 -07:00
David Sparer
afbc580ae6 refactored class out of frmmain 2017-02-06 15:30:59 -07:00
David Sparer
2b2e01f3d1 minor renames (resharper) 2017-02-06 15:26:47 -07:00
David Sparer
529f1ca835 renamed frmMain to FrmMain (resharper) 2017-02-06 15:19:52 -07:00
David Sparer
ee7993b918 at least contained the mess of loading creds/cons to a new class until it can be redesigned 2017-02-06 15:16:06 -07:00
David Sparer
8239a40c72 moved message collector setup 2017-02-06 15:03:36 -07:00
David Sparer
2c9f9a36c5 cleanup 2017-02-06 15:01:49 -07:00
David Sparer
307169fcc3 Merge branch 'develop' into 'cleanup_frmMain' 2017-02-06 15:00:35 -07:00
David Sparer
5ee69d24f7 removed unneeded tests 2017-02-06 14:40:40 -07:00
David Sparer
077106b71b removed unit test for now - will need to rework how log4net is integrated to make it less coupled 2017-02-06 14:38:36 -07:00
David Sparer
141e660d91 Merge branch 'v1_76_temporary_branch' into develop
# Conflicts:
#	CHANGELOG.TXT
2017-02-06 14:35:23 -07:00
David Sparer
be73699013 Merge branch 'message_collector_tweaks' into v1_76_temporary_branch 2017-02-06 14:32:26 -07:00
David Sparer
65e3649999 added changelog entry 2017-02-06 14:31:20 -07:00
David Sparer
994f1ae7ed added option to always log to the mremoteng directory 2017-02-06 14:28:49 -07:00
David Sparer
548e633b72 log file path updates no longer require app restart to take effect 2017-02-06 13:43:10 -07:00
David Sparer
87b98e7949 resolved bug with settings file upgrade overwriting new data 2017-02-06 13:42:11 -07:00
David Sparer
5692baf1f3 set the message icon for debug msgs 2017-02-06 11:29:25 -07:00
David Sparer
8a10a2aa18 split notification message list item creation to a new class 2017-02-06 11:29:07 -07:00
David Sparer
797bbf8870 set the new notifications page icon 2017-02-06 10:14:48 -07:00
David Sparer
edb3f9e885 some cleanup 2017-02-06 10:08:08 -07:00
David Sparer
a0008e165b created classes that tie the logging options to the settings file 2017-02-06 10:01:10 -07:00
David Sparer
3d55b033d6 created tests for MessageTypeFilterDecorator 2017-02-06 09:36:45 -07:00
David Sparer
93fb0efc67 created filter for messages with the OnlyLog flag 2017-02-06 09:22:24 -07:00
David Sparer
b7585ef02c moved the notification panel focuser to a new decorator class 2017-02-06 09:05:33 -07:00
David Sparer
fce07288e9 fix 2017-02-06 08:52:03 -07:00
David Sparer
3ccfdb2e97 pulled the message type filtering options out into a new decorator 2017-02-06 08:51:44 -07:00
David Sparer
5840e2ba07 moved all message filter options to a new interface 2017-02-06 08:26:29 -07:00
David Sparer
4daba88970 renamed the message type filter options 2017-02-06 08:24:48 -07:00
David Sparer
3180feb874 renamed IMessageWriter.Print to Write 2017-02-06 08:20:34 -07:00
David Sparer
17a430f31f removed WriteMessages from the IMessageWriter interface. it was unneeded 2017-02-06 08:14:39 -07:00
David Sparer
20d330f0f1 split up startup arg parsing to a new class and cleaned up the related code. added some debug msgs 2017-02-03 16:20:08 -07:00
David Sparer
27d0467e08 added a message collection function for adding multiple msgs at once. only one notification will be raised for a batch of msgs 2017-02-03 15:02:16 -07:00
David Sparer
5437967218 changed the message ctor to remove the datetime requirement. it will also be DateTime.Now 2017-02-03 15:01:07 -07:00
David Sparer
1228f0572d replaced calls to the log4net logger with calls to messagecollector since it is now safe to do so 2017-02-03 14:23:55 -07:00
David Sparer
9cf44c3050 minor cleanup 2017-02-03 14:07:07 -07:00
David Sparer
aa9b641787 renamed Messages options page to Notifications 2017-02-03 14:06:38 -07:00
David Sparer
2e3c4f33a2 removed setting that is no longer needed 2017-02-03 12:28:07 -07:00
David Sparer
39ef6ebdbf localized all message page text 2017-02-03 12:18:33 -07:00
David Sparer
4d08c22204 removed settings for the debug console message writer. it will only be included in debug builds 2017-02-03 11:55:48 -07:00
David Sparer
4041dd3ad5 localized the choose-log-path string 2017-02-03 11:55:14 -07:00
David Sparer
a38de8198f we can now open the log file from the options page 2017-02-03 11:47:03 -07:00
David Sparer
3369374e43 renamed MessageCollector2 to MessageCollector 2017-02-03 11:41:10 -07:00
David Sparer
d74631bbdb removed the old message collector 2017-02-03 11:39:52 -07:00
David Sparer
be8c392562 rearranged app startup to ensure the message collector is created as early in the process as possible 2017-02-03 11:37:25 -07:00
David Sparer
f564efb4d6 more cleanup of the Windows class 2017-02-03 11:07:40 -07:00
David Sparer
dee9e3c326 removed references to Windows.UpdatePanel 2017-02-03 10:54:02 -07:00
David Sparer
4ff8d7d68e removed references to Windows.ScreenshotPanel 2017-02-03 10:48:01 -07:00
David Sparer
789e467573 remove references to Windows.TreePanel 2017-02-03 10:43:42 -07:00
David Sparer
745b85a3ac removed references to Windows.ErrorsPanel 2017-02-03 10:39:23 -07:00
David Sparer
4f84c2cb01 removed all references to Window.ConfigPanel - we dont need it 2017-02-03 10:34:07 -07:00
David Sparer
83414acb1d fix tests 2017-02-03 10:32:30 -07:00
David Sparer
356effc6a9 split startup data logging to a new class and required a messagecollector to be passed in 2017-02-03 10:13:37 -07:00
David Sparer
88ec186b98 can restore log location to default 2017-02-03 10:10:33 -07:00
David Sparer
530615f049 resolve logging bug where cmdline args arent shown 2017-02-03 09:32:43 -07:00
David Sparer
afec12822f can now select log file path 2017-02-03 09:12:39 -07:00
David Sparer
f117620ead wired up the logging level selection 2017-02-03 08:39:25 -07:00
David Sparer
1c9f34ba1b the notification panel section of the messages page is now working 2017-02-03 08:32:31 -07:00
David Sparer
c26cd9876a the notification panel msg writer now respects the focus-on settings 2017-02-03 08:31:19 -07:00
David Sparer
32f7d37768 Moved message collector/writer setup to a separate class 2017-02-03 07:23:35 -07:00
David Sparer
3873e680e4 fix 2017-02-03 07:13:14 -07:00
David Sparer
ddc8a9a286 one more minor rename 2017-02-03 07:11:33 -07:00
David Sparer
399bde7588 renamed some classes and namespace around the message writers 2017-02-03 07:10:41 -07:00
David Sparer
5e51febee8 message writer settings will be saved in the settings file like all others. no reason to roll my own persistence strategy 2017-02-03 07:02:14 -07:00
David Sparer
6e8200a380 started building new options page for messages 2017-02-02 20:22:22 -07:00
David Sparer
fc9961b2de removed setting that will no longer be needed 2017-02-02 20:20:14 -07:00
David Sparer
d750e3e996 minor cleanup 2017-02-02 20:17:33 -07:00
David Sparer
1cd15c6f7c now loading and saving settings for the message printers 2017-02-02 20:17:15 -07:00
David Sparer
5c47acbcc3 added messageprinter setting de/serializer 2017-02-02 20:15:31 -07:00
David Sparer
1363c2893b modified the imessageprinter interface to include booleans to filter message types 2017-02-02 20:14:20 -07:00
David Sparer
cbc426014b the app now uses the newer message collector 2017-02-02 14:22:06 -07:00
David Sparer
17178e3ae3 added an extra space after the message class in the logs so that error and debug msgs have a space after them 2017-02-02 13:53:42 -07:00
David Sparer
b9299d90df modified the log4net logger to log debug level messages by default. we will futher restrict logging levels based on user preference within the app 2017-02-02 13:52:37 -07:00
David Sparer
aff5b46c5e there were only 2 messages using the Report type. Move those to use the Information type and renamed Report to Debug 2017-02-02 13:51:16 -07:00
David Sparer
2e83f81672 created a popup message printer 2017-02-02 13:31:34 -07:00
David Sparer
e352cc76cf Created a message printer for sending messages to the errors and infos window 2017-02-02 13:06:45 -07:00
David Sparer
cab2ee4fa4 cleaned up the error and info window class 2017-02-02 12:43:47 -07:00
David Sparer
bdfc839080 created a message printer adapter for the log4net logger 2017-02-02 12:08:39 -07:00
David Sparer
6beb21349b created a message printer for writing to the debug stream 2017-02-02 12:07:51 -07:00
David Sparer
b2240e8f1a created a replacement message collector that has no dependency on whatever printers may want to show its messages 2017-02-02 12:07:08 -07:00
David Sparer
32f43d46b5 created an interface for message printers 2017-02-02 12:05:32 -07:00
David Sparer
803d689bd3 renamed some imessage properties 2017-02-02 11:16:01 -07:00
David Sparer
66255bf443 created an interface for the message type 2017-02-02 10:54:11 -07:00
David Sparer
338a486513 resharper cleanup of messagecollector 2017-02-02 10:52:22 -07:00
David Sparer
b543343045 Merge branch 'improve_password_creation_classes' into v1_76_temporary_branch 2017-02-02 08:55:54 -07:00
David Sparer
28c60332e8 moved orchestration of cred and con loading to a separate function 2017-01-31 08:58:30 -07:00
David Sparer
9ddc45721f extracted some classes from Startup 2017-01-30 12:12:16 -07:00
David Sparer
2849baf857 Merge branch '378_ssh_connection_launched_on_single_click' into v1_75_release_candidates 2017-01-30 11:37:10 -07:00
David Sparer
768fdcd0e4 using MouseClick events rather than the OLV CellClick events. this should resolve #378 2017-01-30 11:33:27 -07:00
David Sparer
5280ef32cd created a has-special-characters constraint 2017-01-28 14:10:04 -07:00
David Sparer
59a7e4179b minor test fix 2017-01-28 13:40:55 -07:00
David Sparer
bd2054e5a4 created a has-upper-case constraint 2017-01-28 13:39:51 -07:00
David Sparer
69be19c02b created a has-lower-case constraint 2017-01-28 13:35:28 -07:00
David Sparer
fcffeb5734 created a password-has-numbers constraint 2017-01-28 13:15:43 -07:00
David Sparer
11b67208f4 created password length constraint 2017-01-28 12:42:46 -07:00
David Sparer
03e8342c90 Merge branch 'Create_basic_infrastructure_for_supporting_credential_manager' into v1_76_temporary_branch 2017-01-28 11:59:13 -07:00
David Sparer
fcd070066c Merge branch 'v1_76_temporary_branch' into Create_basic_infrastructure_for_supporting_credential_manager
# Conflicts:
#	mRemoteV1/Config/Settings/SettingsSaver.cs
#	mRemoteV1/Properties/Settings.Designer.cs
#	mRemoteV1/Properties/Settings.settings
#	mRemoteV1/Resources/Language/Language.resx
#	mRemoteV1/app.config
2017-01-28 11:57:12 -07:00
David Sparer
9b38308ad1 set date for rc1 build in changelog 2017-01-27 15:28:36 -07:00
Sean Kaim
5d79ad527e Merge remote-tracking branch 'refs/remotes/origin/develop' into v1_76_temporary_branch 2017-01-27 17:15:47 -05:00
Sean Kaim
afcdf96e5c changelog / credits update 2017-01-27 17:13:50 -05:00
Sean Kaim
ffc8b5619e Merge pull request #373 from mRemoteNG/cleanup_converts
Cleanup converts
2017-01-27 17:04:37 -05:00
David Sparer
3e40b08525 Merge pull request #348 from countchappy/develop
RDP Minutes to Idle Timeout - users cant enter invalid timeout values
2017-01-27 14:58:05 -07:00
David Sparer
9be49b3738 harvested credentials now start with a title composed like "username\domain" 2017-01-27 13:58:04 -07:00
David Sparer
724488911e credentials are now harvested for confCons versions 2.6 and older 2017-01-27 13:53:23 -07:00
David Sparer
8ac0bf5865 credential harvester now maps the harvested credentials to the IDs of the connectionInfos that were using them 2017-01-27 13:50:57 -07:00
David Sparer
57c1c38d52 fixed minor bug with PasswordAuthenticator 2017-01-27 13:47:24 -07:00
countchappy
237cf037be RDP Minutes to Idle Timeout - Update 5
Incorrect values entered in the Minutes to Idle Timout setting will be
corrected to fit in the range of 0-240, rather than be truncated.
2017-01-27 14:56:40 -05:00
David Sparer
8b98181752 created a helper to ensure that all connectioninfo objects in an xdoc have IDs 2017-01-27 11:01:42 -07:00
David Sparer
21993a4862 made a few calls to CredentialRecord safer 2017-01-27 09:46:55 -07:00
David Sparer
6e8e1ad74b putty now uses credential record 2017-01-27 09:42:04 -07:00
David Sparer
03da5b3cf1 VNC now uses credential record 2017-01-27 09:31:24 -07:00
David Sparer
f348ef1f96 ICA now uses new credential record 2017-01-27 09:29:42 -07:00
David Sparer
193cebed81 RDP connections now use the new credential record 2017-01-27 09:27:01 -07:00
David Sparer
f2f6156bd0 minor cleanup 2017-01-27 09:17:26 -07:00
David Sparer
0d7c3838f6 split connection serializer for confcons 2.6 and 2.7 into different classes
resolved a bunch of test failures
2017-01-27 09:15:07 -07:00
David Sparer
105e3360be informational message will display when a matching credential cannot be found for a connectioninfo 2017-01-27 07:51:27 -07:00
David Sparer
23dd3b4f41 minor cleanup 2017-01-26 16:12:09 -07:00
David Sparer
bc225f9656 saving and loading default credential now works 2017-01-26 16:11:56 -07:00
David Sparer
dd9f76f73b removed inherit username/domain/password from showing in the property grid 2017-01-26 14:41:43 -07:00
David Sparer
47ae8b903e hide credentialrecord in property grid if its inherited or if we're viewing the rootnode 2017-01-26 14:38:27 -07:00
David Sparer
3dcfd3738d connectionrecord and its inheritance are now serialized and deserialized 2017-01-26 14:32:07 -07:00
David Sparer
8993794a88 created a test for the credential deletion confirmer 2017-01-26 09:58:01 -07:00
David Sparer
a530e7e70a simplified a few tests 2017-01-26 09:45:28 -07:00
David Sparer
4791b8e53c removed unused class 2017-01-26 09:41:45 -07:00
David Sparer
6ddd19ac54 added a deletion confirmer to the credential manager 2017-01-26 09:41:15 -07:00
David Sparer
6a871e73e0 modified the interface for the IConfirmer to be generic 2017-01-26 09:38:55 -07:00
David Sparer
7ba106d97b credentials are now saved when cred property values change from any source 2017-01-26 09:05:11 -07:00
David Sparer
69c021cc54 credentials save when the credential manager raises its changed event 2017-01-26 08:43:32 -07:00
David Sparer
7a63bb395f resolved failing tests 2017-01-26 08:33:28 -07:00
David Sparer
1931695b03 Merge branch 'develop' into Create_basic_infrastructure_for_supporting_credential_manager 2017-01-26 08:19:10 -07:00
David Sparer
b953240966 created some ui elements to make selection credentials from the config window easier 2017-01-26 08:18:00 -07:00
David Sparer
e1c06af3b2 began switching code over to using the newer connectioninfo interface
created a credential manager class to help manage the list of current credentials
2017-01-26 08:17:11 -07:00
Sean Kaim
1cc7bfcb2d Merge remote-tracking branch 'refs/remotes/origin/develop' into cleanup_converts 2017-01-25 17:50:42 -05:00
Sean Kaim
2445c74638 code clean up and minor refactoring 2017-01-25 17:50:10 -05:00
Sean Kaim
6a69ed48a9 Merge pull request #372 from mRemoteNG/serialize_connectioninfo_id
Serialize connectioninfo ID
2017-01-25 17:01:29 -05:00
David Sparer
714c7eb8d1 refactored to remove a static reference to the ConnectionInfo base class 2017-01-25 14:44:24 -07:00
David Sparer
6790287470 renamed AbstractConnectionInfoData to AbstractLegacyConnectionRecord and marked it as obsolete 2017-01-25 14:43:42 -07:00
David Sparer
217693937f connectioninfo id is now serialized to the confCons file 2017-01-25 14:02:20 -07:00
David Sparer
94a8a5c753 credential harvester now only returns unique credentials sets (based on domain & username) 2017-01-25 13:19:02 -07:00
Sean Kaim
22300577cf Merge pull request #371 from jcefoli/develop
Quick fix for #369 (Reset Layout Ignores Notification Pane)
2017-01-25 15:06:39 -05:00
Joe Cefoli
6a07f4e731 Quick fix for #369 2017-01-25 14:02:16 -05:00
David Sparer
63ace60dcc Merge pull request #367 from mRemoteNG/295_default_con_values_not_saved
resolved issue where saving default con properties would fail
2017-01-25 09:58:50 -07:00
David Sparer
601951582d resolved issue where saving default con properties would fail
enum, int, bool -> string was throwing an exception. now using a simpler strategy for type conversion
resolves #295
2017-01-25 09:54:54 -07:00
David Sparer
ca4d22602f began creating credential harvester to help split credentials from confCons v2.6 to confCreds v1.0 2017-01-25 08:16:29 -07:00
Sean Kaim
42774a6227 code cleanup 2017-01-24 21:07:25 -05:00
Sean Kaim
7f65bfeebb remove unecessary converts 2017-01-24 21:05:33 -05:00
Sean Kaim
88178a6b6b remove unnecessary converts 2017-01-24 21:04:20 -05:00
Sean Kaim
3f9ca1454e removed unnecessary converts and code clean up 2017-01-24 21:02:19 -05:00
Sean Kaim
9a3f1bd5cf remove unecessary convert 2017-01-24 20:58:43 -05:00
Sean Kaim
0186254f74 remove unecessary converts 2017-01-24 20:56:22 -05:00
Sean Kaim
6dc432e6a9 remove unecessary converts and code clean up 2017-01-24 20:51:24 -05:00
Sean Kaim
01db774e05 remove unecessary convert & code clean up 2017-01-24 20:48:37 -05:00
Sean Kaim
aaef3dc19c remove unecessary convert 2017-01-24 20:45:58 -05:00
Sean Kaim
bb8009363d remove unnecessary converts 2017-01-24 20:45:17 -05:00
Sean Kaim
5fd403cf08 remove unecessary convert 2017-01-24 20:42:26 -05:00
Sean Kaim
168c77eac5 remove unnecessary parens 2017-01-24 20:40:46 -05:00
Sean Kaim
bf865cbe5d remove unecessary convert 2017-01-24 20:38:38 -05:00
Sean Kaim
3e3029461b remove unnecesary convert 2017-01-24 20:35:51 -05:00
Sean Kaim
c750e0a64e remove unecessary convert 2017-01-24 20:34:32 -05:00
Sean Kaim
fc2662c402 remove unnecessary convert 2017-01-24 20:33:04 -05:00
Sean Kaim
29dad51ff7 Remove unneccessary Converts 2017-01-24 20:28:29 -05:00
Sean Kaim
9250dde5b0 Merge pull request #364 from mRemoteNG/176_scheduled_updates
1.76 scheduled updates to 1.75
2017-01-24 20:04:47 -05:00
Sean Kaim
29ca72d8ca Change log update 2017-01-24 20:03:20 -05:00
Sean Kaim
87c89a0de5 reformat code 2017-01-24 19:55:18 -05:00
Sean Kaim
73f72e39d3 Fix incorrect cast & code clean up
Fixes #362
2017-01-24 19:49:22 -05:00
Sean Kaim
e00ba62606 Refactored Tools.Controls.cs
Fixes #363
2017-01-24 17:52:15 -05:00
Sean Kaim
48d53cecce Rename Tab dialog - populate original name
Fixes #258
2017-01-24 17:36:41 -05:00
David Sparer
da44bba3fe created a builder class for creating a crypto provider from an xml element 2017-01-24 13:35:03 -07:00
David Sparer
b55e42ba78 added cue banner support for text boxes 2017-01-24 09:34:38 -07:00
David Sparer
233a9843d7 password field now uses the secure text box implementation 2017-01-24 09:16:16 -07:00
David Sparer
6184087456 added secure text box 2017-01-24 09:09:25 -07:00
David Sparer
237ad2fa3c made the add/remove buttons a bit larger to accomodate for potentially longer localized words 2017-01-24 08:41:17 -07:00
David Sparer
b8037c04d0 created some localization strings for the credential editor 2017-01-24 08:37:31 -07:00
David Sparer
cdb9c2eddb added more localization strings for the credential manager 2017-01-24 08:28:40 -07:00
David Sparer
8a284f0767 removed unnecessary class 2017-01-24 08:15:30 -07:00
David Sparer
83a57b08ab prevented annoying 'ding' sound on key press 2017-01-23 16:07:56 -07:00
David Sparer
d1a251ff6c cred manager now recognizes delete key for removing entries 2017-01-23 15:48:43 -07:00
David Sparer
12f0c826c8 cred manager no longer groups items 2017-01-23 15:47:25 -07:00
David Sparer
4aa5da8c0d Merge branch 'develop' into Create_basic_infrastructure_for_supporting_credential_manager 2017-01-23 15:32:55 -07:00
David Sparer
e0fd81e938 resolved bug when clicking in blank space in the connection tree 2017-01-23 15:32:06 -07:00
David Sparer
58509bcf41 renamed method 2017-01-23 15:31:12 -07:00
David Sparer
8aa0eb1d64 added a key handler for enter and 'a' 2017-01-23 15:26:49 -07:00
David Sparer
ece974c1be fixed bug where selected row would be deselected after committing a change to the list 2017-01-23 15:25:27 -07:00
David Sparer
56dd3c32cb tweaked the credential editor window 2017-01-23 14:33:16 -07:00
David Sparer
118e3a3bd3 added a close button to the cred manager and bound 'esc' to it 2017-01-23 12:24:40 -07:00
David Sparer
8cd3c2a89f simplified the credential list updating mechanism. we dont need an observable list 2017-01-23 11:42:01 -07:00
David Sparer
9c4672fd68 credential manager and cred editor windows now start in the middle of their parent window 2017-01-23 11:39:23 -07:00
Sean Kaim
04f6f4f9cf Make version selectable/copyable
fixes #360

Also update copyright year since it's 2017 now...
2017-01-23 12:59:29 -05:00
David Sparer
7b851e7ac8 optimized event raising so we only save the credential list once for multiple property changes 2017-01-20 13:02:57 -07:00
David Sparer
6c0b33c0dc we can now save and load credentials to xml 2017-01-20 12:27:59 -07:00
David Sparer
4d951c9827 wrapped cred deserialization in try catch 2017-01-20 12:27:05 -07:00
David Sparer
172232be48 created a new generic collection type for getting updates on property changes for items within a collection 2017-01-20 12:25:18 -07:00
David Sparer
d749a13611 moved the add/remove buttons 2017-01-20 10:12:22 -07:00
David Sparer
3998be3f93 created credential saver and loader classes 2017-01-20 10:10:59 -07:00
David Sparer
a381827890 aead crypto provider now returns empty string when asked to decrypt empty message 2017-01-20 10:10:17 -07:00
David Sparer
eecfe45443 xml cred deserializer now ensures empty strings are used for any missing xml attributes 2017-01-20 10:09:42 -07:00
David Sparer
ad5eb7b594 xml credential serializer now serializes domain value 2017-01-20 10:08:58 -07:00
David Sparer
9ce09eb406 Remove button is disabled when no credential selected 2017-01-19 15:15:13 -07:00
David Sparer
9c23f3d1d9 credential list now persists between opening/closing the manager 2017-01-19 15:09:17 -07:00
David Sparer
3f779b7ceb credential record now implements INotifyPropertyChanged. this makes updating the objectlistview much easier 2017-01-19 14:47:49 -07:00
David Sparer
3bc53bd7f8 created screen for viewing credential list and for editing single credentials 2017-01-19 14:29:54 -07:00
David Sparer
27b61fe9a4 renamed the credential Name property to Title 2017-01-19 08:57:08 -07:00
David Sparer
4d94c7ac7a credential deserializer now supports variable decryption parameters 2017-01-19 08:47:27 -07:00
David Sparer
4eb1125b7b credential serializer now provides encryption parameters to support variable decryption 2017-01-19 08:09:11 -07:00
David Sparer
496b481c31 added an xml schema for confcons version 2.7
this removes the username/password/domain from the confcons file schema and puts an id pointing to the credential to use
2017-01-19 07:37:31 -07:00
David Sparer
77120cf156 added xml schema for the credential xml 2017-01-18 16:15:02 -07:00
David Sparer
80f11c0f70 created xml credential deserializer and tests 2017-01-18 16:14:29 -07:00
David Sparer
bee8059cbe added a credential record serializer and tests 2017-01-18 15:31:19 -07:00
David Sparer
0f2e72172b Merge branch 'develop' into Create_basic_infrastructure_for_supporting_credential_manager
# Conflicts:
#	mRemoteV1/Credential/CredentialInfo.cs
#	mRemoteV1/Credential/CredentialList.cs
2017-01-18 14:23:50 -07:00
David Sparer
25d1e0a74d Merge pull request #352 from mRemoteNG/299_better_testing_of_connection_tree
Refactor connection tree to be more testable
2017-01-18 09:03:26 -07:00
David Sparer
cbd9d16e4c simplified the connection tree refresh method.
the complexity of trying to add refresh optimizations was causing bugs. i will need to find a new way of reducing flicker
2017-01-17 15:31:40 -07:00
David Sparer
cb708b3217 resolved bug where some context menu hot keys would not work after opening the menu on the root node 2017-01-17 13:45:25 -07:00
David Sparer
4e5a22a7e8 resolved a minor bug where creating a new node would screw up the selected node in the tree
We were trying to do multiselection when it is currently not supported by our implementation.
2017-01-17 09:47:00 -07:00
Sean Kaim
3722db93c6 Merge pull request #349 from jogleasonjr/patch-1
Fix typo in README.MD
2017-01-16 17:56:59 -05:00
John Gleason
b43331dc27 Fix typo in README.MD 2017-01-16 15:20:07 -06:00
countchappy
80c6ce81e1 RDP Minutes to Idle Timeout - Update 4
Added an option to alert if disconnected due to inactivity.
2017-01-16 15:14:27 -05:00
David Sparer
1a776359c4 added test for folder expander 2017-01-14 11:44:09 -07:00
David Sparer
113e4035e5 refactored the deletion confirmer to make it testable 2017-01-14 11:14:30 -07:00
David Sparer
a03095ab8e refactored the node deletion confirmer to be interface-based. this will lead to improved testability 2017-01-14 10:38:11 -07:00
David Sparer
d03f830622 added null test for the composite click handler 2017-01-14 10:36:54 -07:00
David Sparer
9b42dc9f10 Refactored some click handlers and created a test for it
During testing I realized that the double and single click handlers were exactly the same thing, so i combined them into the composite click handler.
2017-01-14 10:11:22 -07:00
David Sparer
fd7adf3c64 added some more tests 2017-01-13 17:43:06 -07:00
David Sparer
d0b7e72f15 Merge pull request #342 from countchappy/develop
RDP Optional Minutes to Idle Timeout
2017-01-13 17:05:25 -07:00
countchappy
5a61c6b7df RDP Minutes to Idle Timeout - Update 3.1 2017-01-13 18:49:39 -05:00
countchappy
c897eae04e RDP Minutes to Idle Timeout - Update 3
Fixed name and description not showing up in the config window.
2017-01-13 18:08:36 -05:00
countchappy
c33095cd0e RDP Minutes to Idle Timeout - Update 2.1
Fixed my goof!
2017-01-13 17:11:07 -05:00
David Sparer
05d8b7983a reorganized some test files and added tests for null args 2017-01-13 12:12:22 -07:00
countchappy
166d9f7133 RDP Minutes to Idle Timeout - Update 2
Added null conditional operator to prevent throwing a null reference
error for beta users.
2017-01-13 13:41:19 -05:00
David Sparer
2ce31f35cc more file organizing 2017-01-13 10:54:39 -07:00
David Sparer
ce5d0cefe3 organized some files 2017-01-13 10:41:28 -07:00
David Sparer
6cc668fe83 added more tests for connectiontree delegates 2017-01-12 15:30:30 -07:00
David Sparer
ac0aa8daf4 added a method to the IConnectionTree interface to make testing another class possible 2017-01-12 15:20:32 -07:00
David Sparer
16b094be44 we no longer need the extensions now that we are subclassing TreeListView 2017-01-12 15:16:55 -07:00
David Sparer
b3e6fd7b96 created test for another tree handler 2017-01-12 15:09:24 -07:00
David Sparer
893d5d92f3 made all relevant classes use IConnectionTree 2017-01-12 15:09:05 -07:00
David Sparer
77add0b39d added an interface for iconnectiontree. this kind of hacky and really just exists to make the tests work. this indicates we have some coupling on ConnectionTree that shouldn't be there.. 2017-01-12 15:08:12 -07:00
David Sparer
b4f8ab0a49 moved a call to settings further up in the abstraction level to make testing easier 2017-01-12 14:13:35 -07:00
David Sparer
1d46c44c21 added tests for another click handler 2017-01-12 13:57:44 -07:00
David Sparer
12da35f875 made the rest of the connectioninitiator functions non-static 2017-01-12 13:57:15 -07:00
David Sparer
8970a15d4e added tests for one of the click handlers 2017-01-12 13:33:12 -07:00
David Sparer
82217478d9 made one of the methods for the connectioninitiator non-static (they should eventually all be non-static).
This change was made to making testing easier (make connectioninitiator mockable)
2017-01-12 13:31:29 -07:00
David Sparer
4c792308bb moved all click-actions for the tree to separate classes to make them easily composable
this has the nice effect of also pushing any calls to the settings class outside the classes that are actualy doing work, making them much easier to test in isolation
2017-01-12 12:47:23 -07:00
David Sparer
978d94a2cd resolved issue with unit test. we could not select a tree object without that object being visible 2017-01-12 11:12:18 -07:00
David Sparer
b195d89b76 moved a few more functions closer to their call site 2017-01-12 11:02:11 -07:00
David Sparer
875888a341 moved a method closer to its call site 2017-01-12 10:51:05 -07:00
David Sparer
6631a13d20 cleanup 2017-01-12 10:31:50 -07:00
David Sparer
28728fe29f moved some connectiontree post setup actions into their own classes. post setup actions are now managed by a composite 2017-01-12 10:29:30 -07:00
David Sparer
aa954cbea9 minor cleanup 2017-01-12 09:24:59 -07:00
David Sparer
dae339f494 moved the image getter delegate code into its imagelist since the img names have to match up. seems like a better division of responsibility 2017-01-12 09:17:34 -07:00
David Sparer
5bcb59f876 moved the setup of the tree image list to its own class 2017-01-12 08:59:34 -07:00
David Sparer
9132592fd7 moved the setup of the name column to its own class 2017-01-12 08:58:52 -07:00
Sean Kaim
ca592fac77 update change log 2017-01-11 17:56:37 -05:00
Sean Kaim
ea657824c2 Streamlined non-integrated IntApp connections
This seems to fix #325
2017-01-11 17:49:37 -05:00
Sean Kaim
99e7072e27 code clean up
relates to #325
2017-01-11 17:01:08 -05:00
David Sparer
ad32f4a0a3 Merge branch 'develop' into 299_better_testing_of_connection_tree 2017-01-11 15:00:44 -07:00
David Sparer
b9cdd0996d moved click handling responsibility out of the connectiontreewindow and into the context menu class 2017-01-11 14:58:29 -07:00
Sean Kaim
e92a76f95b "return ;" annoyed me...
And I did a find and replace in the solution instead of the one file I
was working on... So I'm going with it...
2017-01-11 16:56:14 -05:00
countchappy
10d152342f RDP Minutes to Idle Timeout - Update 1
Fixed some language file stuff.
2017-01-11 16:44:53 -05:00
countchappy
7e4b0635b2 RDP Minutes To Idle Timeout
Allows users to configure a number of minutes until the session will
automatically disconnect if left idle.
2017-01-11 15:23:43 -05:00
Sean Kaim
eec17f10d5 update changelog 2017-01-10 10:54:03 -05:00
Sean Kaim
ac9d5dfa95 code clean up 2017-01-10 10:51:34 -05:00
Sean Kaim
4c2b3738c2 Don't attempt to connect to folders
Fixes #334
2017-01-10 10:46:34 -05:00
Sean Kaim
6f29183b45 code clean up and logging / exception handling 2017-01-09 11:32:04 -05:00
Sean Kaim
dd65c9c588 update changelog 2017-01-06 12:53:56 -05:00
Sean Kaim
cb8bb05627 Merge pull request #329 from mRemoteNG/release_channels
Add Release channels
2017-01-06 12:32:05 -05:00
David Sparer
256f6d8fdd extracted and renamed some methods 2017-01-06 10:15:33 -07:00
Sean Kaim
a88fdddecb allow all tests to pass regardless of build type 2017-01-06 11:58:00 -05:00
Sean Kaim
fd5e3e24df Run tests from local resources 2017-01-06 11:16:02 -05:00
Sean Kaim
244d27427d update some log messages 2017-01-05 14:30:24 -05:00
Sean Kaim
55c42a3cca Merge remote-tracking branch 'refs/remotes/origin/develop' into release_channels 2017-01-05 11:21:46 -05:00
Sean Kaim
3c9cfbdf92 log exception messages only 2017-01-05 11:13:43 -05:00
Sean Kaim
46dd58d26e External Tool/Connection - code clean up & logging
Relates to #325
2017-01-05 11:05:59 -05:00
Sean Kaim
051dd2e567 Add Beta and Dev tests 2017-01-04 11:15:51 -05:00
Sean Kaim
17ccf40082 re-add version check & adjust CPU target for tests
fixed compliler warning regarding architecture mismatch.
2017-01-04 10:47:23 -05:00
Sean Kaim
0f2b61694d Merge remote-tracking branch 'refs/remotes/origin/develop' into release_channels 2017-01-04 09:15:22 -05:00
Sean Kaim
0aed66df47 fix build & test failure 2017-01-03 18:17:03 -05:00
Sean Kaim
94a6e9a886 code clean up around startup / frmMain
Slightly related to #298
2016-12-22 10:01:20 -05:00
Sean Kaim
355f48b6ba We want only Valid info! 2016-12-16 17:29:03 -05:00
Sean Kaim
d1a6526c22 Added functional UpdateStableChannel test
It's working! It's working!
2016-12-16 17:27:57 -05:00
Sean Kaim
975a308647 reworking code to better test & code cleanup 2016-12-15 17:44:55 -05:00
Sean Kaim
5138eaeb68 Merge remote-tracking branch 'refs/remotes/origin/develop' into release_channels 2016-12-15 15:02:30 -05:00
David Sparer
45dfaa1b21 removed unused code 2016-12-13 13:11:50 -07:00
David Sparer
715f92f3d5 removed unnecessary code 2016-12-13 13:07:52 -07:00
Sean Kaim
8d5a765040 pass importSubOU option in to recursive calls
Fixes remaining problems reported in #211
2016-12-13 14:22:39 -05:00
Sean Kaim
34fa6b158b load the default domain when opening the form
Related to #311
2016-12-13 13:34:44 -05:00
David Sparer
78c1f6b8e3 Fixed bug where we could not drop between items (rearrange) 2016-12-13 10:28:38 -07:00
David Sparer
adccb91106 removed unnecessary code 2016-12-13 10:06:50 -07:00
David Sparer
1e213dfff7 resolved issue with deleting the last folder in the tree 2016-12-13 09:58:24 -07:00
David Sparer
d469fa1d40 Made the deletion confirmation functionality plugable to make testing easier 2016-12-13 09:51:18 -07:00
David Sparer
737db469ba Fixed test name 2016-12-13 09:27:32 -07:00
David Sparer
a44a33d508 minor cleanup 2016-12-13 09:16:05 -07:00
David Sparer
a518d41c78 updated connection tree window tests 2016-12-13 09:07:21 -07:00
David Sparer
d5360c6568 Completed splitting the connection tree from the connection tree window 2016-12-13 09:00:38 -07:00
Sean Kaim
d468107311 Load users default/current domain
Fixes #311

Caused by 97a0e2413e

Some code clean up as well...
2016-12-13 10:50:36 -05:00
Sean Kaim
3f65e1bfa0 add tests for update channels
Some code clean up as well...
2016-12-13 10:31:16 -05:00
David Sparer
a22758f5cd organized code into regions to help prepare for later refactoring 2016-12-09 12:57:26 -07:00
David Sparer
88b5b9d1e7 began moving connectiontree functions out of the code for the window and into its own class.
this will improve testability and reduce class complexity
2016-12-07 15:07:15 -07:00
Sean Kaim
e38f7c880e code clean up
Added some log messages for #298
2016-12-06 19:13:09 -05:00
David Sparer
6367b58994 began adding unit tests for the connectiontree ui 2016-12-06 15:28:56 -07:00
David Sparer
5a54b5ee64 Merge pull request #292 from ForensicITGuy/develop
Added code and screenshots for Quick Connect help files
2016-12-06 08:36:00 -07:00
ForensicITGuy
002e41f418 Added Quick Connect screenshots into project. Modified folder name and HTML code to include spaces as observed in the other screenshot folders. Set to track content and copy if newer in output. 2016-12-06 01:04:52 -06:00
David Sparer
f7787c748a Added multiple build badges based on update channel to readme.md 2016-12-03 11:17:41 -07:00
David Sparer
f9b18b45a4 updated the jenkins build badge to point to the sanitized url. added a title to readme.md 2016-12-03 10:46:20 -07:00
David Sparer
8966f44272 resolved issue with Jenkins not being about the build PRs 2016-12-02 16:49:49 -07:00
Tony M Lambert
3dbcbae61f Added code for Quick Connect documentation
Added HTML code to document Quick Connect functionality
2016-12-02 15:49:04 -06:00
Sean Kaim
24508abe7a rename channels 2016-12-02 16:41:37 -05:00
Tony M Lambert
27f8f2542e Added screenshots for Quickconnect documentation 2016-12-02 15:25:05 -06:00
Sean Kaim
44ee3ceec8 User Selectable Release Channels
Final = Final
Beta = Beta & RC
Pre-Release = Alpha, Beta & RC
2016-12-02 14:57:49 -05:00
Sean Kaim
b08112aec0 Load Ext Tools - add logging
Relates to #291 & #236
2016-12-02 12:20:02 -05:00
Sean Kaim
9d2bbda2b9 ExtTools code clean up
Relates to #291 & #236
2016-12-02 12:11:46 -05:00
David Sparer
6eff685b18 updated changelog 2016-12-01 15:40:04 -07:00
David Sparer
2d08146de8 updated changelog for 1.75beta3 2016-12-01 15:38:26 -07:00
Sean Kaim
f131420a44 Change from .exe to .msi
Fixes #289
2016-12-01 17:22:50 -05:00
David Sparer
245ea5463e updated the folder path resolution for the release folder to be a bit safer 2016-12-01 15:04:49 -07:00
David Sparer
71bb90a769 Set build date 2016-12-01 14:47:43 -07:00
David Sparer
e71a22fbb3 Added badge for CII progress https://bestpractices.coreinfrastructure.org/projects/529 2016-12-01 14:24:20 -07:00
Sean Kaim
802c4c28f5 smaller image 2016-12-01 15:51:59 -05:00
Sean Kaim
2cda6fc057 updated/added some links 2016-12-01 15:47:40 -05:00
Sean Kaim
a0303c70f9 Merge pull request #285 from mRemoteNG/284_md5_update_checks
284 md5 update checks
2016-11-30 15:32:37 -05:00
Sean Kaim
f5b9f58747 generate update files 2016-11-30 15:31:34 -05:00
Sean Kaim
0d8dee0ed7 use MD5 checksum for zip and msi releases
and some code cleanup
2016-11-30 14:50:55 -05:00
David Sparer
ace02263dd added a few links 2016-11-30 12:48:29 -07:00
David Sparer
a2398bfb3a Merge pull request #189 from mRemoteNG/update_contribution_guide
Update CONTRIBUTING.md
2016-11-30 12:22:44 -07:00
David Sparer
cd7ddb5ba1 minor typo fixes 2016-11-30 12:08:48 -07:00
Sean Kaim
ae37a4c85d some additions
- added short code style section
- added "ready" and "Documentation" label notes
- made note of Static Code Analysis tools for PRs
2016-11-30 13:49:34 -05:00
Sean Kaim
32e1716061 Merge remote-tracking branch 'refs/remotes/origin/develop' into update_contribution_guide 2016-11-30 13:32:27 -05:00
David Sparer
d92616f39f Merge pull request #282 from mRemoteNG/280_connections_file_corrupted_when_cancelling_password_prompt
Connections file corrupted when cancelling password prompt
2016-11-30 10:28:50 -07:00
David Sparer
0c13db46fd save not performed when connections file is not loaded 2016-11-30 10:20:26 -07:00
David Sparer
b6fc9a8ec1 Updated credits and changelog for PR #275 2016-11-29 11:51:11 -07:00
David Sparer
a672141352 Merge pull request #275 from ForensicITGuy/develop
Addition of HTML code for SSH File Transfer help page
2016-11-29 11:46:53 -07:00
David Sparer
df354e483a Merge pull request #279 from mRemoteNG/278_silent_installs_not_detecting_prerequisites
Resolves #278
2016-11-29 11:16:00 -07:00
David Sparer
89874545b1 updated changelog 2016-11-29 11:12:45 -07:00
David Sparer
b0fdd09f39 added prereq checks to non-gui executions 2016-11-29 11:11:31 -07:00
David Sparer
fbf620ae36 Merge pull request #277 from mRemoteNG/271_make_installer_aware_of_previous_install_path
make installer aware of previous install path. Resolves #277
2016-11-29 11:00:42 -07:00
David Sparer
509f7da12e installer now saves and loads the previous install location in the registry 2016-11-29 10:37:54 -07:00
David Sparer
64a40e4ed0 renamed the property used for the fully install path from APPLICATIONROOTDIRECTORY to INSTALLDIR to make it easier to type at the cmdline 2016-11-29 09:21:22 -07:00
David Sparer
ab253dbf28 Merge pull request #273 from mRemoteNG/add_turkish_translation
Add Turkish translation provided by forum user rizaemet
2016-11-29 08:18:56 -07:00
David Sparer
feb19df20f minor update to credits 2016-11-29 08:15:15 -07:00
ForensicITGuy
d5d2241f1b Fixed Indentation and added Troubleshooting Info 2016-11-29 00:03:48 -06:00
ForensicITGuy
5af1a0aa87 Fixed Indentation 2016-11-28 23:55:44 -06:00
ForensicITGuy
816621651d Added help HTML code for SSH File Transfer 2016-11-28 23:03:23 -06:00
David Sparer
8f2aa08dbe Updated changelog and credits 2016-11-28 13:15:09 -07:00
David Sparer
d20e1a6e9c added Turkish translation provided by forum user rizaemet 2016-11-28 13:01:31 -07:00
Sean Kaim
2a5a4c9ace code clean up 2016-11-22 17:14:27 -05:00
Sean Kaim
2e7fd3fb60 code clean up 2016-11-22 16:54:06 -05:00
David Sparer
56579100f1 Merge pull request #265 from mRemoteNG/254_component_check_issues
Resolves #254
2016-11-22 08:04:37 -07:00
David Sparer
1e5cd24acd update changelog 2016-11-22 08:03:11 -07:00
David Sparer
7f152cef20 Merge branch 'develop' into 254_component_check_issues 2016-11-22 07:57:32 -07:00
David Sparer
3958d2d597 update changelog 2016-11-21 12:15:16 -07:00
David Sparer
84a3b31e8d Merge pull request #263 from mRemoteNG/260_unable_to_decrypt_confCons_v2_5_fullencryption
Resolves #260
2016-11-21 10:06:15 -07:00
David Sparer
cc15c12d19 Resolved bug with deserializing confCons v2.5 custom password full encryption files 2016-11-21 10:01:34 -07:00
David Sparer
50e7b89b15 Added test for deserializing confCons v2.5 custom password full encryption files 2016-11-21 10:00:55 -07:00
David Sparer
0b507cb66a Fixed bug where custom decryption passwords would require 2 password prompts to decrypt 2016-11-21 09:59:46 -07:00
David Sparer
b1c697ea09 ensured that the rootnodeinfo is not null during decryption 2016-11-21 09:25:43 -07:00
David Sparer
dbcf15e45b Created test to ensure deserializing confCons v2.5 w/ full encryption works 2016-11-21 09:05:35 -07:00
David Sparer
21d864ce7a Merge pull request #262 from mRemoteNG/261_double_click_expands_tree_node_folder
Re-add double click support for toggling tree node expansion. Resolves #261
2016-11-21 08:47:02 -07:00
David Sparer
dcf1f1af10 Added double click support for toggling tree node expansion. (existed in previous version - this was a feature regression) 2016-11-21 08:44:55 -07:00
David Sparer
9c25a39b7b split ICA object initialization from setting Parent property. this had created an appearance bug. connected to #254 2016-11-21 08:23:33 -07:00
David Sparer
d79687db53 Added some extra debugging messages. will remove once done investigating 2016-11-18 11:52:23 -07:00
David Sparer
77428e0fe5 minor cleanup 2016-11-18 09:48:21 -07:00
David Sparer
53df3b5cfa moved the Rdp and Vnc component check using directives into the try blocks. connected to #254 2016-11-18 08:15:24 -07:00
David Sparer
f2e1c9e959 moved the using directive of the ICA check into the try block. this seems to resolve #254 2016-11-17 15:16:45 -07:00
David Sparer
a004b2f3e0 split component checks to separate functions to make them a bit easier to digest mentally 2016-11-17 14:50:54 -07:00
Sean Kaim
65b4398b0e code clean up 2016-11-17 15:06:58 -05:00
Sean Kaim
0b83d2869d code clean up - use "using"
Attempt to help #254
2016-11-17 15:01:49 -05:00
Sean Kaim
1a408b810c use var everywhere in Logger
For #253
2016-11-17 14:38:51 -05:00
David Sparer
bab5879c3d Component check now tests for the correct RDP version. 2016-11-17 08:29:33 -07:00
David Sparer
6f79954989 re-added a few more missing menu icons 2016-11-16 15:07:43 -07:00
David Sparer
8d4622dc31 re-add Options menu icon 2016-11-16 15:00:39 -07:00
David Sparer
fecdc48b09 Merge branch 'trying_to_fix_the_main_menu_position' into develop 2016-11-16 14:35:29 -07:00
David Sparer
0edb51a32a set safe default positions for the quick connect and external tools menu items 2016-11-16 14:27:02 -07:00
David Sparer
750bd2f61b another attempt to fix the main menu default location 2016-11-16 13:29:56 -07:00
Sean Kaim
f6fa9821f0 Add PayPal badge to the readme 2016-11-15 14:50:08 -05:00
Sean Kaim
3ed06dafb0 suppress complier warning MSB3305
Processing COM reference "" from path "". At least one of the arguments
for '' cannot be marshaled by the runtime marshaler.  Such arguments
will therefore be passed as a pointer and may require unsafe code to
manipulate.
2016-11-15 14:17:17 -05:00
Sean Kaim
4be6a5b5a9 ReSharper - code clean up 2016-11-15 14:08:55 -05:00
Sean Kaim
a4c77ce33e Fix complier error CA2213 2016-11-15 14:02:06 -05:00
Sean Kaim
f6babd01ca Fix complier warning 2016-11-15 14:00:22 -05:00
Sean Kaim
17ce9a0903 Remove unused / unreferenced UI element 2016-11-15 13:43:57 -05:00
David Sparer
824b4681e4 Merge pull request #248 from mRemoteNG/247_inheritance_not_applied_correctly
Resolves #247
2016-11-15 10:20:34 -07:00
David Sparer
7ba7e0b2d8 resolved the issue with inheritance not being applied correctly for folders. created a few tests to help guard against this from happening again. 2016-11-15 10:15:49 -07:00
David Sparer
0391eabc79 fixed some test files 2016-11-15 10:14:35 -07:00
Sean Kaim
e2ebf6b8fe code clean up 2016-11-15 12:05:50 -05:00
Sean Kaim
58d3d678ca code clean up 2016-11-15 11:41:50 -05:00
David Sparer
b52b68595b set changelog version and date 2016-11-15 08:32:14 -07:00
Sean Kaim
0a8d606686 About: line some things up a little better 2016-11-15 09:45:09 -05:00
Sean Kaim
d1ef9f3e99 Fix build errors 2016-11-11 17:31:26 -05:00
Sean Kaim
5a830c17db ReShaper Cleanup 2016-11-11 17:24:02 -05:00
Sean Kaim
10c4a4d665 CA1034: Nested types should not be visible
https://msdn.microsoft.com/library/ms182162.aspx
2016-11-11 16:43:46 -05:00
Sean Kaim
e93e7f05c6 CA1031: Do not catch general exception types
https://msdn.microsoft.com/library/ms182137.aspx
2016-11-11 16:40:59 -05:00
Sean Kaim
e2c6240798 Fix Release build failure 2016-11-11 16:35:14 -05:00
Sean Kaim
24ad483214 Fix other complier warnings & code clean up 2016-11-11 16:30:22 -05:00
Sean Kaim
bfa53224a6 CA1060: Move to NativeMethods class
https://msdn.microsoft.com/en-us/library/ms182161.aspx
2016-11-11 16:29:57 -05:00
Sean Kaim
00ec25d38c Fix compilier warning: CA2202 & refactor
https://msdn.microsoft.com/en-us/library/ms182334.aspx
2016-11-11 16:25:47 -05:00
Sean Kaim
348fc156de Commented out Unused variable 2016-11-11 16:21:46 -05:00
Sean Kaim
1a9cb5335a adjust changelog display in about form 2016-11-11 14:36:08 -05:00
Sean Kaim
0abfab96a4 changelog and credits update 2016-11-11 12:24:47 -05:00
Sean Kaim
bbfbbbf91e make sub OU import optional 2016-11-10 17:53:32 -05:00
David Sparer
8db0150c4a Merge pull request #241 from mRemoteNG/240_Config_window_buttons_sometimes_deactivate
resolves #240
2016-11-10 11:00:29 -07:00
David Sparer
3d7db6136f resolved the issue of config window buttons being deactivated in some cases. the config window was incorrectly tracking the selected tree node. 2016-11-10 10:57:03 -07:00
David Sparer
ace6c1167b bit more cleanup 2016-11-10 10:20:48 -07:00
David Sparer
4644dfbd7b initial resharper cleanup 2016-11-10 10:00:39 -07:00
David Sparer
c7b205dbde Began creating a serializer for saving credential providers 2016-11-09 15:42:51 -07:00
David Sparer
ffff2636ae Made ICredentialProvider implement IEnumerable. Added a few properties to the ICredentialProvider 2016-11-09 15:42:20 -07:00
David Sparer
c69e1bb091 Fleshed out the CredentialProviderCatalog 2016-11-09 15:00:12 -07:00
David Sparer
49531285c9 Renamed class CredentialCatalog to CredentialProviderCatalog 2016-11-09 14:37:04 -07:00
David Sparer
b9824d0095 Renamed test to reflect var name change 2016-11-09 14:36:28 -07:00
David Sparer
3dc04f9246 Renamed UniqueId to just Id 2016-11-09 14:27:22 -07:00
Sean Kaim
1bf6dc37d9 Merge pull request #234 from mRemoteNG/211_AD_Sub_OU_Import
Fixes #211
2016-11-09 14:54:17 -05:00
Sean Kaim
97a0e2413e Fixed MR-220
Don't close the AD importer after import
Add Close button (for when you're done with the importer)
2016-11-09 14:20:01 -05:00
Sean Kaim
c5f199bdf8 recurively import OU, Sub-OU and servers 2016-11-08 17:31:50 -05:00
David Sparer
656e3ff022 Began fleshing out the CredentialRecordCatalog which will be a master list of all ICredentialRecords. Will probably be refactoring this a bit more. 2016-11-07 15:33:06 -07:00
David Sparer
94f1a80323 ICredentialLists now hold a reference to their assoviated credential provider 2016-11-07 15:26:11 -07:00
Sean Kaim
11256e6988 code clean up 2016-11-07 16:05:36 -05:00
David Sparer
db6c32891a Renamed ICredentialCatalog to ICredentialProviderCatalog 2016-11-07 13:38:38 -07:00
David Sparer
6d819206ea Renamed ICredential to ICredentialRecord 2016-11-07 13:34:43 -07:00
Sean Kaim
32240ee475 Allow the update options page for portable versions 2016-11-07 14:22:42 -05:00
Sean Kaim
77a1c2cfb8 code clean up
convert if else -> switch
use ?: where possible
use "var"
"return ;" - why??? Also, why does that space annoy me so much?
😕
2016-11-07 12:23:04 -05:00
Sean Kaim
0f6d7ce2a4 Merge pull request #224 from mRemoteNG/160_portable_update_check
160 portable update check
2016-11-06 17:12:55 -05:00
Sean Kaim
e8738adc40 correct file name 2016-11-06 17:05:49 -05:00
Sean Kaim
bca02edead fix a boo-boo 2016-11-06 16:59:41 -05:00
Sean Kaim
abf81ac26b Download portable zip
* code clean up
* Compare MD5 hash
* Display changelog properly direct from GH
2016-11-06 16:56:59 -05:00
Sean Kaim
011d2f83f6 clean up update code 2016-11-06 15:19:13 -05:00
Sean Kaim
1a80c5273c Use same exact format as installer version 2016-11-06 15:04:48 -05:00
Sean Kaim
cf8f31168e upgrade check file hash creation 2016-11-06 15:03:27 -05:00
Sean Kaim
e25d7ca995 Here are the basics for portable update checks... 2016-11-03 17:43:53 -04:00
David Sparer
51fa8994c3 Resaved test file with KdfIterations=5000 2016-11-02 16:04:05 -06:00
David Sparer
78852b7119 Added a test to ensure we can serialize then deserialize with custom kdf values 2016-11-02 15:59:53 -06:00
David Sparer
193bb0bf26 The xml decryptor wasn't passing the kdfiterations value to the cryptoprovider. It was being essentially hard-coded in... whoops
Added a new test to ensure we can serialize then deserialize with a custom kdf value
2016-11-02 15:59:25 -06:00
Sean Kaim
d862462bbf Fix build failures (tests)
I don't want to risk breaking any existing SQL implementations at this
point by updating the schema... Especially since I don't have the time
to test it properly.
2016-11-02 17:05:44 -04:00
Sean Kaim
dcecd30e7c Fix build failure (tests) 2016-11-02 17:00:37 -04:00
Sean Kaim
a01ef3bb08 Change update URL
Fixes #162
2016-11-02 16:35:03 -04:00
Sean Kaim
60cd2c2b12 RDP audioqualitymode option
fixes #172
2016-11-02 15:49:45 -04:00
Sean Kaim
daad1cac5e Fixed problem saving confCons.xml
Intoduced in commit 9a32aa3350

Removed "_saveUpdate" bool and related checks since it's not used
anywhere else. It was meaningless code (that caused a problem when
ReShaper "cleaned" it up).
2016-11-02 15:30:11 -04:00
Sean Kaim
c6b89425b1 FilteredPropertyGrid code cleanup 2016-11-02 14:10:50 -04:00
David Sparer
70408ca8ee Finalized the first draft and removed the template lines 2016-10-31 15:54:42 -06:00
David Sparer
b3bf86d404 Added a few domain specific functions to ICredentialList 2016-10-31 09:17:43 -06:00
David Sparer
296c337eb6 renamed some classes to make more sense 2016-10-31 08:25:22 -06:00
David Sparer
a6f71911fe Added folder in which we can place new credential providers 2016-10-28 12:24:48 -06:00
David Sparer
b91a781d27 Added interface for ICredentialProvider 2016-10-28 12:23:49 -06:00
David Sparer
6aa363830b Minor formatting fix 2016-10-28 11:52:11 -06:00
David Sparer
fffc0f9eae Added a copy constructor to the CredentialRecord 2016-10-28 11:41:27 -06:00
David Sparer
1d2889f5b8 Can create new credential record with a specific Guid 2016-10-28 11:18:53 -06:00
David Sparer
6ed7568cd9 Added UniqueId property to ICredential 2016-10-28 11:11:11 -06:00
David Sparer
22ca5b76b4 Created an interface for the credential repository 2016-10-28 10:51:07 -06:00
David Sparer
a03ce5bf7b Created minimalistic class to encapsulate the credential list (repository) 2016-10-28 10:32:53 -06:00
David Sparer
2994806a35 Created an interface and implementation for credential records 2016-10-28 10:00:16 -06:00
David Sparer
be17960ce6 Removed credential classes that are not used 2016-10-28 09:25:37 -06:00
David Sparer
eeb2f0ad60 Merge pull request #209 from mRemoteNG/Fix_password_support_for_international_chars
Investigate password support for international chars
2016-10-28 08:49:10 -06:00
David Sparer
314e5bc364 minor cleanup 2016-10-25 11:40:43 -06:00
David Sparer
a294bfde11 Added test to ensure that strings with international characters are serialized and deserialized correctly 2016-10-25 11:40:01 -06:00
David Sparer
baa496fc07 Merge pull request #199 from mRemoteNG/Make_XmlSerializer_class_testable
The XmlConnectionsSerializer class was broken into smaller classes that better adhere to SRP.

Closes #180
2016-10-25 11:17:07 -06:00
David Sparer
4ca29d5d2e Removed an unused variable in Runtime 2016-10-25 11:13:43 -06:00
David Sparer
5e7074a297 Fixed minor bug when turning off custom password encryption 2016-10-25 11:10:52 -06:00
David Sparer
fd6268ce8a Updated the deserializer / decryptor to look at the rootnodeinfo for decryption key rather than static Runtime. There was some state leaking that caused unit tests to fail intermittently 2016-10-25 10:59:43 -06:00
David Sparer
806da552ce Added a test for serializing a single connection node 2016-10-25 09:34:03 -06:00
David Sparer
47561340e3 minor cleanup 2016-10-25 09:33:34 -06:00
David Sparer
b374952141 Renamed the ConnectionsDecryptor to XmlConnectionsDecryptor and moved it into the Serializers namespace 2016-10-25 08:53:07 -06:00
David Sparer
e098970d82 Added some tests to ensure that the xml serializer produces output that the deserializer can handle. 2016-10-25 08:25:57 -06:00
David Sparer
6ca5f5e877 minor cleanup 2016-10-25 08:14:49 -06:00
David Sparer
6b023c5fb6 Simplified the xml serializer by chunking it into appropriate classes 2016-10-24 15:40:28 -06:00
David Sparer
bd30103758 Fixed bug where we were not using the correct encryption key during serialization 2016-10-24 15:39:50 -06:00
David Sparer
e9ead72e79 Added logic to the XmlConnectionsDocumentCompiler to respect the FullFileEncryption flag 2016-10-24 14:54:08 -06:00
David Sparer
513edc58ab Created XmlConnectionsDocumentEncryptor to handle encrypting the entire connections xml file 2016-10-24 14:51:48 -06:00
David Sparer
fd7e7bd439 Created a class to handle compiling the structure of the xml document (child/parent relationships) 2016-10-24 13:12:39 -06:00
David Sparer
f510f20f57 Created an xml serializer specifically for dealing with the root connections node 2016-10-24 11:47:35 -06:00
David Sparer
a0a92b9b40 RootNodeInfo.PasswordString will now return either a custom password (if one is set) otherwise the default password 2016-10-24 11:24:35 -06:00
David Sparer
ba878c7587 Moved some of the responsibility of the default encryption password into the RootNodeInfo class. This simplifies serialization a bit, though may not be the best place for storing encryption passwords 2016-10-24 10:51:59 -06:00
David Sparer
f1f76a4910 XmlConnectionNodeSerializer now respects save filter settings for serializing inheritance 2016-10-24 09:04:51 -06:00
David Sparer
3ea4bc29ba Began splitting individual xml element serialization from serializing the structure of the document. Created unit tests to ensure the attributes are serialized correctly 2016-10-21 12:47:20 -06:00
David Sparer
82848aa4cd Added a section on pull requests 2016-10-20 15:29:58 -06:00
David Sparer
5131604ba7 Added drafts for submitting bugs and feature requests 2016-10-20 12:33:23 -06:00
David Sparer
1be821b07a added rough draft of the contribution intro 2016-10-20 11:30:49 -06:00
David Sparer
1ed475d469 Test for confversion serialized 2016-10-19 18:03:45 -06:00
David Sparer
e11413eab8 The XmlConnectionsSerializer now looks to its crypto provider for the value of KdfIterations. This insulates the function from global state (Settings) 2016-10-19 18:00:14 -06:00
David Sparer
98db923ac7 Added get/set property KeyDerivationIterations to the ICryptographyProvider interface 2016-10-19 17:54:45 -06:00
David Sparer
7376ff1c9b XmlSerializer now requires a cryptoprovider be given to the ctor. Reduces reliance on global state (Settings) 2016-10-19 17:43:02 -06:00
David Sparer
d427e3e0ae Fixed CryptoFactory tests 2016-10-19 17:26:18 -06:00
David Sparer
550119a53a Modified the ICryptographyProvider interface to require getters for the cipher engine and mode using their enum types 2016-10-19 17:17:28 -06:00
David Sparer
2df182c4c9 disable resharper name checking for a few enums 2016-10-19 16:56:38 -06:00
David Sparer
2b9b872ad4 Added test 2016-10-19 15:28:44 -06:00
Sean Kaim
94853714c7 code clean up / fix complier warning 2016-10-18 17:31:09 -04:00
David Sparer
01529a8028 Began creating tests for the XmlConnectionsSerializer 2016-10-18 15:27:59 -06:00
David Sparer
71d348227e Merge branch 'Remove_unused_code' into develop 2016-10-18 14:56:40 -06:00
Sean Kaim
76f585a051 code clean up 2016-10-18 16:48:32 -04:00
David Sparer
f1085716d9 Removed references to the My namespace 2016-10-18 13:58:55 -06:00
David Sparer
93bb620099 Remove the defunct My.Settings file 2016-10-18 13:49:54 -06:00
David Sparer
ded0bd7d12 Merge pull request #179 from mRemoteNG/Create_more_tests
Createed more tests
2016-10-18 13:46:24 -06:00
Sean Kaim
088f646d6f updater code clean up 2016-10-18 11:01:52 -04:00
David Sparer
e6a00f7935 Merge branch 'develop' into Create_more_tests
# Conflicts:
#	mRemoteNGTests/mRemoteNGTests.csproj
2016-10-18 08:55:28 -06:00
Sean Kaim
e5d625f294 code clean up 2016-10-17 21:25:04 -04:00
Sean Kaim
6e3bfcdf04 Remove unused code 2016-10-17 20:52:36 -04:00
David Sparer
10bd19e390 The Tools.EnvironmentInfo class didn't need to exist. Replace a single call to it with Environment.Is64BitProcess 2016-10-17 15:33:07 -06:00
David Sparer
9a1cb822d1 Created tests for the NodeSearcher 2016-10-17 13:14:29 -06:00
David Sparer
8ad5f3426c Removed the Impersonator class. This was only ever used for the Sessions feature which was removed in v1.74 2016-10-17 12:34:14 -06:00
David Sparer
2070a98a72 Minor cleanup 2016-10-17 12:32:33 -06:00
David Sparer
b97410dab7 Removed unused/unnecessary code 2016-10-17 12:25:07 -06:00
David Sparer
d47bc021a5 Added a test for GetDefaultPort 2016-10-17 12:04:38 -06:00
David Sparer
0b2dfecf27 Created more containerinfo tests 2016-10-17 11:45:59 -06:00
David Sparer
46ea97333e Added more tests for the containerinfo 2016-10-17 11:19:27 -06:00
David Sparer
598a9f6a0f Added a few more tests for the LegacyRijndaelCryptographyProvider 2016-10-17 10:31:36 -06:00
Sean Kaim
ef7d92d6bd code clean up 2016-10-17 12:29:05 -04:00
David Sparer
da4fe41f34 Added extra test to cover setting the authenticator max attempts 2016-10-17 09:24:40 -06:00
David Sparer
91fe4050b2 Modified several tests that were failing on some machines due to differing environment variables. Tests are now more resilient 2016-10-14 13:09:35 -06:00
David Sparer
23da6cf69e Removed unused test 2016-10-14 09:57:03 -06:00
David Sparer
51883b450f Adding various other graphics/assets provided by Riley during the turnover 2016-10-14 08:56:49 -06:00
David Sparer
cbdf02db55 Merge pull request #174 from mRemoteNG/Make_UI_more_responsive_during_save/load
Resolves #166
2016-10-14 08:52:25 -06:00
David Sparer
196096cd65 Made a few Save calls async. These probably were async before and were accidentally changed. 2016-10-14 08:19:31 -06:00
David Sparer
476ac38883 Merge pull request #173 from mRemoteNG/Reduce_duplicate_password_serialization
Reduce duplicate password serialization
2016-10-14 08:15:33 -06:00
David Sparer
90fea916fd Passwords will now only be serialized if the SaveFilter allows them to be, and if the connection/container does NOT inherit the password. 2016-10-14 08:07:30 -06:00
David Sparer
6fccd203a4 Merge pull request #171 from mRemoteNG/Make_key_derivation_iterations_a_user_option
Make key derivation iterations a user option
2016-10-13 18:44:57 -06:00
David Sparer
f2f0ee0179 Key derivation iterations is now saved in the settings (for serialization) and the confCons file (for deserialization) 2016-10-13 18:43:46 -06:00
David Sparer
1f9218bd5a Added tests for the key generator 2016-10-13 18:01:36 -06:00
David Sparer
966f7b2d61 Decryption now uses the new key derivation class 2016-10-13 17:28:25 -06:00
David Sparer
58c4b541b0 Little cleanup on decryption. Now uses the new key derivation class 2016-10-13 17:23:55 -06:00
David Sparer
f6c490fc62 Created a key derivation interface and initial Pkcs5 implementation 2016-10-13 17:17:34 -06:00
David Sparer
be59392814 Merge pull request #170 from mRemoteNG/Decryption_failing_with_custom_password
More work needs to be done to cleanup the related classes and reduce coupling, though this PR is starting to get a bit large for what the original intent was. Of particular issue are the calls to Runtime.EncryptionKey. The current implementation makes it very easy to use the wrong encryption key. Resolves #168
2016-10-13 15:59:13 -06:00
David Sparer
d0e21d7d8a Added tests for all current versions and significant variations of confCons. More changes to the deserialization classes were required to make them more testable. Still needs significant work to be considered good code 2016-10-13 15:49:49 -06:00
David Sparer
737373940e PasswordAuthenticator will only attempt reauthentication up to MaxAttempts 2016-10-13 15:46:17 -06:00
David Sparer
c639b89511 Added a custom EncryptionException type that inherits from the BouncyCastle type. This gives us a bit of namespace insulation (we shouldn't reference BouncyCastle outside of the mRemoteNG.Security namespace). 2016-10-13 12:43:47 -06:00
David Sparer
c530b3f8b4 Fixed bug where we could not turn custom password encryption off 2016-10-13 12:25:45 -06:00
David Sparer
1592a448f3 Simplified the authentication code when deserializing xml 2016-10-13 12:00:49 -06:00
David Sparer
c5ab2b1373 Changed the AeadCryptographyProvider to use the localized error message when decryption fails 2016-10-13 11:52:57 -06:00
David Sparer
f14f2cb5b7 Modified the LegacyRijndaelCryptographyProvider to throw errors when decryption fails. This is more in line with the other crypto providers 2016-10-13 11:51:24 -06:00
David Sparer
9c2945d270 Forgot to commit one changed line 2016-10-13 11:48:31 -06:00
David Sparer
05357c24f6 Removed unnecessary resource file from tests and made it a string constant instead (it was a small amount of text) 2016-10-13 11:47:15 -06:00
David Sparer
75839f330c Created test to ensure decryption failures throw an exception in AeadCryptographyProvider 2016-10-13 11:33:03 -06:00
David Sparer
ba0a9bbe58 moved the IAuthenticator into the Security.Authentication namespace 2016-10-13 10:32:23 -06:00
David Sparer
fb082471fe Created a new interface & class for authenticating passwords. This will replace the ConnectionsDecryptor class 2016-10-13 10:23:08 -06:00
David Sparer
f8968f2eb1 Resolved issue with the password prompt box not appearing when trying to decrypt with custom password. Class needs to be cleaned up. 2016-10-13 09:13:02 -06:00
David Sparer
990605948b Changed the exception when decryption fails from the generic "Exception" type to the more specific "EncryptionException" type to make catching easier. 2016-10-13 09:10:47 -06:00
David Sparer
21c96281a8 Resolved issue where encrypted values were not being decrypted correctly. (it was using the wrong decryption provider) 2016-10-13 09:09:47 -06:00
Sean Kaim
1ad7fce7a5 update nugets / fix access denied on post build 2016-10-12 17:12:05 -04:00
David Sparer
76162953e6 Resolved build failure 2016-10-12 14:23:59 -06:00
Sean Kaim
b934e29dc0 Merge pull request #167 from mRemoteNG/137_Update_Check
137 update check
2016-10-12 15:52:13 -04:00
Sean Kaim
93c128438c Merge changes from devlop into 137_Update_Check
Fixed conflicts in mRemoteV1/UI/Forms/frmOptions.cs
2016-10-12 15:48:17 -04:00
Sean Kaim
c283ddbb6a remove announcement info and cleanup 2016-10-12 15:39:44 -04:00
David Sparer
e3085a7054 Export file selection dialog box now selects file type filter based on Export form selection 2016-10-12 12:27:23 -06:00
David Sparer
4aa9a6e7a3 Changed the mRemoteNG csv exporter to not use the non-existant TreeNode for serializing its location in the tree. Resolves #165 2016-10-12 12:09:28 -06:00
David Sparer
76b0057deb Merge pull request #164 from mRemoteNG/Remove_RemoteDesktop2008_export_option
Closes #144
2016-10-12 11:36:22 -06:00
David Sparer
5d964f7638 Removed the visionapp Remote Desktop 2008 export option and all related code 2016-10-12 11:30:31 -06:00
David Sparer
81610dee0e Merge pull request #158 from mRemoteNG/Implement_new_cryptography_providers
Implement new crypto providers
2016-10-12 10:05:53 -06:00
David Sparer
f64c0ae266 Code cleanup 2016-10-12 10:00:31 -06:00
David Sparer
324992f6ff Fixed a variable that should have been renamed 2016-10-12 09:58:50 -06:00
David Sparer
c35ce9ffe1 Renamed source file to match class name 2016-10-12 09:53:05 -06:00
David Sparer
a13a6d3919 Renamed the SaveFilter properties to include the prefix "Save" 2016-10-12 09:51:08 -06:00
David Sparer
ac01c6fff2 Renamed the Save class to SaveFilter to better indicate its purpose 2016-10-12 09:49:33 -06:00
David Sparer
53074c7b20 Simplified the Save class 2016-10-12 09:45:38 -06:00
David Sparer
1d4ef9474f Added tests of all BlockCipherEngine and BlockCipherMode combinations to ensure encryption/decryption is working. 2016-10-12 09:33:18 -06:00
David Sparer
59e948fa06 Renamed function to better show its purpose 2016-10-12 09:06:18 -06:00
David Sparer
55fe30b02c Resolved bug when unable to decrypt the confCons file. The app will now exit without attempting to save the cons file (avoiding data corruption issues) 2016-10-12 09:00:28 -06:00
David Sparer
e2929f43a3 Code cleanup of GeneralAppInfo (mostly just renames) 2016-10-12 08:19:37 -06:00
David Sparer
9d67f58490 Replaced all calls to GeneralAppInfo.EncryptionKey to Runtime.EncryptionKey 2016-10-12 08:16:05 -06:00
David Sparer
a862240ed7 Code cleanup 2016-10-12 08:09:28 -06:00
David Sparer
0f604f453d Code cleanup 2016-10-12 07:38:47 -06:00
David Sparer
113e9eba79 Deserialization now works for full file encryption 2016-10-11 20:02:54 -06:00
David Sparer
9af610a45b Rewrote the full file encryption code for the xml serializer. It now conforms to the expected placement of encrypted data 2016-10-11 16:09:42 -06:00
Sean Kaim
e8db5d267e display proper options page on customize
and code clean up
2016-10-11 17:41:11 -04:00
David Sparer
201fbb71c1 Xml deserializer is working for the new confcons schema to detect and use variable encryption methods. Full file decryption does not currently function. 2016-10-10 20:08:01 -06:00
David Sparer
2f87e55ae6 Incremented confcons file serialization version 2016-10-10 19:42:22 -06:00
David Sparer
34af797ad2 Modified xml serializer to use the new confcons schema 2016-10-10 19:41:14 -06:00
David Sparer
4ca640eee5 Made modifications to the confcons v2.6 schema. Eliminated the EncryptionInfo node. Its attributes are now owned by Connections node. 2016-10-10 19:31:22 -06:00
David Sparer
29d1bf7ce5 Updated the max supported confcons version to 2.6 2016-10-10 15:24:36 -06:00
David Sparer
c2f9c687ce Added an attribute to the Xml element "EncryptionInfo" to indicate whether we should expect full file encryption 2016-10-10 15:21:45 -06:00
David Sparer
a8da64cc6a Removed old code for serializing the complete xml file 2016-10-10 15:20:51 -06:00
David Sparer
d522258e0a Made the nonce size a bit smaller for CCM mode to avoid some issues with large nonces 2016-10-10 15:08:10 -06:00
Sean Kaim
5f738f97ea Remove more announcement stuff 2016-10-10 16:53:38 -04:00
Sean Kaim
db319825a1 fix update file parsing 2016-10-10 16:52:33 -04:00
David Sparer
cbb9ceb709 XmlSerialization now saves the new EncryptionInfo element 2016-10-10 14:50:37 -06:00
David Sparer
333ee232ae Fixed a small issue with the CCM mode nonce size 2016-10-10 14:48:32 -06:00
David Sparer
963b483697 null access checks 2016-10-10 14:06:43 -06:00
David Sparer
49425a37ac Added attribute to schema 2016-10-10 14:06:02 -06:00
Sean Kaim
0da975a9d3 fix build error & cleanup 2016-10-10 15:31:55 -04:00
Sean Kaim
1ea0522fcb MR-364 - remove announcements
And some code clean up
2016-10-10 15:23:55 -04:00
David Sparer
aaaa0e6aea Little simplification of the v2.6 schema 2016-10-10 11:39:13 -06:00
David Sparer
42368f05f8 Xml serializer now respects encryption settings 2016-10-10 11:26:54 -06:00
David Sparer
4e51a5db73 Created an updated confCons schema which saves encryption details 2016-10-10 11:22:24 -06:00
David Sparer
4bd5a3675f Minor security page layout change 2016-10-10 09:59:45 -06:00
David Sparer
a4d3850f13 Changed the localized text "Block Cipher" to "Block Cipher Mode" 2016-10-10 09:56:51 -06:00
David Sparer
864d370994 Simplified some code 2016-10-10 09:53:24 -06:00
David Sparer
47f0550cea Security settings now save. Simplified data binding to the encryption dropdowns 2016-10-10 09:34:00 -06:00
David Sparer
1bbc2b0165 Resolved issue with de/serializing encrypting settings 2016-10-10 09:19:33 -06:00
David Sparer
fc8a1ec4fc Renamed the EncryptionBlockCipher setting to EncryptionBlockCipherMode 2016-10-10 09:13:06 -06:00
David Sparer
4baabd7d07 Moved the confcons schema to a new folder 2016-10-10 08:19:53 -06:00
David Sparer
92ba170cdf Added schema attributes for the root Connections node and added sequence indicator for connectioninfo nodes. Schema appears to be complete 2016-10-10 08:12:34 -06:00
David Sparer
e842850695 #157 Began creating xml schema file for the current confCons file since we will need to change the schema to include the current encryption parameters 2016-10-09 09:23:32 -06:00
Sean Kaim
41fcbb2989 enable update check 2016-10-07 17:50:22 -04:00
Sean Kaim
d6a6cf6a59 code clean up & remove ugly colors (go to control) 2016-10-07 17:49:49 -04:00
David Sparer
113c8f6d4a Combo boxes now set their selected item on creation based off of the user settings 2016-10-07 13:03:17 -06:00
David Sparer
8218acddca Created dropdowns for choosing the encryption engine and the block cipher 2016-10-07 12:44:11 -06:00
David Sparer
7cb65df19e Rearranged the Advanced page after removing an option 2016-10-07 12:25:30 -06:00
David Sparer
91ba993279 Moved the option to completely encrypt the connections file from the Advanced page to the Security page 2016-10-07 12:23:53 -06:00
David Sparer
505f3dd947 Began creating the Security options page 2016-10-07 12:17:59 -06:00
David Sparer
7eca66e2c4 Added shield icon for the new security options page 2016-10-07 12:13:26 -06:00
David Sparer
3111c5437b Merge pull request #156 from mRemoteNG/Installer_does_not_respect_KB2923545_to_fulfill_RDP8_requirement
Installer now respects KB2923545 to fulfill RDP8 requirement. This closes #151
2016-10-07 11:19:59 -06:00
David Sparer
d32a1adead Installer now accepts either the RDP8 or RDP8.1 KB 2016-10-07 11:18:09 -06:00
David Sparer
9c5a2c0196 Added more efficient support for checking if atleast one of a number of KBs are installed. 2016-10-07 10:26:21 -06:00
David Sparer
19a76008d7 Merge pull request #149 from mRemoteNG/Hunting_for_memory_leaks
Hunting for memory leaks
2016-10-07 09:01:36 -06:00
David Sparer
2ffcccdc6f Fixed minor memory leak of Collection and Property changed event handlers when changing the ConnectionTreeModel associated to the ConnectionTreeWindow 2016-10-06 11:04:00 -06:00
David Sparer
67c01046be Removed unnecessary implementations of IDisposable 2016-10-05 13:50:55 -06:00
David Sparer
c755d651cc Removed all destructors since they were a very bad idea to implement 2016-10-05 13:41:35 -06:00
David Sparer
0529729626 Merge pull request #148 from mRemoteNG/Connection_icon_not_updating_until_mouseover
Resolved #141
2016-10-05 13:07:21 -06:00
David Sparer
984d989f14 #141 TreeListView objects now update immediately when their OpenConnections list contents change 2016-10-05 12:57:29 -06:00
David Sparer
a204e34d53 Modified the Asserts lines of a few tests to give better info on failure 2016-10-05 12:45:50 -06:00
David Sparer
3e47041820 Fixed minor bug where ProtocolList.Clear() would trigger a CollectionChanged event even when no items were removed (list already empty) 2016-10-05 12:43:27 -06:00
David Sparer
c471f621b2 #141 ConnectionInfo now listens to collection changed events from the ProtocolList and raises a PropertyChanged event for OpenConnections when the list contents changes. 2016-10-05 12:37:05 -06:00
David Sparer
e2e010c418 Created test to check for safe indexer handling of unknown object types 2016-10-05 11:51:44 -06:00
David Sparer
913e0dd3e4 #141 Implemented INotifyCollectionChanged on ProtocolList and created unit tests 2016-10-05 11:47:22 -06:00
David Sparer
192a718d08 Cleanup of the protocollist. connected to #141 2016-10-05 10:45:48 -06:00
David Sparer
a881232eb1 Merge pull request #145 from mRemoteNG/MR-975_Replace_TreeView_with_TreeListview
MR-975 / #143 replace tree view with tree listview
2016-10-04 15:28:11 -06:00
David Sparer
cf73e827e0 Quick changelog entry 2016-10-04 15:25:14 -06:00
David Sparer
bf97905fe9 Merge branch 'develop' into MR-975_Replace_TreeView_with_TreeListview 2016-10-04 15:19:04 -06:00
David Sparer
f962b8a573 Right clicking on an empty connection panel no longer displays the context menu 2016-10-04 15:15:38 -06:00
David Sparer
9e9786ecc7 Resolved minor bug with copying default connection info data to folders 2016-10-04 15:14:37 -06:00
David Sparer
59d22b536a Fixed bug that occurs on startup when non-english language is selected. 2016-10-04 14:50:58 -06:00
David Sparer
e8d17fd733 Suppress tree refresh errors which occassionally occur 2016-10-04 14:28:43 -06:00
David Sparer
42f4cb618b Resolved bug where some new connections/containers would not respect the default connection info and default inheritance settings 2016-10-04 14:26:49 -06:00
David Sparer
faa240ab97 Sorting tree nodes is now recursive in all cases to be more in line with user expectations 2016-10-04 14:01:36 -06:00
David Sparer
a02e72d895 Resolved bug where app would crash when opening the Export form with no connection tree node selected 2016-10-04 13:24:24 -06:00
David Sparer
852b43b121 Resolved crash bug when attempting to import from AD when no connection tree node is selected (will import under the root node) 2016-10-04 13:21:54 -06:00
David Sparer
020823510d Fixed bug where app would crash when no tree node selected and trying to import from file 2016-10-04 12:50:02 -06:00
David Sparer
5c92128b17 Resolves #140. The decryption key was not being saved and used for further decryption attempts. This fix is quick/temporary and should be redone to remove Runtime references. 2016-10-04 11:31:41 -06:00
David Sparer
7cee3c9050 Created another unit test for the legacy crypto provider 2016-10-04 11:31:15 -06:00
Sean Kaim
f31cf9f839 waffle.io badge 2016-10-04 12:37:26 -04:00
David Sparer
960de69c20 Added note regarding a minor efficiency bug to investigate 2016-10-04 10:18:49 -06:00
Sean Kaim
6d8e4d14e6 contributing typo. 2016-10-04 11:55:38 -04:00
Sean Kaim
fd7929134b Merge pull request #139 from mRemoteNG/dot-github
.github support
2016-10-04 11:34:18 -04:00
David Sparer
40016f0d52 Code cleanup 2016-10-04 08:28:39 -06:00
David Sparer
05c46653a1 Resolved crash bug when deserialization fails (for example when we cant decrypt the file). 2016-10-03 15:02:16 -06:00
David Sparer
a932129d52 Very minor code cleanup 2016-10-03 12:12:15 -06:00
David Sparer
426c07ce75 Code cleanup of Runtime.cs 2016-10-03 12:10:56 -06:00
David Sparer
140723108e Resolved bug where the RemoteConnectionsSyncronizer wouldn't get disposed/deferenced when switching from using Sql to not using it 2016-10-03 12:05:07 -06:00
David Sparer
418f023780 Removed unused code 2016-10-03 12:02:48 -06:00
David Sparer
85b6e09ea6 Merge branch 'develop' into MR-975_Replace_TreeView_with_TreeListview 2016-10-03 10:46:49 -06:00
David Sparer
d6bd7e0886 Resolved bug where rearranging nodes by drag-n-drop would not save changes 2016-10-03 10:36:58 -06:00
David Sparer
2df93bea24 Reduced some complexity by merging the PeriodicConnectionsUpdateChecker with the RemoteConnectionsSyncronizer since they did nearly the same thing. 2016-10-03 10:28:08 -06:00
David Sparer
b474a67ef4 Fixed a few unit tests 2016-10-03 10:08:48 -06:00
David Sparer
ddd94da47b Code cleanup 2016-10-03 10:04:58 -06:00
David Sparer
48bd1854e4 Resolved saving to an Sql DB. Had to correclty arrange the column schema, add the ID column and make it autoincrement, and change a few data types. 2016-10-03 09:55:31 -06:00
David Sparer
6582ebcf57 Resolved minor bug that would occassionaly create unnecessary exceptions 2016-10-03 09:19:57 -06:00
David Sparer
41cd6f4290 Save supported by the RemoteConnectionsSyncronizer 2016-09-30 15:32:36 -06:00
David Sparer
5f40bab9c5 Enforce column data types 2016-09-30 15:31:46 -06:00
David Sparer
4b90b259a8 Created a class that brings all the various database classes together to keep the local connections tree updated with the remote connections tree. DB reads will now only occur if the local last update time is behind the remote last update time. 2016-09-30 14:49:14 -06:00
David Sparer
279682df11 the db update checker now runs on app startup 2016-09-30 13:55:25 -06:00
David Sparer
64b6c5967d Removed unused code 2016-09-30 13:50:41 -06:00
David Sparer
5826f055e3 DB updates now trigger reloading of connections data and rebuilding of the connection tree (somewhat thread safe) 2016-09-30 13:47:08 -06:00
David Sparer
e4ec71928d Cleanup 2016-09-30 09:28:20 -06:00
David Sparer
cb2ff4002f Moved some files to Config.Connections.Multiuser to keep things organized 2016-09-30 09:27:53 -06:00
David Sparer
36d5c888a5 Cleanup. Made PeriodicConnectionsUpdateChecker a bit more generically useful 2016-09-30 09:02:12 -06:00
David Sparer
de7493bc00 Implemented the ConnectionsUpdateAvailable event. 2016-09-30 08:35:41 -06:00
David Sparer
6819c1d9ff Made IConnectionsUpdateChecker implement IDisposable 2016-09-30 08:04:44 -06:00
David Sparer
021a3fe3bc Created interface IConnectionsUpdateChecker and modified SqlConnectionsUpdateChecker to implement it 2016-09-30 08:02:02 -06:00
David Sparer
0d70033e4c Some code rearranging 2016-09-30 08:01:15 -06:00
David Sparer
812cf21f98 Some updates that should have been committed with the last rename 2016-09-30 08:00:34 -06:00
David Sparer
f0da088836 Renamed SqlConnectionsProvider to PeriodicConnectionsUpdateChecker to better indicate its purpose 2016-09-30 07:50:49 -06:00
David Sparer
d7501751e3 Removed the SqlUpdateQueryBuilder since it serves very little purpose 2016-09-30 07:49:10 -06:00
David Sparer
94648f072e Code cleanup 2016-09-29 15:02:12 -06:00
David Sparer
a7d34b2c1b Code cleanup 2016-09-29 15:01:19 -06:00
Bennett Blodinger
26403096e8 .github support
Adds initail support for GitHub settings
2016-09-29 14:37:01 -04:00
David Sparer
62190bde17 Resolved crash that would sometimes occur when working with interfacecontrols 2016-09-29 11:38:40 -06:00
David Sparer
293b3d90b9 Cleanup 2016-09-29 11:31:35 -06:00
David Sparer
1928b904e5 Minor cleanup 2016-09-29 11:29:16 -06:00
David Sparer
a71cf6080f Fixed bug where loading a new connection file or creating a new one would not update the connection tree 2016-09-29 11:01:06 -06:00
David Sparer
14d56c3e28 Fixed crash when adding node with no treenode selected 2016-09-29 10:33:59 -06:00
Sean Kaim
707e3bc08f code cleanup 2016-09-29 11:57:23 -04:00
Sean Kaim
0614aef362 fix minor post build event errors 2016-09-29 11:50:05 -04:00
David Sparer
2ff9a7ff22 Large code cleanup of the ConnectionWindow class 2016-09-29 09:16:57 -06:00
David Sparer
3e4cfc16df Simplified teh ConnectionWindow drag_over handler and made it safer (actually does type checking) 2016-09-28 15:26:18 -06:00
David Sparer
fcd846bd6d Dragging connections/folder onto a connection panel now opens the connection(s). This restores functionality for dragging single connections, but is new functionality for folders 2016-09-28 15:09:50 -06:00
David Sparer
05028c958e Fixed crash that would occur when double clicking inside a connection window after disconnecting 2016-09-28 15:08:40 -06:00
David Sparer
40455e199b Fixed bug that would occasionally cause crashes when clicking 2016-09-28 15:05:04 -06:00
David Sparer
e5c9ccbdcc Moved all database connectors to the Config.DatabaseConnectors namespace 2016-09-28 14:15:39 -06:00
David Sparer
be22ebd789 Code cleanup 2016-09-28 13:57:35 -06:00
David Sparer
050d12a8ec Created tests for the ConnectionInfoComparer 2016-09-28 13:52:21 -06:00
David Sparer
5746d0264a Extracted some methods in the ExternalToolArgumentParser to make it more readable 2016-09-28 11:50:09 -06:00
David Sparer
0a4010d9a9 Created more test cases for the ExternalToolArgumentParser 2016-09-28 11:49:28 -06:00
David Sparer
ab30dd2294 Extracted a method in ExternalToolArgumentParser 2016-09-28 11:49:02 -06:00
David Sparer
f53e77ecc9 Added a few more parser tests 2016-09-28 10:53:06 -06:00
David Sparer
91da8f1b5f Reset the position of the main menu. At some point it got pushed to the side again 2016-09-28 09:57:35 -06:00
David Sparer
1bf616579b Added tests for the external tools arg parser 2016-09-28 09:50:38 -06:00
David Sparer
da2d48b49a Minor code cleanup 2016-09-28 08:20:16 -06:00
David Sparer
48b209155b Renamed class to be more indicative of its use 2016-09-28 08:10:13 -06:00
David Sparer
7fe8749807 Resolved bug with the Reconnect context menu item being permanently disabled for containers 2016-09-27 14:52:06 -06:00
David Sparer
b73547ced9 Connecting to an entire folder working again 2016-09-27 14:44:35 -06:00
David Sparer
9c8c22979f Resolved bug where hitting the delete key would bring up the prompt to delete root nodes and putty nodes 2016-09-27 13:56:03 -06:00
David Sparer
60b387ac56 Adding a new node will expand the parent container, select the new node, and ensure the new node is visible. Extracted a method since these actions are identical for both containers and connections 2016-09-27 10:36:30 -06:00
David Sparer
20339c1452 Fixed bug when trying to refresh the display of a folder that had 0 children but now has some 2016-09-27 10:33:34 -06:00
David Sparer
7a15a8151c Resolved error when attempting to connect to PuTTY session 2016-09-27 09:21:15 -06:00
David Sparer
967d9b1036 Renamed properties and fields of the Windows class to conform to naming guidelines 2016-09-26 15:27:41 -06:00
David Sparer
faec28ac78 Removed unused code 2016-09-26 15:25:18 -06:00
David Sparer
0832c8610b Removed unused code 2016-09-26 15:17:26 -06:00
David Sparer
fa7ca994e9 ConnectionList served no purpose and was removed 2016-09-26 15:10:32 -06:00
David Sparer
288221918e ContainerList serves no purpose 2016-09-26 15:07:59 -06:00
David Sparer
5462e96090 Removed unused code 2016-09-26 15:02:12 -06:00
David Sparer
a1b5d8bdc5 Removed unused code 2016-09-26 14:59:14 -06:00
David Sparer
bd280ad2b6 Removed unused code 2016-09-26 14:53:32 -06:00
David Sparer
0c460f7aab Removed unused code 2016-09-26 14:49:32 -06:00
David Sparer
634c420799 Refactored the SqlSaver code to use the new functions 2016-09-26 14:49:16 -06:00
David Sparer
0bdb57c44e Removed reference to unnecessary method 2016-09-26 14:47:41 -06:00
David Sparer
2540777e18 Removed unnecessary code 2016-09-26 14:12:06 -06:00
David Sparer
eaced33ed5 Refactored some code for creating a menu tree of the connectiontreemodel 2016-09-26 14:07:33 -06:00
David Sparer
0b97c47f4e Removed unused code 2016-09-26 13:18:36 -06:00
David Sparer
584075a9b1 Fixed the connections dropdown list 2016-09-26 13:13:11 -06:00
David Sparer
3febb2be5e Removed unused code 2016-09-26 12:53:42 -06:00
David Sparer
c4a9841ba6 Refactored Export and ExportForm to require ConnectionInfo rather than TreeNode for export 2016-09-26 12:51:28 -06:00
David Sparer
c613c3b4e1 Updated the ISerialize interface to require a Serialize(ConnectionInfo) method to support serializing a target connection/container 2016-09-26 12:22:55 -06:00
David Sparer
814f07212d Made ISerializer generic 2016-09-26 11:58:48 -06:00
David Sparer
a63120b78f Code cleanup 2016-09-26 11:43:47 -06:00
David Sparer
598a39fcc1 Removed unnecessary code 2016-09-26 11:28:37 -06:00
David Sparer
425fdb502c Removed unnecessary code and implemented directly in the calling class 2016-09-26 11:28:05 -06:00
David Sparer
3016ef8545 Removed unnecessary code 2016-09-26 11:22:05 -06:00
David Sparer
87b4dd09e4 Rewrote Sql connection loading to use the DataProvider/Deserializer 2016-09-26 11:19:53 -06:00
David Sparer
95f54b9330 Made IDataProvider generic to support multiple data formatting types (mostly to help with database support and DataTables) 2016-09-26 09:35:40 -06:00
David Sparer
1a8d4ea7fd Removed unnecessary code 2016-09-26 09:21:45 -06:00
David Sparer
e27424102b Removed unused code 2016-09-26 09:15:17 -06:00
David Sparer
d35540e691 Code cleanup 2016-09-25 14:42:03 -06:00
David Sparer
bda536cc62 Call to the message collector is causing tests to fail. Will need a test-safe way of indicating failure 2016-09-25 14:35:18 -06:00
David Sparer
cf3443ace3 Disabled password import tests for the RemoteDesktopConnectionManagerDeserializer. Since the passwords are encrypted using a machine key, decryption on other machines will always fail. 2016-09-25 14:32:01 -06:00
David Sparer
b8e05fc7da Refactored the DecryptPassword function in RemoteDesktopConnectionManagerDeserializer to use managed rather than native functions 2016-09-25 14:27:27 -06:00
David Sparer
ddfbb1d42e Created tests for PuttyConnectionManagerDeserializer 2016-09-25 14:01:43 -06:00
David Sparer
c4c255d560 Created tests for PortScanDeserializer 2016-09-25 13:28:01 -06:00
David Sparer
b1fd47ff9d Renamed the Scanner class to PortScanner 2016-09-25 12:29:30 -06:00
David Sparer
636848ed26 Split the ScanHost class to its own file. 2016-09-25 12:27:58 -06:00
David Sparer
6e713ebd83 Moved some tests to the right namespace 2016-09-25 12:16:19 -06:00
David Sparer
80a4d2af59 Created tests for various bad version/schema scenarios 2016-09-25 12:10:48 -06:00
David Sparer
d0153da3d1 Created more tests for teh RemoteDesktopConnectionManagerDeserializer 2016-09-25 11:32:02 -06:00
David Sparer
aa6f467942 Made the parsing code a bit safer 2016-09-25 11:31:41 -06:00
David Sparer
34f8a123a5 Resolved bug with importing gateway password from RDCMan when not stored in clear text 2016-09-25 11:11:06 -06:00
David Sparer
63ae7d845c Code cleanup 2016-09-25 10:55:41 -06:00
David Sparer
12d8097774 Ensured UseConsoleSession bool could be parsed 2016-09-25 10:55:22 -06:00
David Sparer
ae4ce70c48 Began creating tests for the RemoteDesktopConnectionManagerDeserializer 2016-09-25 10:39:06 -06:00
David Sparer
cc43eab6ee Removed unnecessary code 2016-09-25 10:38:29 -06:00
David Sparer
ea5ec58ca3 Made the version checker a bit safer 2016-09-25 09:56:43 -06:00
David Sparer
775499a1ff Created more tests for the RemoteDesktopConnectionDeserializer 2016-09-24 12:18:37 -06:00
David Sparer
46d04541f1 Began creating unit tests for RemoteDesktopConnectionDeserializer 2016-09-23 23:13:19 -06:00
David Sparer
d80497011b Removed unnecessary code 2016-09-23 13:00:58 -06:00
David Sparer
02fea4ad5d Code cleanup 2016-09-23 12:48:56 -06:00
David Sparer
effc6fc9dd PortScanDeserializer created. Import now working 2016-09-23 12:47:48 -06:00
David Sparer
300fb55ec5 Created ActiveDirectoryDeserializer. Import is now working 2016-09-23 12:03:36 -06:00
David Sparer
8a1f2cbca8 Moved all serializers/deserializers to the mRemoteNG.Config.Serializers namespace 2016-09-23 11:06:13 -06:00
David Sparer
dec411e866 Created PuttyConnectionManagerDeserializer. Import is now working 2016-09-23 10:59:16 -06:00
David Sparer
88f40841d4 Code cleanup 2016-09-23 10:33:01 -06:00
David Sparer
c73aaa5455 Renamed PuttyConnectionManager to PuttyConnectionManagerImporter 2016-09-23 10:19:58 -06:00
David Sparer
6bf493f9a1 Created a RemoteDesktopConnectionManagerDeserializer. Importing from RDCM now works 2016-09-23 10:12:18 -06:00
David Sparer
b0be42815d Cleanup of RDCM Importer 2016-09-23 08:49:29 -06:00
David Sparer
79a423fc18 Renamed RemoteDesktopConnectionManager to RemoteDesktopConnectionManagerImporter 2016-09-23 08:38:08 -06:00
David Sparer
7047f2580f Cleanup 2016-09-22 15:24:06 -06:00
David Sparer
e8080aff58 Renamed ActiveDirectory to ActiveDirectoryImporter 2016-09-22 15:22:46 -06:00
David Sparer
d8ffed6e75 Renamed PortScan to PortScanImporter 2016-09-22 15:21:35 -06:00
David Sparer
0a3f201cb7 Created a deserializer for microsoft RDC and updated the importer 2016-09-22 15:20:28 -06:00
David Sparer
00adac42b8 mRemoteNG import doesnt need to be static 2016-09-22 15:17:54 -06:00
David Sparer
9a07ac075f Renamed RemoteDesktopConnection to RemoteDesktopConnectionImporter 2016-09-22 14:21:20 -06:00
David Sparer
44053f92c6 Importing mremoteng export files now works again 2016-09-22 14:17:34 -06:00
David Sparer
21475e0596 Small code cleanup 2016-09-22 12:38:50 -06:00
David Sparer
3ac09748db Opening a loading a putty session and showing the putty configuration window will no longer freeze mRemoteNG 2016-09-22 12:31:22 -06:00
David Sparer
91ff0786cc Rearranged some functions 2016-09-22 12:30:18 -06:00
David Sparer
45b207f399 Added property changed event handler to the connection tree. Model property updates will now be immediately reflected by the tree view 2016-09-22 12:06:18 -06:00
David Sparer
d7d15a0ab3 Fixed a typo in the ConnectionTreeModel's NotifyPropertyChanged event propogation 2016-09-22 12:04:30 -06:00
David Sparer
bce8d2e4b8 Forgot to commit this bit 2016-09-22 11:56:46 -06:00
David Sparer
d4e48e8b63 Fixed bug where app would crash when changing node name from config window 2016-09-22 11:56:12 -06:00
David Sparer
6de57ee0d4 ConnectionTreeModel now implements INotifyPropertyChanged and subscribes to child events 2016-09-22 11:55:28 -06:00
David Sparer
c3c9bb33a2 Code cleanup 2016-09-22 11:46:26 -06:00
David Sparer
ff4e6ab3ca Fixed bug where nodes could be dragged (with errors) above or below the root connections node 2016-09-22 10:45:00 -06:00
David Sparer
b646e7ef70 Minor optimization tree refresh when dragging nodes between containers. There is still a small disruption in the UI (~200ms) when moving nodes between containers. 2016-09-22 10:36:37 -06:00
David Sparer
981919335d Resolved a severe performance issue with refreshing the tree after drag-n-drop operations 2016-09-21 14:06:05 -06:00
David Sparer
42fcdd2267 Renamed variable to be more in line with other uses in the class 2016-09-21 10:43:01 -06:00
David Sparer
2b6367a8a9 Fixed bug where connections/containers could be dragged between putty session nodes 2016-09-21 10:38:41 -06:00
David Sparer
cbe0c1a550 Created tests for model-dropped 2016-09-21 10:22:25 -06:00
David Sparer
759c072c11 Refactored ModelDropped handler to be more test-friendly 2016-09-21 10:22:10 -06:00
David Sparer
d39e2a506f Added tests 2016-09-21 09:55:46 -06:00
David Sparer
f035872592 Extracted a method to increase readability 2016-09-21 09:55:33 -06:00
David Sparer
0324225c38 Added new convenience/optimization functions to containerinfo 2016-09-21 09:40:33 -06:00
David Sparer
a352516176 Fixed a bug where you could try to drag connection/containers onto a root putty session node 2016-09-21 09:38:54 -06:00
David Sparer
07fab69221 Created more tests for drag and drop handler 2016-09-21 09:35:07 -06:00
David Sparer
82804c1390 Fixed small bug in the drag and drop handler refactor that was causing info messages to not refresh all the time. 2016-09-21 09:10:32 -06:00
David Sparer
536d6f7c29 Refactored ConnectionTreeDragAndDropHandler to be more unit-test friendly. Began creating unit tests for it 2016-09-21 09:03:11 -06:00
David Sparer
a4ec3291ca Small drop-n-drop optimization 2016-09-20 13:56:03 -06:00
David Sparer
10420d9e7f ConnectionTreeWindow now updates its treelistview based on eventing from its ConnectionTreeModel 2016-09-20 13:03:25 -06:00
David Sparer
522d139044 ConnectionTreeModel now listens for and propogates collection changed events on child members 2016-09-20 13:02:15 -06:00
David Sparer
81a944a95c ContainerInfo objects now subscribe to child collection changed events 2016-09-20 13:01:17 -06:00
David Sparer
75b4ea175b Small cleanup 2016-09-20 12:27:20 -06:00
David Sparer
62b1402b43 Removing putty sessions now updates the treelistview as expected 2016-09-20 12:23:55 -06:00
David Sparer
688dbd1ce9 Added a convenience property and a way to remove sessions that triggers eventing 2016-09-20 12:07:05 -06:00
David Sparer
941e3d5904 Added putty model update code to tree view. Adding putty sessions works as expected 2016-09-20 12:00:04 -06:00
David Sparer
a938e098e5 Added support for propogating child session collection changed events 2016-09-20 11:36:45 -06:00
David Sparer
1bda39bc7e Implemented collectionchanged event on puttysessionprovider 2016-09-20 11:29:05 -06:00
David Sparer
6c5fedb631 Made the puttyrootnode property on puttysessionsproviders virtual to allow overriding 2016-09-20 11:13:45 -06:00
David Sparer
55e48742a9 Code cleanup 2016-09-20 10:48:20 -06:00
David Sparer
9a13273726 Renamed event SessionChanged to PuttySessionChanged 2016-09-20 10:37:39 -06:00
David Sparer
45e641067b Renamed SessionChangedEventHandler to PuttySessionChangedEventHandler 2016-09-20 10:36:39 -06:00
David Sparer
6a7dedfe67 Renamed SessionChangedEventArgs to PuttySessionChangedEventArgs 2016-09-20 10:35:58 -06:00
David Sparer
28fa043b32 Added support to the SessionChangedEventArgs to allow providing which session changed 2016-09-20 10:35:20 -06:00
David Sparer
d7c339ccea Refactored some of the eventing code in AbstractPuttySessionsProvider to make it less complex 2016-09-20 10:24:42 -06:00
David Sparer
cdc6567628 Forgot to commit this change to the Args change 2016-09-20 10:23:46 -06:00
David Sparer
fb315fd782 Moved the SessionChangedEventArgs to its own class file. Embeded classes are generally not a good idea 2016-09-20 10:23:03 -06:00
David Sparer
0907a19821 Renamed PuttySessionManager.AddSessionsToTree to just AddSessions to reflect that it does not directly work on any tree objects. Implemented the CollectionChanged event for the sessions providers collection 2016-09-20 10:12:46 -06:00
David Sparer
00b0552e5e Made PuttySessionManager a singleton rather than static. Began implementing collectionchanged event to notify when the putty session list changes 2016-09-20 09:55:05 -06:00
David Sparer
9949907adc Slightly better way to set root nodes on the treelistview 2016-09-20 09:50:20 -06:00
David Sparer
94ab1ddfbc Slight optimization of the treelistview CanExpandGetter 2016-09-20 09:49:47 -06:00
David Sparer
c13ff71f9a Abstracted the way we refresh tree model objects 2016-09-20 09:36:39 -06:00
David Sparer
e64ebf06f1 Fixed bug with calling CollectionChanged when sorting container children 2016-09-20 09:34:22 -06:00
David Sparer
20f527ae94 Created more ContainerInfo tests 2016-09-20 09:07:30 -06:00
David Sparer
1b0f9fcd88 Created more ContainerInfo tests 2016-09-20 09:02:03 -06:00
David Sparer
05799767a0 Added more ContainerInfo tests. Refactored a bit 2016-09-20 08:54:41 -06:00
David Sparer
86cb233cf6 Implemented INotifyCollectionChanged on the container children list rather than the INotifyPropertyChanged. It makes more sense, though we will need to implement UI refresh listeners on the TreeListView manually now (objectlistview currently only respects INotifyPropertyChanged events) 2016-09-20 08:37:44 -06:00
David Sparer
5838ff045a Implemented INotifyPropertyChanged for the Children proptery of the ContainerInfo object 2016-09-19 13:00:23 -06:00
David Sparer
95ddca0d7c Implemented INotifyPropertyChanged on AbstractConnectionInfoData (and thus on every connectioninfo subtype) 2016-09-19 12:54:01 -06:00
David Sparer
a03e2783d4 Created another level of abstraction between the data shared by all connection info objects and the behavior shown by certain connection info objects 2016-09-19 11:25:58 -06:00
David Sparer
f0638b0dd8 Cleanup 2016-09-19 10:58:37 -06:00
David Sparer
ab3e00f42c Fixed issue with using the proper tree images for the putty nodes 2016-09-19 10:44:23 -06:00
David Sparer
c67971035d Only show putty provider if it has sessions 2016-09-19 10:40:40 -06:00
David Sparer
3c55446e86 Putty sessions now being shown in connection tree again 2016-09-19 10:38:08 -06:00
David Sparer
fd559b61b1 Renamed PuttySessionsProvider to AbstractPuttySessionsProvider 2016-09-19 08:44:08 -06:00
David Sparer
77ca139363 Renamed class "Sessions" to "PuttySessionsManager" 2016-09-19 08:13:12 -06:00
David Sparer
f0828d3870 Some code cleanup 2016-09-19 08:08:34 -06:00
David Sparer
0e4ffde6ca Some file/class renaming 2016-09-15 13:41:32 -06:00
David Sparer
a50f96606b Resolved bug when editing a tree node name - the context menu would steal keyboard input for its shortcut keys 2016-09-15 13:31:00 -06:00
David Sparer
ecb77238a3 Sorting nodes now works (ascending/descending) 2016-09-15 12:05:46 -06:00
David Sparer
3fe5801366 Context menu item enable/disabled based on node type is now working again 2016-09-15 10:01:20 -06:00
David Sparer
9807231b72 Basic switch has been completed. Most context menu actions are working as expected. 2016-09-15 09:56:04 -06:00
David Sparer
eed85b3641 Finished creating pass-through events for the underlying context menu 2016-09-15 09:06:54 -06:00
David Sparer
7d7d4e62a3 Began moving connection tree context menu to its own class 2016-09-14 15:26:21 -06:00
David Sparer
f0f9d2a6aa Little bit of cleanup 2016-09-14 15:07:19 -06:00
David Sparer
7b2a30dcbf Starting external tools from the connections tree now works 2016-09-14 14:52:47 -06:00
David Sparer
b214efc029 Fixed SSH transfer window creation from context menu 2016-09-14 14:41:13 -06:00
David Sparer
e74884bcea any letter or number key press while the connections tree has focus will activate the search box 2016-09-14 14:27:31 -06:00
David Sparer
4accd71744 Hitting escape while the search box has focus switches focus to the connections tree 2016-09-14 14:19:43 -06:00
David Sparer
fa7c170540 Rather than yellow highlight, just make the node highlightling the same whether the contol has focus or not 2016-09-14 13:59:30 -06:00
David Sparer
92360eb2ce Fixed node search bug when no results are returned. 2016-09-14 13:58:51 -06:00
David Sparer
b13382a6ee Hooked up the keydown event with the new connection tree 2016-09-14 13:19:31 -06:00
David Sparer
b9718edfd3 Folders will now expand when scrolling through search results 2016-09-14 13:07:08 -06:00
David Sparer
d3e2976ff9 Scrolling through search results now ensures that the node is visible. Up/down keys no longer move the search box text cursor 2016-09-14 12:38:54 -06:00
David Sparer
5e84b7cffe Made search match nodes highlighted in yellow 2016-09-14 12:24:22 -06:00
David Sparer
764eb764ce Fixed case sensitivity when searching for nodes 2016-09-14 12:23:42 -06:00
David Sparer
a992b41e26 Refactored node searching to a new class 2016-09-14 11:43:40 -06:00
David Sparer
7d882c3f74 Added function to get all children of the connectiontreemodel, including root nodes 2016-09-14 11:42:56 -06:00
David Sparer
668e8de7df Removed unnecessary code 2016-09-14 10:19:53 -06:00
David Sparer
29ad420916 ExpandAll and CollapseAll now work 2016-09-14 10:17:43 -06:00
David Sparer
f743942e65 Fixed ExpandAll 2016-09-14 10:06:56 -06:00
David Sparer
0a120e402e Removed unnecessary code 2016-09-14 10:05:38 -06:00
David Sparer
6bc0c79624 Created a convenience function for determining if a container has children 2016-09-14 10:00:27 -06:00
David Sparer
6860ddced3 Reimplemented confirmation boxes when deleting tree nodes 2016-09-14 09:59:57 -06:00
David Sparer
ddf5e38396 Fixed minor bug where folders with no contents had an expand button 2016-09-14 09:44:15 -06:00
David Sparer
2ff2e448be Removed unnecessary code 2016-09-14 09:40:15 -06:00
David Sparer
9882dda905 Resolved issue with tree actions from the File menu. This is still an ugly fix, but its working 2016-09-14 09:27:05 -06:00
David Sparer
88d005caf6 Rearranged some event handler declarations 2016-09-14 08:59:03 -06:00
David Sparer
eba5fc9caf Slight optimization of updating the tree when deleting a node. Refresh one row rather than the whole tree 2016-09-14 08:39:12 -06:00
David Sparer
3a2f35f697 Duplicating a node now places it under the node that it was copied from, rather than the bottom of the list. (this was the previous behavior) 2016-09-14 08:36:58 -06:00
David Sparer
2ba3e95379 Removed unnecessary tooltip code 2016-09-14 07:59:36 -06:00
David Sparer
023570298b Removed unnecessary code 2016-09-14 07:41:38 -06:00
David Sparer
cf7e4d1f52 Moved GetExtAppByName() back to Runtime. Will make more sense for later refactoring 2016-09-12 10:20:35 -06:00
David Sparer
a09ce702c1 Removed unnecessary code 2016-09-12 10:17:14 -06:00
David Sparer
4c6f5dd72d Renamed some variables to adhere to style guidelines 2016-09-12 10:12:00 -06:00
David Sparer
dabed1568c Removed another OpenConnection overload that didnt take a connectioninfo object 2016-09-12 10:09:15 -06:00
David Sparer
79dee21f9b Removed empty arg overload for OpenConnection(). We always require a connectioninfo object 2016-09-12 10:07:05 -06:00
David Sparer
6ccbe69c02 Retargeted all Runtime.OpenConnection() to ConnectionInitiator.OpenConnection(). Will help with later iterative refactors 2016-09-12 10:00:53 -06:00
David Sparer
3ad8a14786 Initial refactor of connection initiation (which is heavily tied into how the connection tree was previously being managed) 2016-09-12 09:52:12 -06:00
David Sparer
c79ee46551 Removed unnecessary code 2016-09-12 08:49:32 -06:00
David Sparer
b391940037 Merge branch 'develop' into MR-975_Replace_TreeView_with_TreeListview
# Conflicts:
#	mRemoteV1/Config/SqlDatabaseConnector.cs
#	mRemoteV1/Tree/Root/RootPuttySessionsNodeInfo.cs
2016-09-12 08:40:43 -06:00
Sean Kaim
d5a54dd63d code clean up 2016-09-09 17:08:27 -04:00
Sean Kaim
6799ac2b30 code clean up 2016-09-09 17:08:15 -04:00
Sean Kaim
2f10e60dbf code clean up 2016-09-09 16:39:24 -04:00
Sean Kaim
95c818d92e code clean up
Octet1.Text.Remove didn't actually do anything. Text is already removed
properly when backspace is pressed without this code in the event
handlers.
2016-09-09 16:23:03 -04:00
David Sparer
e6f846107a drag-n-drop now supports rearranging nodes. Fixed a small bug with child rearrangement 2016-09-09 14:05:22 -06:00
Sean Kaim
b757ab7424 MR-979 - switched to notifications pnl incorrectly 2016-09-09 15:46:21 -04:00
David Sparer
d439a0df00 Created functions to rearrange child nodes. Moving nodes up/down now working 2016-09-09 12:03:35 -06:00
David Sparer
c3e14afe0a Created localization strings for drag-n-drop feedback messages 2016-09-09 10:33:20 -06:00
David Sparer
22f43d63ec Renamed drag-n-drop handlers 2016-09-09 10:32:25 -06:00
David Sparer
07c364cf0b Added support for changing the feedback color when dropping a node is allowed/denied. Removed unnecessary code 2016-09-09 10:18:52 -06:00
David Sparer
96485d9b9f Added check to prevent dragging a node onto the folder in which it already resides 2016-09-09 10:11:53 -06:00
David Sparer
4cdfeeecf2 Turns out we didn't need a custom Equals comparer for ConnectionInfo. Rolling back since it's probably best to keep the default implementation unless we actually need a custom one. 2016-09-09 09:57:21 -06:00
David Sparer
00abd53b19 Fixed issue with preventing dragging node onto itself. Feedback highlighting is disabled when attempting to drag un-draggable node. 2016-09-09 09:56:30 -06:00
Sean Kaim
6666552b8a code clean up and ensure settings save 2016-09-09 11:54:06 -04:00
David Sparer
b65fdbdd78 Overrode the Equals method for ConnectionInfo. Equality based on ConstantID 2016-09-09 09:50:06 -06:00
David Sparer
7c7d791f31 Renamed a few variables and created a check for dragging a node onto itself 2016-09-09 09:40:18 -06:00
David Sparer
d66f333bd5 Refactored drag-n-drop code to its own class 2016-09-09 09:35:13 -06:00
Sean Kaim
5afb9c572e code clean up 2016-09-09 11:31:43 -04:00
David Sparer
866aeab76b Changed the drag-drop highlight color 2016-09-09 08:25:56 -06:00
Sean Kaim
ae13b5f920 code clean up/remove unused files 2016-09-09 10:24:02 -04:00
David Sparer
cfbcb502d8 Removed unnecessary code 2016-09-08 10:54:36 -06:00
David Sparer
5f8d274b94 Drag and drop now working 2016-09-08 10:50:47 -06:00
David Sparer
092171982b Modified the IHasParent interface to include another common method 2016-09-08 09:10:52 -06:00
David Sparer
30ccc0c76c Resolved bug that broke the "child node only ever has one parent" rule 2016-09-08 09:01:21 -06:00
David Sparer
bf23d78e41 Node tool tips now working. Removed unnecessary code 2016-09-08 08:32:08 -06:00
David Sparer
08466f5179 Refactored the single node click event handler to handle the CellClick event instead of MouseClick to be more in line with the double click event handler 2016-09-08 08:24:01 -06:00
David Sparer
4ca07d534b Double click actions on tree nodes now working 2016-09-08 08:22:23 -06:00
David Sparer
3237875aee Merge branch 'develop' into MR-975_Replace_TreeView_with_TreeListview 2016-09-08 07:53:49 -06:00
David Sparer
c8db438cca Fixed single mouse click on node 2016-09-07 15:28:22 -06:00
David Sparer
5ea2304d5e Duplicating nodes now works 2016-09-07 14:36:52 -06:00
Sean Kaim
197652f8eb lock the file menu in place 2016-09-07 16:26:37 -04:00
Sean Kaim
80b16d8b57 lock the file menu in place 2016-09-07 16:10:32 -04:00
Sean Kaim
b8d78c1733 lock the file menu in place 2016-09-07 15:08:01 -04:00
David Sparer
8bf5004147 Fixed nullref error when attempting to delete a node when nothing is selected 2016-09-07 12:49:41 -06:00
David Sparer
89538e7289 New folders created with "New Folder" as the text 2016-09-07 12:47:51 -06:00
David Sparer
ff46d39a6a AddFolder now working 2016-09-07 12:45:44 -06:00
David Sparer
b843a55a25 AddNode is working 2016-09-07 12:41:07 -06:00
David Sparer
54008af8bf Deep clone for containers 2016-09-07 10:40:38 -06:00
David Sparer
d73f0d2401 Resolved nullref error with SetParent 2016-09-07 10:36:03 -06:00
David Sparer
86228e4270 Updated some Clone methods to be deeper 2016-09-07 10:29:16 -06:00
David Sparer
5ab5688844 Renamed Inheritance.Copy to Clone 2016-09-07 10:02:45 -06:00
David Sparer
53cb4149da Missed a commit for the Copy -> Clone rename 2016-09-07 09:52:55 -06:00
David Sparer
1056e20ec2 Renamed Copy to Clone 2016-09-07 09:47:15 -06:00
David Sparer
a589f337b7 Removed more unnecessary code 2016-09-07 09:37:12 -06:00
David Sparer
73ee88ab08 Removed unnecessary code 2016-09-07 09:28:41 -06:00
David Sparer
1e68483deb - Renamed IParent to IHasParent
- Renamed Add, AddRange, Remove, RemoveRange to include the word "Child" to make it more explicit
- Added SetParent and RemoveParent functions
- DeleteNode now works
2016-09-07 09:24:30 -06:00
Sean Kaim
9c168087af code cleanup / moved try in CloseConnectionTab 2016-09-07 11:21:22 -04:00
Sean Kaim
d988644b6a code cleanup/system colors for form/msg format 2016-09-07 11:00:03 -04:00
David Sparer
22c21222d3 Added more TODO notes for functionality that needs to be fixed for the treelistview change 2016-09-07 07:34:40 -06:00
David Sparer
73627a680c AfterSelect event working again 2016-09-06 18:56:28 -06:00
David Sparer
e70e8262e6 EnsureRootNodeVisible now works 2016-09-06 18:08:17 -06:00
David Sparer
8a74809ea4 Fixed opening previous connections to work with the tree list view 2016-09-06 18:05:46 -06:00
David Sparer
9cf3c23328 Disabled full row select to be more in line with previous functionality 2016-09-06 16:37:39 -06:00
David Sparer
40347c09ba minor update 2016-09-06 15:28:56 -06:00
David Sparer
64ed15ffae Got the tree node images working with the new TreeListView 2016-09-06 15:28:38 -06:00
David Sparer
617ec4cc3e Moved the code for generating a recursive list of children to ContainerInfo where it makes more sense. Left a helper function in ConnectionTreeModel where it may still be useful 2016-09-06 14:55:19 -06:00
David Sparer
bec154e538 Resolved issue serializing the connection tree node types (connect/container) 2016-09-06 14:48:53 -06:00
David Sparer
6e565c0b31 Fixed support for saving tree node expansion 2016-09-06 14:41:59 -06:00
David Sparer
c2b32de533 Added support for expanding all previously expanded nodes 2016-09-06 14:11:40 -06:00
David Sparer
454f007e42 Created helper function GetChildList in ConnectionTreeModel to retrieve a flat list of all connections/folders under a particular node 2016-09-06 13:59:10 -06:00
David Sparer
44a81cb7d8 Fixed scheme issue in the data table serializer 2016-09-06 13:57:26 -06:00
David Sparer
4623853399 Rearranged some code 2016-09-06 13:03:41 -06:00
David Sparer
15c894845c Created function to expand the root node on load. Refactored some delegate code 2016-09-06 12:58:27 -06:00
David Sparer
10597aed2f Renamed the Name column 2016-09-06 12:38:06 -06:00
David Sparer
2810fa7f80 Removed unnecessary tree update function. Added TODO comments for all functionality broken by the change to the TreeListView 2016-09-06 12:33:50 -06:00
David Sparer
a6dbc59ad1 Made the connection node name column take up all available space (similar to previous implementation) 2016-09-06 12:32:34 -06:00
David Sparer
1afe93be66 Began implementing TreeListView to replace the regular TreeView for the connection list. This will utilize a virtual list rather than a concrete set of tree nodes to model the connection list hierarchy. 2016-09-06 12:14:11 -06:00
David Sparer
1bd6839b21 Resolved bug with loading folders from SQL 2016-09-06 09:24:39 -06:00
David Sparer
b5e3564724 Fixed null ref error when viewing folders in some situations 2016-09-02 15:20:41 -06:00
David Sparer
8b143a2713 Fixed issue with creating node hierarchy 2016-09-02 15:07:22 -06:00
David Sparer
543f5e126f Fixed enum casts in DataTableSerializer 2016-09-02 14:54:34 -06:00
Sean Kaim
a5ac70cd3f changelog 2016-09-02 15:42:45 -04:00
Sean Kaim
07ed1b3f74 MR-586 - Reduce document title length
Also, code clean up...
2016-09-02 15:17:32 -04:00
Sean Kaim
7218208355 code clean up 2016-09-02 13:04:29 -04:00
David Sparer
d483c6a726 Merge branch 'develop' into MR-975_Replace_TreeView_with_TreeListview
# Conflicts:
#	mRemoteV1/App/Runtime.cs
#	mRemoteV1/UI/Window/ConnectionTreeWindow.cs
2016-09-02 09:20:58 -06:00
David Sparer
cb3fe686f3 Renamed function to be a bit more descriptive 2016-09-01 13:25:36 -06:00
Sean Kaim
69477cf3b4 changelog update 2016-08-30 17:07:10 -04:00
Sean Kaim
c114c68f15 MR-938 - add resolution / code clean up 2016-08-30 16:31:46 -04:00
Sean Kaim
1858c0f000 remove unused references 2016-08-30 15:36:02 -04:00
Sean Kaim
5c203c8e30 fix theme 2016-08-29 17:56:18 -04:00
Sean Kaim
005425efb1 code clean up 2016-08-29 17:31:34 -04:00
Sean Kaim
0c87954755 code cleanup 2016-08-29 17:19:13 -04:00
Sean Kaim
3c11092af1 changelog updates 2016-08-29 17:18:56 -04:00
Sean Kaim
4b71540dc7 default menu and quickconnect to same line
The Main menu bar, and the QuickConnect bar should now default to the
same line in the UI (though, forwhatever reason, it doesn't look like
this in VS Designer 😕 )

Code Clean up including rafactor QuickConnectComboBox to the correct
namespace.

Slightly related to MR-458
2016-08-29 16:48:47 -04:00
Sean Kaim
e22e3967f5 code cleanup 2016-08-29 16:11:38 -04:00
Sean Kaim
50809f45a3 MR-366 - Show PuTTY type and version
on components check screen
2016-08-29 15:12:41 -04:00
Sean Kaim
82bbf9d39f fix non-portable build failure 2016-08-26 17:18:01 -04:00
Sean Kaim
4692b20a74 more code clean up 2016-08-26 17:07:59 -04:00
Sean Kaim
9a32aa3350 code clean up 2016-08-26 17:00:01 -04:00
Sean Kaim
6d1fa4764d code clean up 2016-08-26 16:10:24 -04:00
Sean Kaim
267af5d6db Update strings: VncSharpNG to VncSharp 2016-08-26 15:59:15 -04:00
Sean Kaim
4bcb06c35b Update .gitignore 2016-08-26 12:00:42 -04:00
David Sparer
ff14c91fe1 First attempt at deserializing hierarchy from flat database 2016-08-25 15:16:56 -06:00
David Sparer
a0f7241f85 Fixed db schema error 2016-08-25 15:15:58 -06:00
Sean Kaim
66e7dfe6d5 update .gitignore 2016-08-25 16:49:02 -04:00
David Sparer
1538628e16 minor code cleanup 2016-08-25 14:45:18 -06:00
David Sparer
1b9d18adc1 Began creating the DataTableDeserializer 2016-08-25 14:44:31 -06:00
David Sparer
124ebaa970 Built out the SqlDataProvider 2016-08-25 14:44:04 -06:00
David Sparer
b44e657279 made the DataTableSerializer more closely conform to the current DB schema 2016-08-25 14:43:43 -06:00
David Sparer
de24dbbb7a Resolved small bug with uninitialized sql dbs 2016-08-25 13:21:49 -06:00
David Sparer
60f79b4400 Fixed bug where uninitialized sql database would not load 2016-08-25 13:13:08 -06:00
David Sparer
03c8f96a46 Created serializer which creates a data table. This can then be used for more efficient bulk Sql transfers 2016-08-25 11:16:49 -06:00
David Sparer
13d833ac5c Very minor code cleanup 2016-08-25 08:06:57 -06:00
David Sparer
71683992a0 Renamed ISqlConnector to IDatabaseConnector 2016-08-24 10:55:59 -06:00
David Sparer
2c785ade51 Initial refactor of sql saving. not even close to done 2016-08-24 10:49:03 -06:00
David Sparer
530819e788 Renamed several files to be more in line with project standards 2016-08-24 10:21:26 -06:00
David Sparer
c4c175e107 Minor code cleanup 2016-08-24 10:05:27 -06:00
David Sparer
6280fdf973 Refactored code for exporting connections in visionapp remote desktop 2008 csv format 2016-08-24 09:56:53 -06:00
David Sparer
269366264d Resolve small bug that would occur when exporting csv multiple times 2016-08-24 09:26:50 -06:00
David Sparer
8137b0831c Fixed issue where ConnectionTreeModel was not always populated when exporting. 2016-08-24 09:18:28 -06:00
David Sparer
396f63a3c9 Added necessary call to save the csv file to disk 2016-08-24 09:17:55 -06:00
David Sparer
cf87f2ee4d Fixed issue with undeclared variable 2016-08-24 08:47:31 -06:00
David Sparer
c98e672a73 minor code cleanup 2016-08-24 08:45:45 -06:00
David Sparer
21fe39542d Renamed CsvConnectionsSerializer to CsvConnectionsSerializerMremotengFormat to help distinguish between this and another CSV serializer strategy 2016-08-24 08:44:52 -06:00
David Sparer
8747da47a5 Began creating a serializer for Csv formatting 2016-08-23 15:31:47 -06:00
David Sparer
b3ff4de2ae Moved all data providers to the namespace mRemoteNG.Config.DataProviders 2016-08-23 15:02:54 -06:00
David Sparer
bc52362123 ConnectionSave now uses the FileDataProviderWithBackup strategies for saving connections files in xml 2016-08-23 14:58:04 -06:00
David Sparer
dcd63f321c Expanded some of the FileDataProvider code and created two different strategies for handling saves with backups 2016-08-23 14:57:17 -06:00
David Sparer
093f8c2714 XmlConnectionsDeserializer now implements IDeserializer 2016-08-23 14:00:00 -06:00
David Sparer
94ee9a39b4 Saving XML data to file now decoupled 2016-08-23 13:59:30 -06:00
David Sparer
1c5ea9e3ff Re-enabled opening connections from last session 2016-08-23 09:49:39 -06:00
David Sparer
3c69644f21 Re-enable expanding previously expanded folders. Implementation is still not ideal, but it's better 2016-08-23 09:35:08 -06:00
David Sparer
a89a593f51 code cleanup 2016-08-23 09:16:09 -06:00
David Sparer
8f685faf9b Refactored to reduce coupling 2016-08-22 16:05:49 -06:00
David Sparer
020433d7ad Fixed issue with display of connections tree which was caused by new connection tree builder code 2016-08-22 16:04:06 -06:00
Sean Kaim
80aa4fb852 removed hack for rightclick import menu 2016-08-22 17:07:24 -04:00
David Sparer
a1a8bd9656 Merge branch 'develop' into MR-975_Replace_TreeView_with_TreeListview 2016-08-22 11:17:03 -06:00
Sean Kaim
72623281c4 Initial PortScan context menu import
Need to fix the event implementation because it's a total hack right
now.
Also, want to put the code for detecting selected hosts into it's own
method.
2016-08-19 17:41:48 -04:00
David Sparer
ccaa70c1a4 XmlConnectionDeserializer now creates a connectiontreemodel which is turned into a treeview by ConnectionTreeViewBuilder 2016-08-19 15:28:12 -06:00
Sean Kaim
aa1ce22ada Missed one... One port scan form 2016-08-19 17:10:17 -04:00
David Sparer
003793b082 Removed dependency on GeneralAppInfo class to improved testability 2016-08-19 14:32:55 -06:00
Sean Kaim
15611cea43 one port scan form (import always available) 2016-08-19 14:52:53 -04:00
David Sparer
7a366de0e3 minor code cleanup 2016-08-19 12:51:01 -06:00
David Sparer
3baaf8bda4 Began building logic to build a TreeView from a connection tree model 2016-08-19 12:46:49 -06:00
David Sparer
23dcb3e823 Renamed method XmlConnectionsDeserializer.LoadFromXml to "Deserialize" 2016-08-19 12:45:52 -06:00
Sean Kaim
66e7790ee0 more code clean up 2016-08-19 11:56:29 -04:00
Sean Kaim
3065126ed1 code clean up 2016-08-19 11:00:30 -04:00
Sean Kaim
98ae737fb8 code clean up and expcetion stack logging 2016-08-19 10:45:22 -04:00
Sean Kaim
52cfda1d8e move some old/unused files 2016-08-18 13:22:41 -04:00
Sean Kaim
f727c13e20 fix minor complier warning 2016-08-18 13:11:21 -04:00
Sean Kaim
0c01479866 rebuild solution fails on post build
error 1104
editbin also can't find mremoteng.exe - seems to be a timing issue.
Small sleep fixes it.
2016-08-18 12:16:19 -04:00
Sean Kaim
34c9ae7518 Fix a cast 2016-08-18 12:04:48 -04:00
Sean Kaim
960334b638 minor logging changes & clean up 2016-08-18 12:00:11 -04:00
Sean Kaim
32e7ee1917 changelog.txt update 2016-08-18 08:55:09 -04:00
David Sparer
6e221e753b code cleanup 2016-08-17 15:12:48 -06:00
David Sparer
501dffe5b2 Refactored to separate loading connection data from deserializing data into domain objects 2016-08-17 14:47:03 -06:00
David Sparer
90dc8274c5 Added ObjectListView to packages 2016-08-17 09:29:43 -06:00
David Sparer
0a5cb40f55 Merge branch 'MR-651_improper_connection_inheritance_behavior' into develop 2016-08-17 09:17:01 -06:00
David Sparer
6d7d587a33 Renamed "Parent" interface to "IParent" 2016-08-17 09:11:13 -06:00
David Sparer
35b6e2bf35 minor cleanup of PuttySessionInfo 2016-08-17 09:02:43 -06:00
David Sparer
d2ebb207ab minor cleanup 2016-08-17 08:54:56 -06:00
David Sparer
c3a7f3c950 Created more unit tests for connection info objects 2016-08-17 08:54:36 -06:00
Sean Kaim
b44efbd998 ssh file transfer Don't add file name to dest file 2016-08-16 15:55:23 -04:00
David Sparer
8bdba217a6 Added test for multi-folder (recursive) inheritance 2016-08-15 15:36:32 -06:00
David Sparer
81dd315dfe More connection tree integration tests 2016-08-15 15:01:55 -06:00
David Sparer
d0be7f16ba Began creating integration tests for the connection tree 2016-08-15 14:47:26 -06:00
David Sparer
818ac03e84 RootNodeInfo now inherits from ContainerInfo 2016-08-15 14:45:33 -06:00
David Sparer
41127e0e38 Added collection management functions to ContainerInfo (Add, AddRange, Remove, RemoveRange). Added unit tests 2016-08-15 12:02:29 -06:00
David Sparer
b4af59a873 Fixed some instances where "Inheritance" was mistakenly changed to "IInheritable" by resharper 2016-08-15 11:05:18 -06:00
David Sparer
08972ff234 New connection entries now get their initial data from the DefaultConnectionInfo 2016-08-15 10:51:56 -06:00
David Sparer
6653f9b110 Resolved bug with DefaultConnectionInfo.SaveTo 2016-08-15 10:39:26 -06:00
David Sparer
c6f2ebd92a Merge branch 'develop' into MR-651_improper_connection_inheritance_behavior 2016-08-15 10:06:47 -06:00
David Sparer
b50c061c0a minor code cleanup 2016-08-12 13:19:43 -06:00
David Sparer
bb0e92c519 DefaultConnectionInfo saving is now handled by the SaveTo method. Removed unnecessary Runtime method 2016-08-12 13:06:26 -06:00
David Sparer
682dc36d34 Added custom type conversion support to the SaveTo method of DefaultConnectionInfo 2016-08-12 13:05:44 -06:00
Sean Kaim
3a173821d7 1.75 Alpha 3 2016-08-12 14:12:57 -04:00
David Sparer
0df478d2aa Resolved runtime type conversion issue with DefaultConnectionInfo when loading from a serialized source 2016-08-12 11:18:17 -06:00
David Sparer
8d3ba881e5 Refactoring DefaultConnectionInfo handling to a new class which inherits from ConnectionInfo 2016-08-11 15:32:04 -06:00
Sean Kaim
4555db8e97 MR-965, MR-871, MR-629: Error 264 on RDP Connect
Error 264 is a timeout:
RDP disconnected!
264 This computer can't connect to the remote computer.

The two computers couldn't connect in the amount of time allotted. Try
connecting again. If the problem continues, contact your network
administrator or technical support.
2016-08-11 16:52:57 -04:00
David Sparer
bc2beb2c56 Rename Config.mRemoteNG to Config.mRemoteNGImporter 2016-08-11 13:45:18 -06:00
David Sparer
29bd6af2a2 Made ContainerInfo class inherit from ConnectionInfo class 2016-08-11 11:11:31 -06:00
Sean Kaim
1bbd20de3c Merge PR #130 - port scan button width 2016-08-10 16:48:42 -04:00
Sean Kaim
d1f4164498 Update changelog 2016-08-10 16:41:56 -04:00
Sean Kaim
d1c238a812 Merge pull request #134 from mRemoteNG/MR-946_Initial_SSH.NET
MR-946 initial ssh.net - File xfer
2016-08-10 16:03:56 -04:00
Sean Kaim
675bbd602f Remove old components, update credits.txt 2016-08-10 15:59:14 -04:00
Sean Kaim
ab1be61fda SFTP file transfer now works fully 2016-08-10 15:52:02 -04:00
David Sparer
754caca613 Convert to auto-properties 2016-08-10 11:16:27 -06:00
Sean Kaim
8097ab146c Merge remote-tracking branch 'refs/remotes/origin/develop' into MR-946_Initial_SSH.NET 2016-08-10 12:04:02 -04:00
David Sparer
c0c4b69c64 Rename interface "Inheritance" to "IInheritable" 2016-08-10 09:24:48 -06:00
David Sparer
315d90391c Merge branch 'MR-906_default_Inherit_All_not_saved' into develop 2016-08-10 09:14:18 -06:00
David Sparer
869a5fd773 Created several simple unit & integration tests for DefaultConnectionInheritance 2016-08-10 09:06:44 -06:00
David Sparer
9940cfcf12 Minor cleanup of the Config window class 2016-08-10 08:28:35 -06:00
Sean Kaim
463b6cd791 progress bar style 2016-08-09 17:53:02 -04:00
David Sparer
b981516913 Fix issue setting ICAEncryptionStrength through inheritance 2016-08-09 15:50:56 -06:00
David Sparer
9ffdbee400 Fix self-reference initialization error 2016-08-09 15:49:52 -06:00
Sean Kaim
def55c9dfe code formatting/clean up 2016-08-09 17:48:22 -04:00
Sean Kaim
69668c5e55 background transfer 2016-08-09 17:45:46 -04:00
David Sparer
f41adec096 Minor cleanup of ConnectionInfo 2016-08-09 15:25:21 -06:00
David Sparer
3cc56f9886 Minor cleanup of ConnectionInfoInheritance 2016-08-09 15:25:03 -06:00
Sean Kaim
be8b302e20 Merge remote-tracking branch 'refs/remotes/origin/develop' into MR-946_Initial_SSH.NET 2016-08-09 16:58:57 -04:00
Sean Kaim
6da05af387 code clean up & fix complier warnings 2016-08-09 16:58:44 -04:00
Sean Kaim
2eb74afc20 upload with progress bar working 2016-08-09 16:41:46 -04:00
David Sparer
c44bb1e27d Made DefaultConnectionInheritance.SaveTo a generic method to decouple it from Settings 2016-08-09 11:08:06 -06:00
David Sparer
12cd38a047 Made DefaultConnectionInheritance LoadFrom a generic method to decouple it from the Settings class 2016-08-09 11:02:53 -06:00
David Sparer
e5c896cb36 Refactored much of the inheritance code to use System.Reflection instead of hardcoded values.
Refactored DefaultInheritance to its own class which inherits from the ConnectionInfoInheritance class.
Fixed issue with DefaultInheritance not saving to settings.
2016-08-09 10:34:51 -06:00
Sean Kaim
d89a2487e7 Merge remote-tracking branch 'refs/remotes/origin/develop' into MR-946_Initial_SSH.NET 2016-08-08 17:56:10 -04:00
David Sparer
e59f91a976 Minor refactoring 2016-08-05 09:37:22 -06:00
David Sparer
9a80777fe9 Minor code cleanup in ConnectionInfoInheritance 2016-08-05 09:02:17 -06:00
David Sparer
69b1da50b8 Removed redundant namespace qualifier 2016-08-05 08:55:45 -06:00
Sean Kaim
04ada28ffc Latest SSH.NET package 2016-08-04 17:48:26 -04:00
David Sparer
369a6c2f04 Merge branch 'MR-896_RDP_Class_not_registered' into develop 2016-08-04 13:39:37 -06:00
David Sparer
f438fb65f8 Installer now checkes for KB2574819 on win7 before installation can occur 2016-08-04 13:37:36 -06:00
David Sparer
6590011ef1 Refactored the CustomActions for checking if a KB is installed. Made it more generic 2016-08-04 13:36:08 -06:00
David Sparer
b6eb3d2361 Added the CustomActions project to build by default for Release and Debug builds 2016-08-03 13:26:32 -06:00
David Sparer
13b9b77f0d Added exception catching to a CustomAction method 2016-08-03 13:25:38 -06:00
David Sparer
20419856c1 Minor update to changelog 2016-08-03 13:25:02 -06:00
David Sparer
43100930cd update changelog for 1.75 alpha 2 2016-08-03 12:40:56 -06:00
David Sparer
aac7e4cc53 Merge branch 'MR-874_incorrect_rdp_check_in_installer' into develop 2016-08-03 12:16:31 -06:00
David Sparer
1c8f3e2328 Some more code cleanup 2016-08-03 12:10:36 -06:00
David Sparer
a54f0a2e89 Cleaned up some CustomActions code 2016-08-03 12:08:03 -06:00
David Sparer
fdb3cecf8e Refactored CustomActions to extract a class 2016-08-03 12:07:13 -06:00
David Sparer
8762c39dd5 Refactored the way we verify the minimum RDP version is installed. Now, instead of using a dynamically named variable based on the required KB, we boil this down to a statically named variable that indicates if the minimum KB is installed. 2016-08-03 11:57:17 -06:00
David Sparer
fc56c56883 Cleanup of some custom action code 2016-08-03 11:14:36 -06:00
David Sparer
ae950ac075 Use var for local variables in CustomActions file 2016-08-03 10:26:37 -06:00
Sean Kaim
8bbb9a70c6 code clean up, ui tweaks, new backend class 2016-07-29 21:52:06 -04:00
Sean Kaim
e6532dc155 code clean up, Eng translation for reconn all 2016-07-29 15:47:44 -04:00
Sean Kaim
ee6af8c187 Merge pull request #133 from yegorich/reconnect
Add an option to reconnect all opened tabs
2016-07-29 15:32:57 -04:00
David Sparer
bc1a0725df Merge branch 'develop' into MR-942_refactor_connection_loader 2016-07-28 14:56:30 -06:00
Sean Kaim
37905f8249 Add nuget packages to tests 2016-07-28 16:49:44 -04:00
Sean Kaim
8163e7273e Add nuget packages to tests 2016-07-28 16:47:45 -04:00
Yegor Yefremov
58fdba1d89 Add an option to reconnect all opened tabs 2016-07-28 09:40:17 +02:00
Sean Kaim
203dcf714f Initial SSH.NET file transfer
Upload succeeds. UI status/etc needs work.
2016-07-27 22:56:28 -04:00
David Sparer
649f864236 Extracted some methods from the sql connection loader 2016-07-27 12:11:17 -06:00
David Sparer
292f3b03cc Refactored AddNodeFromXml to improve readability 2016-07-27 10:51:47 -06:00
David Sparer
ec8fe3c343 Extracted methods for adding connections / containers to the TreeView 2016-07-27 10:36:37 -06:00
David Sparer
823b0518ae Extracted a method for authenticating protected data 2016-07-27 09:59:41 -06:00
David Sparer
c48caf5bdc Minor cleanup of the Runtime methods that use the connections loader 2016-07-26 14:02:59 -06:00
David Sparer
20bc6d079f Extraced method for expanding folders 2016-07-26 12:45:37 -06:00
David Sparer
dccd318f60 Fixed an oversight with bool initialization 2016-07-26 12:44:24 -06:00
David Sparer
2b0f670fb7 Extracted method for opening connections from last session 2016-07-26 12:42:08 -06:00
David Sparer
b5c431dca8 Extracted more methods 2016-07-26 12:40:38 -06:00
David Sparer
57dd93f136 Extracted method for initializing the root tree node 2016-07-26 12:39:37 -06:00
David Sparer
976e02effb Extracted method to load xml data 2016-07-26 12:19:54 -06:00
David Sparer
396387340a Extracted method to validate confcon file version 2016-07-26 12:15:11 -06:00
David Sparer
d9bf021597 Use object initializer 2016-07-26 12:14:27 -06:00
David Sparer
b4e26f513b Removed unnecessary property from xml connection loader 2016-07-26 11:44:50 -06:00
David Sparer
2eef31f74d Renamed several database related properties to be more generic ("sql" -> "database") 2016-07-26 11:34:47 -06:00
David Sparer
cc96e2b3eb Removed more unused code 2016-07-26 11:30:52 -06:00
David Sparer
4526a0b875 Removed unnecessary using directives 2016-07-26 11:29:24 -06:00
David Sparer
4568bcc0ae Split Xml connection loader to its own class 2016-07-26 11:27:31 -06:00
David Sparer
cf3af14c6a Split connection loader code for Sql to its own class 2016-07-26 11:13:43 -06:00
David Sparer
d320c84bc8 Removed some more redundant code 2016-07-26 10:26:03 -06:00
David Sparer
8eff262e8f Removed redundant code 2016-07-26 10:10:41 -06:00
David Sparer
8c7d90f0c4 Use object initializers 2016-07-26 10:02:16 -06:00
David Sparer
0e189551dd Simplify conditional statements 2016-07-26 09:58:26 -06:00
David Sparer
981acd6510 Modified a few function names to adhere to style guidelines 2016-07-26 09:48:45 -06:00
David Sparer
404aae6bf3 Fixed some spacing and caught a few more place that var should have been used 2016-07-26 09:44:11 -06:00
David Sparer
57cc9b8de4 Import Messages namespace 2016-07-26 09:36:24 -06:00
David Sparer
d2def0a34d Use var for local variable declarations 2016-07-26 09:34:40 -06:00
David Sparer
f1a5e1c029 Renamed fields and properties to adhere to style guide and be more descriptive 2016-07-26 09:19:46 -06:00
David Sparer
19ae192887 Converted properties to auto-properties where possible 2016-07-26 09:16:31 -06:00
Sean Kaim
cc87227559 minor tweaks to AeadCryptographyProvider 2016-07-20 11:33:55 -04:00
Sean Kaim
9ad0c74a56 code clean up 2016-07-15 09:36:34 -04:00
Sean Kaim
55a8b743c8 Fix exception opening in Designer 2016-07-15 09:08:34 -04:00
Sean Kaim
7adb150d1c minor code clean up & logging 2016-07-14 15:33:41 -04:00
David Sparer
afdb392289 Jenkinsfile change may not be working properly. This is a test commit 2016-07-14 12:50:44 -06:00
David Sparer
1c8e24a117 Found a way to simplify the git checkout stage of the Jenkins pipeline 2016-07-14 12:46:52 -06:00
David Sparer
266e79a2c3 Fixed a merge mistake regarding the Geckofx package version 2016-07-14 10:48:15 -06:00
David Sparer
6c5d629a88 Merge branch 'MR-917_Improve_cryptographic_support' into develop
# Conflicts:
#	mRemoteV1/mRemoteV1.csproj
#	mRemoteV1/packages.config
2016-07-14 08:43:16 -06:00
David Sparer
84ed778b67 Merge pull request #131 from jamesrenaud/MR-910_RDP_Gateway_Credentials_Applied_Incorrectly
MR-910 Fixes to support Remote Desktop Gateways
2016-07-13 18:13:58 -06:00
jamesrenaud
c1d41847a2 Removed inline comment per style feedback 2016-07-13 19:07:15 -04:00
David Sparer
73c50837d8 Created class for building and using encrypted secure strings 2016-07-13 12:51:21 -06:00
David Sparer
89075aa3e9 Removed unnecessary crypto experiment 2016-07-13 10:42:44 -06:00
David Sparer
bffe4454ba Moved AeasCryptographyProvider to the mRemoteNG.Security.SymmetricEncryption namespace 2016-07-13 10:34:36 -06:00
David Sparer
69a8f50b58 Moved LegacyRijndaelCryptographyProvider to the mRemoteNG.Security.SymmetricEncryption namespace 2016-07-13 10:32:36 -06:00
David Sparer
8c6f6534b6 Added method to the crypto factory and unit test 2016-07-13 10:10:08 -06:00
David Sparer
791a78154d Fixed a decryption bug introduced while cleaning up code in the LegacyRinjdaelCryptographyProvider class 2016-07-13 09:59:57 -06:00
David Sparer
f08ce0acd5 LegacyRijndaelCryptographyProvider now implements ICryptographyProvider 2016-07-13 09:39:27 -06:00
David Sparer
757b195d5c Made the LegacyRijndaelCryptographyProvider class non-static 2016-07-13 08:41:18 -06:00
David Sparer
c6a39a9220 Rename "Crypt" class to "LegacyRijndaelCryptographyProvider" 2016-07-13 08:22:06 -06:00
David Sparer
a2054b458b Code cleanup on the legacy crypt class 2016-07-13 08:16:06 -06:00
James Renaud
6ee12d447f Fixes to support Remote Desktop Gateways 2016-07-12 22:44:27 -04:00
Hayato Iriumi
f95e3fb719 Merge branch 'develop' of https://github.com/mRemoteNG/mRemoteNG.git 2016-07-11 21:44:16 -07:00
Hayato Iriumi
aa9141505f More Japanese translation 2016-07-11 19:56:09 -07:00
David Sparer
b4f0d2f2ae Removing un-needed experiments 2016-07-11 18:12:44 -06:00
David Sparer
5bc67ab796 Changed default engine from AesFastEngine to AesEngine 2016-07-11 18:07:42 -06:00
David Sparer
4f86e0da62 Added a factory class for instantiating crypto providers 2016-07-11 18:07:22 -06:00
David Sparer
12165ac9a6 Added required property to the ICryptographyProvider interface to get the underlying crypto algorithm 2016-07-11 18:06:28 -06:00
David Sparer
dd783c2dc0 Forgot to save project 2016-07-11 15:43:42 -06:00
David Sparer
4b65086622 Some cleanup 2016-07-11 15:42:48 -06:00
David Sparer
de2542c172 Renamed AesGcm to AeadCryptographyProvider 2016-07-11 15:38:13 -06:00
David Sparer
973de3507e AesGcm does not actually benefit from generics. Removed that support 2016-07-11 15:35:13 -06:00
Sean Kaim
1945d5ac6b Update changelog.txt 2016-07-11 17:27:23 -04:00
Sean Kaim
cb3614d54c Fix LargeAddressAware test 2016-07-11 17:27:01 -04:00
David Sparer
4375f2d5d1 Some cleanup of AesGcm class 2016-07-11 15:23:02 -06:00
David Sparer
92b6cf201e Modified AesGcm to accept different string encodings (besides UTF-8) 2016-07-11 15:17:07 -06:00
David Sparer
b2b53561ba Modified AESGCM to support specifying the block cipher engine through generics 2016-07-11 15:10:43 -06:00
Sean Kaim
73a1923db6 Fix conflicts 2016-07-11 16:25:53 -04:00
David Sparer
76e290f6b7 AESGCM implements ICryptographyProvider 2016-07-11 14:24:22 -06:00
Sean Kaim
be02814021 Update GeckoFx and NUnit nuget packages 2016-07-11 16:22:33 -04:00
David Sparer
d60c007ac6 Make AESGCM non-static 2016-07-11 14:22:20 -06:00
David Sparer
e92c1eaa9d Add some tests for the AesGcm class 2016-07-11 14:17:50 -06:00
David Sparer
8d638602b9 Fix encryptor class 2016-07-11 14:17:28 -06:00
David Sparer
48161aca47 Changed the unit tests to use to Encryptor class, which is a better implementation than the AesCryptographyProvider. 2016-07-11 14:16:20 -06:00
Sean Kaim
11314972fa Merge pull request #129 from mRemoteNG/dockpanelsuite_nuget
Dockpanelsuite nuget packages
2016-07-11 16:16:07 -04:00
David Sparer
83ac202a6b The "AESThenHMAC" file is not particularly helpful. This uses .Net crypto - trying to stick with BouncyCastle 2016-07-11 14:14:29 -06:00
Sean Kaim
02c601fd3a Remove local DockPanelSuite 2016-07-11 16:13:48 -04:00
Sean Kaim
86f6f85142 DockPanelSuite 2.10 Final NuGet packages 2016-07-11 16:12:32 -04:00
David Sparer
ca4cb433a9 Testing another implementation for crypto 2016-07-11 13:41:07 -06:00
David Sparer
e5bed0afcb Testing out some encryption implementations 2016-07-11 13:39:30 -06:00
Sean Kaim
11cf85f771 Delete "old installer" files 2016-07-11 15:01:03 -04:00
Sean Kaim
18d7a9cfe9 Update to correct chat room. 2016-07-11 14:23:19 -04:00
David Sparer
b3bac32441 Moved enhancements made in the CredentialManager branch to a dedicated branch 2016-07-11 11:41:42 -06:00
Sean Kaim
0b9fb06c08 fix Gitter badge 2016-07-11 12:44:04 -04:00
Sean Kaim
c6219ff315 Gitter badge 2016-07-11 12:42:30 -04:00
Sean Kaim
2b7668aa68 Updated installer post build steps 2016-07-08 17:59:25 -04:00
Sean Kaim
c8a684e10d Add readme.txt back (no markdown syntax) 2016-07-08 17:18:29 -04:00
Sean Kaim
5a5d675f3e Update version to 1.75 2016-07-08 17:09:02 -04:00
Sean Kaim
a4acc60f1d Updated change log
Fixed some formatting issues
2016-07-08 17:02:34 -04:00
Sean Kaim
b3bc04251b Update .gitignre
.editorconfig is a user preference
2016-07-08 17:01:50 -04:00
Sean Kaim
203111eb5a Revert "Update .gitignore"
This reverts commit 472168b9e4.
2016-07-08 17:01:16 -04:00
Sean Kaim
472168b9e4 Update .gitignore 2016-07-08 17:00:53 -04:00
Sean Kaim
328ebbe3f7 Merge pull request #127 from mRemoteNG/MR-902_vncsharp_lib_updates
MR-902 vncsharp lib updates
2016-07-08 16:52:31 -04:00
Sean Kaim
999cd19d81 Updated dll including fixes from VncSharpNG.dll
Updated credits.txt

Sent changes to upstream: https://github.com/humphd/VncSharp/pull/21
2016-07-08 16:49:53 -04:00
Sean Kaim
d23f6a69e5 MR-905 - Crash at startup
Description: The process was terminated due to an unhandled exception.
Exception Info: System.InvalidCastException
Stack:
at
mRemoteNG.App.CompatibilityChecker.FipsPolicyEnabledForServer2008AndNewer()
at mRemoteNG.App.CompatibilityChecker.CheckFipsPolicy()
at mRemoteNG.App.CompatibilityChecker.CheckCompatibility()
at mRemoteNG.App.Startup.InitializeProgram()
at mRemoteNG.App.ProgramRoot.StartApplication()
at mRemoteNG.App.ProgramRoot.Main(System.String[])
2016-07-08 13:42:13 -04:00
Sean Kaim
38c7fe9e0a links/formatting 2016-07-06 11:32:46 -04:00
Sean Kaim
dc02f51a15 Twitter shield linking to wrong page/formatting 2016-07-06 11:30:28 -04:00
Sean Kaim
dd7ea02c9f one last time - readme formatting 2016-07-06 10:23:57 -04:00
Sean Kaim
5e0bf0da6e more readme formatting 2016-07-06 10:19:20 -04:00
Sean Kaim
f2f4b14f5e Readme formatting 2016-07-06 10:18:27 -04:00
Sean Kaim
e27b4fa2f9 Twitter Sheild 2016-07-06 10:10:15 -04:00
Sean Kaim
c71a57bd69 Fix download stats 2016-07-06 09:58:09 -04:00
Sean Kaim
8c57b271d8 Download stats shield 2016-07-06 09:54:29 -04:00
Sean Kaim
e167602a32 Update build status 2016-07-06 09:52:20 -04:00
Sean Kaim
590f4ba2c6 Build status shield 2016-07-06 09:51:01 -04:00
Sean Kaim
b2c0dc235c Basic necessary changes
Upstream VncSharp doesn't support Ctrl + C currently.
2016-07-02 14:48:16 -04:00
Sean Kaim
f357a53e0e code clean up 2016-06-30 12:00:35 -04:00
Sean Kaim
5f7d1f9f3f Merge pull request #123 from mRemoteNG/Release_v1.74
MR-874: Added work-around to installer to ignore installation prereq
2016-06-30 10:18:38 -04:00
David Sparer
5ebd255a22 MR-874: Added work-around to installer to ignore installation prerequisites 2016-06-28 08:26:25 -06:00
Sean Kaim
010c0a5061 Merge pull request #121 from mRemoteNG/Release_v1.74
Merge latest 1.74 fixes into develop
2016-06-28 10:21:36 -04:00
Sean Kaim
6ec4bdd926 Updated change log 2016-06-28 10:09:35 -04:00
Sean Kaim
fe023b798d MR-884 - Slow startup
https://blogs.technet.microsoft.com/markrussinovich/2009/05/23/the-case-of-the-slow-keynote-demo/

https://msdn.microsoft.com/en-us/library/cc656914(v=vs.100).aspx#Anchor_8
2016-06-28 10:06:48 -04:00
Sean Kaim
141c916b7b MR-884: Attempt to optimize startup 2016-06-27 11:46:41 -04:00
Sean Kaim
f160e456ae Merge pull request #120 from mRemoteNG/Release_v1.74
Merge latest 1.74 fixes into develop
2016-06-27 10:47:34 -04:00
Sean Kaim
49c6219a84 MR-854: Additional code clean up
New (.NET) method for getting file icons.
Additional ReShaper fixes
Additional null checks/protections
2016-06-25 21:34:32 -04:00
Sean Kaim
0db444e78c MR-854: Code Clean up and logging 2016-06-24 13:08:35 -04:00
Sean Kaim
57c2dc0a88 Fix log message for debugging exception 2016-06-24 12:21:40 -04:00
Sean Kaim
15ba2d3156 Fix incorrect Language Selection on Reconnect 2016-06-24 12:11:41 -04:00
David Sparer
48e2ba11bf Resolved MR-882 by removing a ProtocolType enum value that was being tested some time back. This should not have made it into the develop branch. 2016-06-24 08:21:59 -06:00
David Sparer
2a3fc01937 Merge branch 'Release_v1.74' into develop 2016-06-23 09:58:48 -06:00
David Sparer
aa3e8344fb Modified installer postbuild actions to only attempt to sign the MSI during Release builds 2016-06-23 09:58:16 -06:00
David Sparer
df5e619349 - Moved the PuTTYNG dependency file to $(SolutionDir)\Resources
- Added postbuild task to mRemoteV1 project to copy PuTTYNG file to $(TargetDir)
- Modified installer to point to the new PuTTYNG location
2016-06-23 09:57:46 -06:00
Sean Kaim
0c06983411 MR-875 - Win native compress can't extract
Removed LZMA options
Checked for file existance
2016-06-22 10:11:54 -04:00
Sean Kaim
dda9c1f1af Additional fixes for MR-872
Additional code clean up
Fixed some casting errors likely from the initial c# conversion
2016-06-22 09:35:01 -04:00
Sean Kaim
6779a02cf9 MR-872: Prevent outofbounds ex parsing args 2016-06-21 15:30:07 -04:00
David Sparer
7671328245 Merge branch 'Release_v1.74' into develop 2016-06-20 15:18:38 -06:00
David Sparer
ba7608602b Restricted code signing postbuild task to only Release configurations 2016-06-20 12:52:04 -06:00
David Sparer
92dcd8981d Fixed bug with Help window where clicking a treenode that does not have a .html file associated with it would produce an error. 2016-06-20 12:51:25 -06:00
David Sparer
cbe18b70ca Fixed bug when clicking the root tree node in the Help window 2016-06-20 12:46:47 -06:00
David Sparer
ab26b94808 Remove references to the Help page for Sessions. This feature was removed 2016-06-20 12:38:29 -06:00
David Sparer
0e176cee74 Point postbuild action at the correct location of build-relport 2016-06-20 11:53:05 -06:00
David Sparer
23eaba0d47 - Added scripts to rename and copy the MSI installer to the $(SolutionDir)\Release folder
- Added conditional post build to run the build-relport script when building the Release Portable configuration
2016-06-20 11:52:01 -06:00
David Sparer
c6b079c9cb Moved build-relport.cmd to Tools directory 2016-06-20 11:50:08 -06:00
Sean Kaim
9d544fa7fe Updated date. 2016-06-20 10:25:55 -04:00
Sean Kaim
8aba1be3e6 Remove sessions.htm 2016-06-20 10:24:00 -04:00
Sean Kaim
72d28c5219 Minor build fixes 2016-06-20 10:19:12 -04:00
David Sparer
85dc45a479 Merge branch 'Release_v1.74' into develop 2016-06-19 20:23:06 -06:00
David Sparer
283714f88c - Moved various build tools to the Tools folder
- Modified the build-relport script to point to the Tools folder for its required external programs
2016-06-19 20:12:18 -06:00
David Sparer
eb696b49fe Merge branch 'Release_v1.74' into develop 2016-06-19 08:53:42 -06:00
David Sparer
063be0dbe2 Move all files under "Installer Projects" to "InstallerProjects" to make post build tasks a bit easier 2016-06-18 16:50:01 -06:00
David Sparer
1e4656769e - Began tracking changes to the signing script.
- Added post build event for moving Resources\Help to the correct location
- Added post build events for removing unnecessary files for all "Release" configurations
- Removed lines from the release portable script that are now present in the post build events
2016-06-18 12:03:00 -06:00
David Sparer
3079cad8d6 Somehow this file was not being tracked correctly 2016-06-18 12:01:22 -06:00
Sean Kaim
d5c86b91c3 Updated change log and help files 2016-06-17 17:37:57 -04:00
David Sparer
d5de0b8fa3 Modified postbuild actions to sign the binaries. This will only run if a specific script exists 2016-06-17 12:41:45 -06:00
Sean Kaim
167c02f433 Don't build by default, just package 2016-06-17 08:47:51 -04:00
David Sparer
327e03c3b1 Turned debugging symbol generation off for Release and Release Portable configurations 2016-06-16 19:27:29 -06:00
David Sparer
5304ecb71d Prevent .pdb files from being harvested for the installer 2016-06-16 19:20:33 -06:00
Sean Kaim
64dfa2fa33 Updated Assembly Info 2016-06-16 16:28:34 -04:00
Sean Kaim
8f6431f657 fix display issues on about screen 2016-06-16 16:26:12 -04:00
Sean Kaim
5a59c8c179 Merge pull request #118 from mRemoteNG/develop
merge develop into release (again)
2016-06-16 16:16:09 -04:00
Sean Kaim
2a7fa03df1 3G -> NG 2016-06-16 16:14:15 -04:00
David Sparer
be009d55f4 Jenkinsfile: add support for branches with a period (.) in the name 2016-06-16 14:10:01 -06:00
Sean Kaim
d8789926a7 Updated Credits 2016-06-16 16:09:15 -04:00
Sean Kaim
e7de6bd42b French Spell and typographic checking
From @SebThieu
2016-06-16 16:05:31 -04:00
David Sparer
3f6b70e783 Few changes to build configurations.
- Removed the 'AnyCPU' platform. Should always use x86
- Removed installer projects from being built by default in Release configuration
2016-06-16 13:59:42 -06:00
Sean Kaim
d1ab5cc40f Merge pull request #117 from mRemoteNG/develop
merge develop into release
2016-06-16 12:17:15 -04:00
Sean Kaim
a8376ebb96 fix a typo in the changelog. 2016-06-16 12:10:06 -04:00
Sean Kaim
f0456cce0e minor change log update 2016-06-16 12:09:33 -04:00
David Sparer
bc46f8c432 Merge branch 'develop' of github.com:mRemoteNG/mRemoteNG into develop 2016-06-14 15:23:44 -06:00
Sean Kaim
4de8a8e915 More detailed messages for RDP Disconnected events 2016-06-14 16:46:55 -04:00
David Sparer
4f0d425711 - Created a unit test to verify that the LARGEADDRESSAWARE flag is set on mRemoteNG.exe
- Created configurations for the unit test project to support the PORTABLE compilation symbol. This is required for the unit test to work correctly.
2016-06-14 14:28:45 -06:00
Sean Kaim
7679c255f3 better compression for the portable zip 2016-06-14 16:26:14 -04:00
David Sparer
3027ba6dc7 Fixed issue with setting LARGEADDRESSAWARE flag on the binary 2016-06-14 13:36:08 -06:00
Sean Kaim
9b556436bb Spell check and other minor updates
"offiginally" - seriously?  😕
2016-06-11 17:35:14 -04:00
Sean Kaim
1c84205a5e Updated Changelog 2016-06-11 17:08:02 -04:00
Sean Kaim
d39373a4f5 Remove files that are no longer needed 2016-06-10 09:08:55 -04:00
Sean Kaim
3dbfdf3b5b Merge pull request #116 from mRemoteNG/GeckoFx
Replaced XULRunner with GeckoFx
2016-06-10 09:02:55 -04:00
David Sparer
286cfc961e Set the unit tests to always build with "AnyCpu" configuration 2016-06-09 16:37:52 -06:00
David Sparer
3148879bf7 Removed the installer projects from being built in the Debug, Debug Portable, and Release Portable build configurations. 2016-06-09 16:20:36 -06:00
David Sparer
70924b6823 Modified jenkinsfile to force build server to build x86 2016-06-09 15:54:29 -06:00
Sean Kaim
2a63fe6a09 build fix 2016-06-09 17:42:49 -04:00
Sean Kaim
91c09ebd7e Fix jenkins unit test build/run 2016-06-09 17:39:42 -04:00
David Sparer
4957e62765 Fixed a missing apostrophe in the jenkinsfile 2016-06-09 14:57:10 -06:00
David Sparer
80ef32b8b5 Updated the jenkinsfile to restore nuget packages before build. This is done automatically in VS2015 but not in msbuild. 2016-06-09 14:55:26 -06:00
Sean Kaim
39bf3e754d Clarify option 2016-06-09 12:20:15 -04:00
hiriumi
3d8c0ce181 More Japanese translations 2016-06-09 08:26:54 -07:00
hiriumi
07042d16b0 More Japanese translation. About 60% done. 2016-06-08 13:02:48 -07:00
hiriumi
fce583a346 Option page weren't displaying target language so I added apply language in frmOptions. 2016-06-08 10:16:45 -07:00
hiriumi
7ba5a3b8cd Merge branch 'develop' of https://github.com/mRemoteNG/mRemoteNG.git 2016-06-08 10:07:56 -07:00
Sean Kaim
ae16c021da Remove XULRunner path from settings 2016-06-08 10:40:29 -04:00
Sean Kaim
70ff34438f Update component check for GeckoFx 2016-06-08 10:00:23 -04:00
Sean Kaim
b105585f5a Update Credits.txt 2016-06-07 16:12:16 -04:00
Sean Kaim
29c7859ea1 Replace XULRunner with GeckoFX 2016-06-07 15:43:44 -04:00
Sean Kaim
678194f4f7 minor code clean up 2016-06-07 10:41:56 -04:00
hiriumi
60353be2c0 Japanese translation 2016-06-06 07:05:35 -07:00
Sean Kaim
6410acbb48 minor tweaks to the port scan UI
This seems like a better user experience.  This will also allow for
further (future) changes in the import window when using custom ports
and have it make even more sense.
2016-06-05 14:55:31 -04:00
Sean Kaim
731c2e22b8 PortScan: Actually scan asynchronously
Speeds up the port scan signifigantly
2016-06-05 14:09:51 -04:00
Sean Kaim
cd950f39b4 refactor/cleanup + make portscan work
The non-import version of a portscan didn't test any ports and never
found any open ports (due to backwards logic).
2016-06-04 23:34:51 -04:00
Sean Kaim
8cbf56f7a5 Build FilteredPropertyGrid into mRemoteNG
No longer load the dll.
Makes the small amount of source more maintainable then from the code
project.
Gets rebuilt with latest build env.
2016-06-03 22:13:12 -04:00
David Sparer
17f986ea26 Few fixes for casting errors. These occurred due to commit e5f9fce01e 2016-06-03 15:56:15 -06:00
David Sparer
e5f9fce01e Cleaned up WindowPlacement class by moving native Win32 functions to the NativeMethods class 2016-06-03 15:53:11 -06:00
David Sparer
4c34a88a10 Cleaned up ProcessController tool by moving all native win32 methods to the NativeMethods class 2016-06-03 15:40:09 -06:00
David Sparer
324d34aa3c Moved the TreeImageType to the mRemoteNG.Tree namespace. Removed all references to the mRemoteNG.Images namespace, which no longer exists. 2016-06-03 15:24:01 -06:00
David Sparer
3f984fb65e Removed unused file (contained enum had no references) 2016-06-03 15:19:18 -06:00
David Sparer
c108c60c30 Merge branch 'release/v1.74' into develop 2016-06-03 15:11:44 -06:00
David Sparer
cf1a84f4b2 Resolved MR-855 - Resource not found error when testing proxy settings.
This was introduced in 634df366bd
2016-06-03 15:10:19 -06:00
hiriumi
350afcdb70 more Japanese translations 2016-06-03 12:01:20 -07:00
hiriumi
e5b319e518 Added question mark to MessageBox and more Japanese translation. 2016-06-02 17:07:45 -07:00
David Sparer
a43785d1f0 Small cleanup in Startup.cs 2016-06-02 15:29:24 -06:00
David Sparer
b90981a17c Made a couple more Startup methods non-static 2016-06-02 15:26:51 -06:00
David Sparer
47bbe20001 Startup: clean up some 'using' directives and sort them 2016-06-02 15:23:42 -06:00
David Sparer
668b9dd903 Refactored some Startup functions to their own class 2016-06-02 15:22:22 -06:00
David Sparer
6ca98149a7 Made Startup slightly less static 2016-06-02 15:21:30 -06:00
David Sparer
af2de33809 Forgot to save project when deleting the ApplicationEvents file... I do this a lot it seems. 2016-06-02 14:59:02 -06:00
Sean Kaim
737054873e Update Credits.txt 2016-06-02 16:46:23 -04:00
Sean Kaim
1dd0961a48 Just a comment... 2016-06-02 16:35:39 -04:00
David Sparer
3fcb6bcbd0 Removed unnecessary file. These functions were reimplemented in commit 996af9b268 2016-06-02 14:28:59 -06:00
David Sparer
53660cc7dc Merge branch 'release/v1.74' into develop 2016-06-02 13:49:21 -06:00
David Sparer
996af9b268 Fixed MR-852 - Option "Allow only a single instance of the application" non-functional 2016-06-02 13:47:04 -06:00
Sean Kaim
512044617c Last VB references removed 2016-06-02 15:45:47 -04:00
Sean Kaim
a91f712735 Remove more VB referneces 2016-06-02 14:35:12 -04:00
Sean Kaim
fb7a0fcb50 Remove VB references + fix exception 2016-06-02 14:34:56 -04:00
David Sparer
749ed5432b Merge branch 'release/v1.74' into develop 2016-06-01 11:17:10 -06:00
David Sparer
53be4c259e Fixed MR-847 - Renaming folder in connection tree does not update config panel name 2016-06-01 11:16:47 -06:00
Sean Kaim
e32630511d fix portable build
Move help files to proper location
Don't include unnecessary files
2016-06-01 10:51:02 -04:00
Sean Kaim
c9a6d69d6f README update 2016-05-31 22:38:37 -04:00
Sean Kaim
5a78a71316 Merge branch 'develop' of https://github.com/mRemoteNG/mRemoteNG into develop 2016-05-31 21:07:47 -04:00
Sean Kaim
da9680d210 Minor form changes
Ported from PR #105
Thanks @aplocher
2016-05-31 21:06:56 -04:00
Sean Kaim
1ec37d657d Minor form changes
Ported from PR #105
2016-05-31 21:04:58 -04:00
Sean Kaim
99df3df42c avoid exception when disposing external tools items
Similar to #114
Thanks @Brandhor
2016-05-31 20:53:10 -04:00
David Sparer
1c83609971 Merge pull request #114 from Brandhor/exttools
External Tools Fixes
2016-05-31 17:59:55 -06:00
Brandon
32da8433bb avoid exception when disposing external tools items 2016-06-01 01:05:15 +02:00
Brandon
485536dc90 fix launching external tools 2016-06-01 00:46:14 +02:00
David Sparer
0b605ddb70 Merge branch 'release/v1.74' into develop 2016-05-31 16:24:32 -06:00
David Sparer
755d7b0742 Resolved MR-846 - help files not being copied with installer 2016-05-31 15:31:47 -06:00
Sean Kaim
15030ab7cb Release Portable Build script 2016-05-31 16:59:06 -04:00
hiriumi
a438d6c3c3 Merging Japanese translation 2016-05-31 09:33:24 -07:00
hiriumi
865a926047 saving Japanese translation. 2016-05-31 09:27:56 -07:00
Sean Kaim
a36ec166cf Initial 1.74 Changelog update 2016-05-31 12:27:06 -04:00
Sean Kaim
77e702da6c Merge pull request #113 from mRemoteNG/develop
exception fixes
2016-05-29 22:07:01 -04:00
Sean Kaim
1560339377 Fix MR-838 - correct cast 2016-05-29 21:58:54 -04:00
Sean Kaim
f0aaab1299 Fix MR-839 - correct cast 2016-05-29 21:55:15 -04:00
Sean Kaim
4eced42981 Fix MR-840 (exception entering fullscreen)
bug introduced as part of the C# conversion

VB code:
Public Fullscreen As New Misc.Fullscreen(Me)

Private Sub mMenViewFullscreen_Click(sender As Object, e As EventArgs)
Handles mMenViewFullscreen.Click
Fullscreen.Value = Not Fullscreen.Value
mMenViewFullscreen.Checked = Fullscreen.Value
End Sub
2016-05-29 21:35:41 -04:00
hiriumi
1da2839cc3 Cleaned up PortScan.cs 2016-05-28 22:16:38 -07:00
hiriumi
0200281732 Cleaned up mRemoteNG.cs 2016-05-28 22:12:25 -07:00
hiriumi
3d9f9ff4c2 Cleaned up ConnectionIcon.cs 2016-05-28 21:55:38 -07:00
hiriumi
60048b4450 Cleaned up ConfigWindow.cs 2016-05-28 21:47:47 -07:00
hiriumi
4bd67c15c0 More Japanese translation. Not complete yet. 2016-05-27 23:35:46 -07:00
hiriumi
3237e18d2d Removed redundant initialization. 2016-05-27 23:01:47 -07:00
hiriumi
fe17123707 Some more clean up of ThemeSerializer.cs 2016-05-27 22:59:57 -07:00
hiriumi
a51df79925 Cleaned up ThemeSerializer.cs 2016-05-27 22:52:54 -07:00
hiriumi
efbe78a77e Just a bit of clean up using ReSharper. 2016-05-27 22:49:23 -07:00
David Sparer
9f860a3f3e Resolved MR-683 - Validated then updated the German localization with provided file. 2016-05-27 14:33:06 -06:00
Sean Kaim
9dc5442743 minor clean up 2016-05-27 15:56:03 -04:00
Sean Kaim
e2d66235b5 Remove Microsoft.VisualBasic references & cleanup 2016-05-27 15:49:03 -04:00
David Sparer
cafad5599d Merge branch 'MR-836_Deleting_folder_only_deletes_2_connections' into develop
# Conflicts:
#	mRemoteV1/Tree/ConnectionTree.cs
2016-05-27 12:58:28 -06:00
Sean Kaim
6d8f375ae1 Remove Microsoft.VisualBasic references 2016-05-27 14:21:34 -04:00
David Sparer
a055d7f4a8 Slight optimization to prevent window flicker when deleting a folder with many connections. 2016-05-27 11:56:48 -06:00
Sean Kaim
09102325eb Fix MR-828 NullReferenceException SetNodeToolTip
Also, remove Microsoft.VisualBasic references
2016-05-27 13:56:04 -04:00
David Sparer
33c9774b21 There was still a bug with deleting folders that had contents. Using a builtin function to do this instead of trying to re-implement.
I am hoping this really does fix MR-836 this time.
2016-05-27 11:39:18 -06:00
David Sparer
d7f64fec4f Added check for null nodes in ConnectionTree.DeleteSelectedNode(). This now fully resolves the issues noted in MR-836 2016-05-27 11:22:40 -06:00
David Sparer
eab5a42d93 Refactored ConnectionTree.DeleteSelectedNode() - extracted some methods to make it more readable 2016-05-27 11:18:05 -06:00
David Sparer
5c7f120a7e Fixed bug with ConnectionTreeNode.IsEmpty(). Logic was inverted 2016-05-27 11:12:32 -06:00
David Sparer
d7d78d8053 Inverted conditional statement. This resolved the primary issue in MR-836 where deleting a non-empty folder would not delete all connections within it 2016-05-27 10:21:28 -06:00
David Sparer
cde7f114f9 Cleaned up some code noise in ConnectionTree 2016-05-27 09:40:34 -06:00
David Sparer
69f4904b5a Merge branch 'MR-834_support_uninstalling_pre-MSI_installs' into develop 2016-05-26 17:18:05 -06:00
David Sparer
93d54a915d Made the legacy uninstall a silent uninstall. Not sure if this is how we will want to release it, but it's reasonably user friendly 2016-05-26 16:47:39 -06:00
Sparer, David
fe9aa59690 Finished basic implementation of uninstalling legacy versions. 2016-05-26 15:37:12 -06:00
hiriumi
381a87ab50 Adding more Japanese translations in Language.ja-JP.resx file. It's not 100% complete yet. 2016-05-26 08:32:03 -07:00
hiriumi
ffea221568 Merge branch 'develop' of https://github.com/mRemoteNG/mRemoteNG.git 2016-05-25 17:53:27 -07:00
hiriumi
aaf3316e65 Added Japanese as a supported language and started to work on Language. ja-JP.resx. The language file itself is not 100% complete yet. 2016-05-25 16:05:21 -07:00
Sean Kaim
41664d2ef4 Make fonts consistent 2016-05-25 17:38:17 -04:00
Sean Kaim
717d4f0b9a Add CREDITS.TXT to About form 2016-05-25 17:27:49 -04:00
Sean Kaim
24873ffa9b Updated language files for RDP requirements 2016-05-25 15:49:01 -04:00
Sean Kaim
7f6e90758a Merge pull request #112 from mRemoteNG/remove_IPTextBox
Remove IPTextBox.dll and use a built-in control
2016-05-25 15:38:46 -04:00
Sean Kaim
5f4d565483 Remove IPTextBox.dll and use a built-in control 2016-05-25 15:37:33 -04:00
Sean Kaim
727e23ada9 DockPanelSuite updates and new theme 2016-05-25 12:29:42 -04:00
Sean Kaim
497363bc3a code clean up 2016-05-25 12:09:23 -04:00
Sean Kaim
6acf8b84ad code clean up and minor UserAgent change 2016-05-25 11:48:50 -04:00
Sean Kaim
daff0de0bd very minor code clean up 2016-05-25 10:55:36 -04:00
David Sparer
f6daa3b5dc Removed static reference to SystemMenu from Runtime. The only references to it were in frmMain 2016-05-24 20:07:25 -06:00
David Sparer
2c87d36cbb Merge remote-tracking branch 'origin/singleton' into frmMain_refactoring_experiment
# Conflicts:
#	mRemoteV1/App/ProgramRoot.cs
#	mRemoteV1/UI/Forms/frmMain.cs
2016-05-24 17:10:17 -06:00
David Sparer
3af3074ab9 Minor cleanup of frmOptions code (deleted dead space, reorder usings, reorder functions based on call order) 2016-05-24 16:56:56 -06:00
David Sparer
c00342df6f Refactoring: Extracted a method in frmOptions that sets the initially selected page 2016-05-24 16:53:47 -06:00
David Sparer
9bbd95a6f2 Fixed minor UI annoyance in frmOptions where you could not see the active page after clicking within that page. 2016-05-24 16:52:37 -06:00
Sparer, David
f1fe5d215c Fixed a few more subtle bugs in frmMain:WndProc() that were caused by the c# conversion 2016-05-24 15:33:20 -06:00
Sparer, David
36e1522a32 Fixed bug MR-826 by resolving an issue caused by the migration from VB to C#. 2016-05-24 13:29:17 -06:00
David Sparer
7c5f795bf4 Added documentation to native constants to help with troubleshooting WndProc 2016-05-22 12:09:07 -06:00
David Sparer
90258636ed Moved program initialization from frmMain to ProgramRoot 2016-05-22 11:15:18 -06:00
David Sparer
06ce840a8f Moved GetConnectionIcons call from frmMain to Startup 2016-05-22 10:48:29 -06:00
David Sparer
268c5a92d8 Minor cleanup in Startup 2016-05-22 10:45:41 -06:00
David Sparer
7f11783d46 Moved IEBrowserEmulation registration from frmMain to Startup 2016-05-22 10:45:02 -06:00
David Sparer
ae2d18e79c Removed unnecessary usings in options form test 2016-05-22 10:44:05 -06:00
David Sparer
58b9755d0c Cleaned up unnecessary usings and fully qualified names in MessageCollector 2016-05-22 10:37:27 -06:00
David Sparer
11a79c2f1f Removed Runtime.Log and replaced all references to Logger.Instance. This still breaks the law of demeter - we should fully wrap the log4net object in our own class at some point. 2016-05-22 10:34:24 -06:00
David Sparer
32742a6f4f Refactored Logger singleton implementation to be more in line with other implementations 2016-05-22 10:27:21 -06:00
David Sparer
083e71370f - Moved the startup debugging "program start" line from frmMain to Startup.cs
- Moved call to ParseCommandLineArgs() from frmMain to Startup.cs
2016-05-22 10:15:55 -06:00
David Sparer
0278390279 Moved method "CreatePanels" from Startup.cs to LayoutSettingsLoader.cs 2016-05-22 10:14:00 -06:00
David Sparer
f344ef054f - Removed unnecessary using directive
- Made many methods in Startup private and non-static
2016-05-22 10:05:11 -06:00
David Sparer
68e3953bcc Made Startup a singleton 2016-05-22 09:58:27 -06:00
David Sparer
7755a5cd9a Removed Runtime.Mainform property and replaced all references to frmMain.Default 2016-05-22 09:43:53 -06:00
Sean Kaim
05a7fec4c4 convert to singleton 2016-05-21 14:39:45 -04:00
Sean Kaim
8f0e15db85 code cleanup 2016-05-20 21:43:11 -04:00
Sean Kaim
b7dc56fef5 Disable VS hosting process
PuTTYNG windows don't integrate properly when it's enabled.
2016-05-20 21:23:48 -04:00
Sean Kaim
da14fb56fa code clean up 2016-05-20 21:19:45 -04:00
Sparer, David
b15e892c60 Removing all frmOptions unit tests since they are failing and polluting the view of our builds in Jenkins. There seems to be an issue with how the tests were structured that has now been broken since the frmOptions rewrite. 2016-05-20 12:53:51 -06:00
Sparer, David
eeeb13d094 Changed the singleton instance implementation in SupportedCultures to be safer. This resolves one of the reasons the UI unit tests are failing. 2016-05-20 12:42:34 -06:00
Sean Kaim
03cb3cd161 update credits.txt 2016-05-20 11:46:05 -04:00
Sean Kaim
f1b3558565 Use latest log4net.dll 2016-05-20 11:44:46 -04:00
Sean Kaim
6a69725ca9 Update CREDITS.TXT 2016-05-20 09:51:48 -04:00
Sean Kaim
63fdabd902 minitabcontrol.dll is no longer used 2016-05-20 09:49:45 -04:00
Sean Kaim
d624f04cde pstaskdialog.dll is no longer used 2016-05-20 09:48:07 -04:00
Sean Kaim
ba08c7d589 no need to ship the PDB with release code 2016-05-20 09:47:24 -04:00
Sean Kaim
35d072f550 Additional code clean up 2016-05-19 16:21:54 -04:00
Sean Kaim
4c28eebbdf Merge remote-tracking branch 'origin/develop' into develop
# Conflicts:
#	mRemoteV1/App/Runtime.cs
2016-05-19 16:13:05 -04:00
Sean Kaim
3ca0e2fc58 Refactoring & code clean up
Corrects some complier warnings.
2016-05-19 15:58:38 -04:00
Sparer, David
7450b22130 Cleaned up a bit more noise in Runtime.cs 2016-05-19 13:17:45 -06:00
Sparer, David
e39faaa550 Cleaned up some code noise in Runtime.cs (mostly just unnecessarily qualified namespaces) 2016-05-19 12:38:18 -06:00
Sean Kaim
ccde45acc9 Better fix for SettingsPath location 2016-05-19 14:18:49 -04:00
hiriumi
6b1c5b5b92 Merge branch 'develop' of https://github.com/mRemoteNG/mRemoteNG.git 2016-05-19 08:48:05 -07:00
hiriumi
e6af5aaea3 Removing OptionsForm as it's replaced by frmOptions. Removed unreference method in Windows class along with it. Also modified the unit test. 2016-05-19 08:47:50 -07:00
Sean Kaim
a792c98630 3G port-Avoid exceptions starting an empty ExtApp
Reference: https://github.com/kmscode/mRemote3G/issues/10

In my testing the crash was semi-random. The exception was thrown,
logged and put into Notifications (all as expected). But every now and
then, would crash (with no further info available). Could not reproduce
in a debug build.

b248849428
2016-05-18 21:56:39 -04:00
Sean Kaim
46985ab39d code clean up and set RDP admin session properly
console is deprecated, admin is not.
2016-05-18 21:51:04 -04:00
Sean Kaim
28d882af7f 3G port - Added 1920x1080 resolution.
5a5c0c1e6b
2016-05-18 21:40:17 -04:00
Sean Kaim
9d6423e7d7 3G port (and fix) - Make Smart Size Work
Allow the Smart Size selection for RDP resolution to work properly (for
reals this time).

3f54842cc1

& code clean up.
2016-05-18 21:37:05 -04:00
Sean Kaim
0a88ae6a52 3G Port - Don't display items in the ToolStripMenu
Set disabled items to invisible when they aren't needed.

97d82f2b86
2016-05-18 21:15:34 -04:00
Sean Kaim
395741a502 Disable optimizations to allow LARGEADDRESSAWARE
Reference: https://msdn.microsoft.com/en-us/library/0zza0de8.aspx
.obj files produced with /GL will not be available to such linker
utilities as EDITBIN and DUMPBIN.
2016-05-18 21:08:32 -04:00
Sean Kaim
00dbbdf453 Port from 3G - Attempt to set a default icon
11fdc4fc28
2016-05-18 17:36:41 -04:00
Sean Kaim
77cf6202fe Port from 3G - Attempt to avoid crash
2f99c57eb6
2016-05-18 17:31:30 -04:00
Sean Kaim
7ed00bb42d Port from 3G - avoid crash and default icon
c917f35352
2016-05-18 17:26:22 -04:00
Sean Kaim
b97fe50958 Put log in more appropriate location
ad create log by default
2016-05-18 17:13:59 -04:00
Sean Kaim
0501d73e7b Set largeaddressaware during build 2016-05-18 17:02:09 -04:00
Sean Kaim
8abe2bffb8 Use CredSSP needs to be true for modern targets
Just about all modern versions of Windows require CredSSP by default.
Set that one back to "Yes".
2016-05-18 16:36:54 -04:00
Sean Kaim
8477625472 Changed some default settings to avoid hangs
Multiple users reported that having "Cahse Bitmaps" and/or "Use CredSSP"
set to yes (which was the previous default) would cause problems with
mRemoteNG - especially when opening multiple RDP connections.

Also increased update check to 14 days.
2016-05-18 16:32:19 -04:00
Sparer, David
08851a2b7a Merge branch 'MR-810_App_crashes_when_setting_all_inherited' into csharp_conv 2016-05-18 11:17:53 -06:00
Sparer, David
d4b9ccf1c2 - Unit tests: Fixed tests for ConnectionInfoInheritance 2016-05-18 11:16:48 -06:00
Sparer, David
7b177f1fd8 Fixed bug MR-810. Omit setting the IsDefault setting when turning inheritance on completely 2016-05-18 09:42:26 -06:00
Sparer, David
7d6e814745 minor code noise cleanup 2016-05-18 09:08:54 -06:00
Sean Kaim
3cfb6ecf6f Clean up files that are no longer needed
"My Project" files are from the VB code.
SharedLibraryNG was removed - see commit:
71254ba6e2
2016-05-18 10:22:50 -04:00
Sean Kaim
11085a0037 PuTTYNG.exe 0.67 for the installer 2016-05-18 09:02:19 -04:00
David Sparer
a679bcf26b - Installer: fixed GUID for mainexe
- mRemoteNG: incremented the minor version of the product to 74. Assembly version is now 1.74
2016-05-17 19:51:49 -06:00
David Sparer
8ed1764fb3 added puttyng.exe dependency back in - this is required and im not sure how it slipped by 2016-05-17 19:03:51 -06:00
David Sparer
b2696003f0 The installer will now utilize the file version attribute of the mRemoteNG.exe file and set the installer version to match. This will help us support major upgrades easier 2016-05-17 19:03:07 -06:00
David Sparer
bc818704df Removed Pandoc from the gitignore since it is part of the build process now 2016-05-17 17:37:55 -06:00
Sparer, David
d21f3c1bcf Merge branch 'MR-818_Create_new_installer' into csharp_conv 2016-05-17 15:17:24 -06:00
Sparer, David
e6ae513474 - Add CustomActions project as a dependency of Installer project 2016-05-17 15:16:34 -06:00
Sparer, David
4360f45ab8 - Custom action for checking if RDP8.0 is installed will only run on Win7 machines
- Re-ordered conditional checks. Installer will warn about .Net version before warning about RDP 8.0 requirement. This more logically follows the "broad to specific" ordering of requirements
2016-05-17 13:50:20 -06:00
Sparer, David
74ef73ebf4 The RDP8.0 custom action project now targets .Net 2.0 for maximum compatibility. 2016-05-17 13:47:10 -06:00
Sparer, David
35b512de19 RDP 8.0 verification is working and now enabled.
Checking for the installed KBs is unusually time-intensive. Should try to optimize the runtime of this verification.
2016-05-17 13:44:19 -06:00
Sparer, David
a5966592e1 update gitignore 2016-05-16 16:11:25 -06:00
Sparer, David
8e2e1769c3 Started creating the custom action for checking if RDP 8.0 is installed. Currently not working correctly 2016-05-16 16:10:53 -06:00
hiriumi
19da883e14 Removed dependency on Microsoft.VisualBasic in Import.cs 2016-05-16 08:22:37 -07:00
hiriumi
600d5f4475 comming the 2016-05-16 08:14:51 -07:00
hiriumi
0e0e3b28de Removed dependency to Microsoft.VisualBasic in Import.cs 2016-05-16 08:11:15 -07:00
Sparer, David
2439ae0508 Merge branch 'csharp_conv' into MR-818_Create_new_installer 2016-05-16 08:07:30 -06:00
Sean Kaim
f9633cb860 Fix non-portable build 2016-05-15 20:54:49 -04:00
David Sparer
2c43f35b0b Added required variables to the other localization files.
Set the debug build configuration to only build the en-US culture for sanity's sake
2016-05-15 15:24:15 -06:00
Sean Kaim
a1beff754c Suppress JavaScript errors 2016-05-15 17:24:11 -04:00
Sean Kaim
647fa12cdc Support additional browser features
ported from mRemote3G:

11a1f94e97
2016-05-15 17:18:03 -04:00
Sean Kaim
725235c250 Fix HTTP connections not working & code cleanup 2016-05-15 17:17:14 -04:00
David Sparer
25d438d691 Links to the License, Credits, and Readme are now created when user requests start menu shortcuts. 2016-05-15 15:14:44 -06:00
David Sparer
37232b5302 Added install conditions:
- Requires Win7 or higher
- If Win7, requires SP1
- Requires .Net Framework 4.0 or higher
- Requires elevated priveleges to install
2016-05-15 15:13:40 -06:00
David Sparer
2d250282ee Added localization files for the languages we will be able to have translated the soonest 2016-05-15 13:09:19 -06:00
Sean Kaim
18e1c112e0 Correct unit tests after keyboard options removed 2016-05-15 14:06:16 -04:00
Sean Kaim
32891e5155 Remove KeyboardOptions tests
Keyboard options removed in 71254ba6e2
2016-05-15 13:57:40 -04:00
Sean Kaim
ef7cbf097b Merge pull request #111 from mRemoteNG/replace_pstaskdialog
Replace pstaskdialog
2016-05-15 13:51:39 -04:00
David Sparer
41ab8033e7 began the slow process of supporting localizations 2016-05-15 07:52:14 -06:00
David Sparer
4f392690eb Added pandoc to automatically convert the license file to RTF format for use in the installer.
Added GUI to installer with mRemoteNG images
Added git ignore entries for the FilesFragment.wsx and License.rtf files which will be re-compiled on every build
2016-05-14 18:12:21 -06:00
David Sparer
d591e4ebc2 added .msi files to the git ignore file 2016-05-14 15:36:28 -06:00
David Sparer
a315c19ebb Merge branch 'csharp_conv' into MR-818_Create_new_installer
# Conflicts:
#	mRemoteV1.sln
2016-05-14 15:35:31 -06:00
David Sparer
764b956221 Added installer support for installing PuTTYNG 2016-05-14 13:57:53 -06:00
David Sparer
f0b0086ca5 Installer now properly places shortcuts in start menu and the desktop.
Updated the program icon to a higher resolution version.
2016-05-14 12:33:52 -06:00
David Sparer
8c43494c03 Added support for creating shortcuts to start menu and desktop. However, the desktop shortcut is not functioning as expected 2016-05-14 11:53:53 -06:00
amaterasu48
634df366bd Removed PSTaskDialog.dll reference added pure .NET Form that mimics PSTaskDialog. No more dependency to it, so we shouldn't see the unexpected error. 2016-05-12 14:59:39 -07:00
Sparer, David
86585feb56 no message 2016-05-12 15:20:56 -06:00
Sparer, David
f4335ff339 updates to support the Portable build types 2016-05-12 15:10:15 -06:00
Sparer, David
61100d167f Accidentatly moved an icon file rather than copying. Put it back. 2016-05-12 14:19:59 -06:00
Sparer, David
77c7ba3194 Installer works in a very basic manner. Files will be installed as expected, though there is no GUI to select options 2016-05-12 14:14:39 -06:00
Sean Kaim
669e3a762b Removed PSTaskDialog instances & code cleanup 2016-05-12 15:08:55 -04:00
Sean Kaim
71254ba6e2 Remove Keyboard shortcut functionality
Removed due to the following reasons:
1. Crashes (semi-regularly)
2. "Beta" option from 1.73 (never released) that doesn't work (on
Windows 10 at least)
3. A multiple bugs were reported for it in the bug tracking system:
https://mremoteng.atlassian.net/browse/MR-714
https://mremoteng.atlassian.net/browse/MR-624
https://mremoteng.atlassian.net/browse/MR-687
https://mremoteng.atlassian.net/browse/MR-752
(and possibly more)
4. After reviewing the bug reports and other info, I feel it's a bad
idea. All keyboard input should go to the connected session (while
"active"). Otherwise a mouse click would be required to have mRemote be
the active Window. In which case, just click the desired tab.
2016-05-12 11:59:13 -04:00
David Sparer
8e7fe19585 Create very simple WiX project 2016-05-11 20:43:06 -06:00
David Sparer
95f605ea9d moved old installer to a new folder 2016-05-11 20:41:18 -06:00
amaterasu48
19d0e5d42f A little bit of UI clean up. 2016-05-11 15:50:09 -07:00
amaterasu48
5433a69775 Refactored and cleaned up frmMain 2016-05-11 14:41:34 -07:00
amaterasu48
f2ac6dace6 Just did refactoring and code cleaning to make it more CSharpy. 2016-05-11 12:49:48 -07:00
David Sparer
028889f9ec set default values for window position (center of screen) and size (minimum size allowed by frmMain) 2016-05-10 18:14:23 -06:00
David Sparer
f0c3395c00 Updated namespace of Resources and Language classes. The namespace was set in the designer but the custom tool needed to be run again to update the actual files. 2016-05-10 18:06:33 -06:00
David Sparer
ee180440e0 Merge branch 'settings_refactor' into csharp_conv 2016-05-10 16:53:16 -06:00
Sparer, David
4eac00c0d9 Resolved a mis-merged file 2016-05-09 10:58:49 -06:00
Sean Kaim
8e15b38e03 Set Code Analysis to MS Managed Recommended
Previously was set to "All" which generates a lot of complier warnings.

15e297eef3 seems to have been overwritten.
2016-05-09 09:42:15 -04:00
hiriumi
61e44af487 Merge remote-tracking branch 'refs/remotes/origin/csharp_conv' into settings_refactor
# Conflicts:
#	mRemoteV1/Config/Settings/SettingsLoader.cs
2016-05-08 22:27:54 -07:00
hiriumi
605fecedea Refactored config related code. 2016-05-08 21:53:41 -07:00
hiriumi
ac1a5e257e refactored settings related code. The UI still looks buggy. Will continue later. 2016-05-08 21:35:38 -07:00
Sean Kaim
401ac0225f Merge pull request #110 from mRemoteNG/settings_refactor
Settings refactor
2016-05-08 22:26:41 -04:00
Sean Kaim
dbda032a4c Disable AppSettingsProvider code as well
And an easier way to disable all custom settings provider code, but
leave it for possible/quicker future use.
2016-05-08 21:32:38 -04:00
David Sparer
b60b55dca2 property needed to be "Configuration" not "config" 2016-05-08 16:29:46 -06:00
David Sparer
e3229f4400 escaped double quotes 2016-05-08 13:15:51 -06:00
David Sparer
34435b3046 added new stage for Debug Portable build profile 2016-05-08 13:14:00 -06:00
David Sparer
1077d8ef4b Decided on commenting out the CreatePanels() / SetDefaultLayout() in frmMain rather than in LayoutSettingsLoader.
If we keep these methods in frmMain and remove in LayoutSettingsLoader, we will overwrite any custom layout loaded.
2016-05-08 12:43:57 -06:00
hiriumi
9527780d99 Removed dependency to PortableSettingsProvider.cs. This prevents app from throwing a lot of NullReferenceException on start up. I will do further testing on settings piece and probably more refactoring. 2016-05-08 11:40:30 -07:00
David Sparer
9878b39571 LayoutSettingsLoader: fix variable name for non-portable build 2016-05-08 12:23:05 -06:00
David Sparer
34f0b54284 Quick update+fix to SettingsLoader and forgot to update teh csproj 2016-05-08 12:09:22 -06:00
David Sparer
49d8aa7352 Extracted some responsibilities of the SettingsLoader to dedicated classes
Also cleaned some minor code noise in SettingsLoader
2016-05-08 12:03:36 -06:00
David Sparer
3ad6246e68 minor cleanup for Windows.cs 2016-05-08 10:30:16 -06:00
David Sparer
66eccf0032 some minor cleanup and local var renaming in ConnectionList.cs 2016-05-08 10:07:11 -06:00
David Sparer
995daecaff Merge branch 'MR-385_inheritance_settings_lost' into csharp_conv
# Conflicts:
#	mRemoteV1/App/Runtime.cs
#	mRemoteV1/Container/ContainerInfo.cs
2016-05-07 21:43:34 -06:00
Sean Kaim
1757c141fe Settings file changes
change from .config to .settings
Set UpdateAddress to an Application property, not a user property.
2016-05-07 22:31:02 -04:00
David Sparer
45b3f3d56f fixed issue described in MR-385
also made some refactoring changes in a quest to make the code more readable
2016-05-07 17:59:23 -06:00
Sean Kaim
b758b053d5 Added AppSettingsProvider (for non-portable builds) 2016-05-07 17:34:29 -04:00
Sean Kaim
7a3088d553 Fixed a number of complier warnings 2016-05-07 16:47:47 -04:00
Sean Kaim
15e297eef3 Set Code Analysis to MS Managed Recommended
Previously was set to "All" which generates a lot of complier warnings.
2016-05-07 16:26:55 -04:00
Sean Kaim
9476ba6578 target x86 / fixes complier warnings 2016-05-06 22:04:02 -04:00
Sean Kaim
a532120662 fix complier warning 2016-05-06 21:58:29 -04:00
David Sparer
b33f1a988c extracted the code for moving treenodes into its own class 2016-05-06 19:13:00 -06:00
David Sparer
24663a1944 forgot to build to update the csproj file after refactor 2016-05-06 18:29:10 -06:00
David Sparer
983ce80703 massive cleanup of code noise and renamed a few classes for clarity 2016-05-06 18:09:32 -06:00
David Sparer
4f3dbaa7ff Merge branch 'csharp_conv' into MR-385_inheritance_settings_lost 2016-05-06 17:38:00 -06:00
David Sparer
0c93614423 Revert "MR-808 intentionally broke build to test something in Jenkins"
This reverts commit 2060b19e92.
2016-05-06 17:07:21 -06:00
David Sparer
2060b19e92 MR-808 intentionally broke build to test something in Jenkins 2016-05-06 15:54:43 -06:00
David Sparer
cc3fc47cc3 did a bit of extra cleanup for MR-808 2016-05-06 15:42:53 -06:00
David Sparer
dd81a6ea91 Resolved issue by utilizing the correct object cast 2016-05-06 15:24:31 -06:00
Sparer, David
95f59ffb1b Merge branch 'csharp_conv' into MR-385_inheritance_settings_lost 2016-05-06 11:39:37 -06:00
Sparer, David
eaf1eaaee3 removing unit test that hangs 2016-05-06 11:35:35 -06:00
Sparer, David
2ebccbe372 fixed a small bug with the branch name regex 2016-05-06 11:32:06 -06:00
Sparer, David
adc49e61e7 adding Jenkinsfile to branch to enable automatic builds within Jenkins 2016-05-06 11:08:51 -06:00
Sparer, David
58142e70af updated Contributors section. also just pushing this to test jenkins webhooks 2016-05-04 08:51:19 -06:00
David Sparer
bae61f58af Merge pull request #109 from sparerd/MR-385_Inheritance_settings_lost
migrating branch to official repo
2016-05-03 09:24:59 -06:00
Kaim, Sean M
f7ac538f1d prevent exception at startup 2016-05-03 00:02:30 -04:00
Kaim, Sean M
8196e61a2c last fix to ensure loading correct settings file 2016-05-02 23:54:25 -04:00
Kaim, Sean M
403983ac6b addl fix to ensure loading correct settings file 2016-05-02 22:41:14 -04:00
Sean Kaim
f3e2f495d3 Merge pull request #108 from sparerd/csharp_conversion
Initial pull from fork into main repo
2016-05-02 22:02:16 -04:00
Sparer, David
78f7ded7a8 Merge branch 'csharp_conversion' into MR-385_Inheritance_settings_lost 2016-05-02 14:52:29 -06:00
Kaim, Sean M
053d59153e Fix portable settings path and remove some VB calls 2016-05-02 16:09:13 -04:00
Kaim, Sean M
84d849da4c Fix NullReferenceExceptions
Introduced in commit 63e0cd198c
Also performed some code cleanup
2016-05-02 15:58:38 -04:00
Sparer, David
90eba686c7 Quick refactor of the methods for retrieving ConnectionInfo properties (including inherited properties). 2016-05-02 11:50:17 -06:00
hiriumi
5a4d53908d A lof refactoring. There is a problem in PortableSettingsProvider.cs where it doesn't save the config file. We need to address PortableSettingsProvider.SetPropertyValues() method that saves the config file is not called at all. 2016-05-02 00:43:28 -07:00
hiriumi
e76dd18962 Refactoring to make the code more CSharpy and resolving more namespace issues. 2016-05-01 19:41:06 -07:00
hiriumi
071c4537ee Removed Microsoft.VisualBasic reference 2016-05-01 19:01:38 -07:00
hiriumi
e4e92c8b21 Did some refactoring to get some classes in the right namespace and some other adjustment. 2016-05-01 18:37:32 -07:00
hiriumi
43a54cdc76 Merge branch 'csharp_conversion' of https://github.com/mRemoteNG/mRemoteNG.git 2016-05-01 11:06:12 -07:00
hiriumi
c88ad088c0 Jira Item 714. I'm supressing the error to prevent the KeyboardHook from crashing the whole application. I'm not sure if this is the right away, so please review the code.
https://mremoteng.atlassian.net/browse/MR-714
2016-05-01 10:43:05 -07:00
Sean Kaim
f462340ac8 Merge pull request #6 from mRemoteNG/kmscode_rpd_v8
RDP version 8 Client & code clean up
2016-04-29 17:06:18 -04:00
Kaim, Sean M
b0cef15fa2 RDP version 8 Client & code clean up 2016-04-29 17:05:25 -04:00
Sean Kaim
160b0101a9 Merge pull request #3 from mRemoteNG/kmcode_csharp_conv
Remove WTS Sessions panel
2016-04-29 15:16:25 -04:00
Kaim, Sean M
63e0cd198c Correct errors for non-portable build 2016-04-29 12:22:19 -04:00
Kaim, Sean M
8a601b4d00 remove bin and obj files 2016-04-29 11:55:09 -04:00
Kaim, Sean M
ff81202d8a Remove bin and obj files 2016-04-29 11:54:20 -04:00
Kaim, Sean M
eed8df7391 Remove WTS Sessions Panel 2016-04-29 11:47:59 -04:00
Kaim, Sean M
12df1caead Remove WTS Sessions panel 2016-04-29 11:47:35 -04:00
Kaim, Sean M
15a7565cfb Update gitignore 2016-04-29 11:13:33 -04:00
Kaim, Sean M
38f17b05c2 update gitignore 2016-04-29 11:07:23 -04:00
Kaim, Sean M
d4e81daee3 Remove Unused References 2016-04-29 10:59:30 -04:00
Kaim, Sean M
143724f146 update gitignore 2016-04-29 10:54:49 -04:00
hiriumi
a3223d2f01 Fixed options forms. Namespaces are also corrected as well. 2016-04-26 22:52:24 -07:00
David Sparer
9520fbe4a1 re-adding some files lost during the migraton from sparerd/mRemoteNG-1 2016-04-14 01:27:15 -06:00
David Sparer
91bce23a5a Merge pull request #1 from sparerd/c#conversion
C#conversion
2016-04-13 23:06:35 -06:00
Sparer, David
b39b367ef2 absolute mess, but decided on a Strategy pattern for choosing connection protocols 2016-03-16 15:41:24 -06:00
Sparer, David
97736b19cd refactoring Connections subsystem 2016-03-15 15:45:45 -06:00
Sparer, David
a5c6fc9bed Revert "began rewrite of Theme subsystem"
This reverts commit a68bbc7950.
2016-03-15 08:00:07 -06:00
David Sparer
a68bbc7950 began rewrite of Theme subsystem 2016-03-13 21:34:09 -06:00
Sparer, David
40941a3b22 fixes 2016-03-11 12:58:19 -07:00
David Sparer
7ea6902b87 fixes 2016-03-10 18:43:16 -07:00
Sparer, David
7c74d447bc runtime and conversion fixes 2016-03-10 15:35:09 -07:00
Sparer, David
a937d5c4f7 runtime fixes 2016-03-09 15:44:41 -07:00
Sparer, David
2f90496a6e more fixes and cleanup 2016-03-08 15:43:29 -07:00
David Sparer
36fa99cef0 fixes 2016-03-07 18:14:31 -07:00
Sparer, David
eadbb1672f more fixes 2016-03-07 15:41:02 -07:00
David Sparer
eb7fad1054 more fixes 2016-03-06 18:24:44 -07:00
David Sparer
b4b7dc667f more fixes 2016-03-06 18:03:06 -07:00
David Sparer
8fe56722a5 more syntax fixes 2016-03-04 18:10:17 -07:00
Sparer, David
7dfc0643d5 more syntax fixes 2016-03-04 12:49:19 -07:00
David Sparer
b3c2fa1770 more syntax fixing 2016-03-03 19:12:11 -07:00
Sparer, David
4303c452e1 who knows 2016-03-03 15:45:53 -07:00
Sparer, David
6b4f2d3e18 more conversion updates 2016-03-03 15:44:51 -07:00
Sparer, David
f8dfc3c652 began converting project to c# 2016-03-01 15:04:05 -07:00
Sparer, David
21014f2e0e Added postbuild event to enable LargeAddressAware as a workaround for https://mremoteng.atlassian.net/browse/MR-582 2016-02-17 11:39:34 -07:00
Riley McArdle
5835e5f72c Revert "Merge pull request #101 from ozkanpakdil/develop"
This reverts commit 7350e94662, reversing
changes made to 14d1f6cde2.
2014-03-16 13:45:20 -05:00
Andreas Rehm
7350e94662 Merge pull request #101 from ozkanpakdil/develop
multi command for ssh
2014-03-16 16:52:57 +01:00
ozkan.pakdil
d5d2d5bf82 multi command for ssh 2014-03-16 17:44:53 +02:00
Riley McArdle
14d1f6cde2 Add support for importing files from PuTTY Connection Manager. Improve the import and export functionality. 2013-12-17 22:10:24 -06:00
Riley McArdle
9f17b917f7 Change icon for "Full Screen (RDP)" in connection tab context menu. 2013-11-26 16:17:21 -06:00
Riley McArdle
c046b48ee9 Update CHANGELOG.TXT. 2013-11-24 22:21:37 -06:00
Riley McArdle
cb6cf7c01f Move SharedLibraryNG into mRemoteNG solution folder. 2013-11-24 22:18:17 -06:00
Riley McArdle
cd9b07ca0a Update for 1.73 Beta 1. 2013-11-19 20:23:19 -06:00
Riley McArdle
eb435bc6b0 Clean up code and fix possible NullReferenceException in UI.Window.Connection.WndProc(). 2013-11-19 20:18:42 -06:00
Riley McArdle
c9ca613348 Make improvement MR-250 - Show the name of the selected connection tab in the title of the window 2013-11-19 20:16:04 -06:00
Riley McArdle
771855fd07 Fix possible NullReferenceException in ExternalTool.StartIntegrated(). 2013-11-17 21:24:43 -06:00
Riley McArdle
e6967bbc07 Fix variable expansion in external tool filenames. 2013-11-17 21:24:11 -06:00
Riley McArdle
095d8ca719 Update ReSharper abbreviations list. 2013-11-17 21:23:30 -06:00
Riley McArdle
9c089bed37 Code cleanup of external tools. 2013-11-17 21:23:00 -06:00
Riley McArdle
7e94c6f1c9 Fix issue MR-523 - Changes to external tools are not saved until exiting the program 2013-11-17 18:50:14 -06:00
Riley McArdle
df44296ee0 Code cleanup. 2013-11-17 18:37:44 -06:00
Riley McArdle
da42b6f3b2 Fix issue MR-556 - Export fails when overwriting an existing file 2013-11-17 18:37:12 -06:00
Riley McArdle
264756d986 Fix warnings when compiling TestProject. 2013-11-17 18:03:21 -06:00
Riley McArdle
49d9887d03 Fix issue MR-594 - Crash on startup if write access is denied to the IE browser emulation registry key 2013-11-17 18:02:34 -06:00
Riley McArdle
39f22dec4c Add error logging to RemoteDesktopConnectionManager.DecryptPassword(). 2013-11-17 17:49:41 -06:00
Riley McArdle
69befbc97b Code cleanup of Connection.Info. 2013-11-17 17:44:12 -06:00
Riley McArdle
820ed1c457 Fix issue MR-603 - Some configuration options are still shown even when inheritance is enabled 2013-11-17 15:15:35 -06:00
Riley McArdle
c0c6a6dc4b Code cleanup. 2013-11-17 15:01:34 -06:00
Riley McArdle
a410709f92 Add feature MR-512 - Add support for importing files from Remote Desktop Connection Manager 2013-11-17 12:48:40 -06:00
Riley McArdle
3b20e85ff0 Add MR-486 to CHANGELOG.TXT. 2013-11-16 03:19:27 -06:00
Riley McArdle
5d8e7a9fa8 Make improvement MR-419 - Password prompt dialog should have a meaningful window title 2013-11-16 03:09:56 -06:00
Riley McArdle
63ad0760cd Fix issue MR-187 - F7 keyboard shortcut for New Folder conflicts with remote connections 2013-11-16 01:31:10 -06:00
Riley McArdle
2ea29ef8cb Hide UVNC Single Click port setting on advanced options page. 2013-11-16 00:41:31 -06:00
Riley McArdle
f34baa389c Add and improve menu icons. 2013-11-16 00:40:17 -06:00
Riley McArdle
41db2f7fe7 Sort Language.resx. 2013-11-16 00:14:42 -06:00
Riley McArdle
2db04225a7 Add feature MR-212 - Add option to connect without credentials
I have my username/password stored in mRemote, but sometimes i want to
log in as the service account or administrator account for various
reasons. This "new feature" allows you to quickly enter credentials
without changing other settings.
(cherry picked from commit 2ec0cdbc30 by cyclops1982)

Conflicts:
	mRemoteV1/Language/Language.Designer.vb
	mRemoteV1/Language/Language.resx
2013-11-16 00:14:23 -06:00
Riley McArdle
b6004117e6 Improve handling of variables in external tool arguments.
Code cleanup.
2013-11-15 23:27:10 -06:00
Riley McArdle
fd73b28061 Merge branch 'release/1.72' into develop
Conflicts:
	CHANGELOG.TXT
2013-11-13 18:48:43 -06:00
Riley McArdle
da39c03a6f Fix issue MR-592 - Unable to run VBS script as an external tool
Fix issue MR-596 - Incorrect escaping of quotation marks in external tool arguments
2013-11-13 18:20:52 -06:00
Riley McArdle
ba721c9db6 Remove debug message. 2013-11-07 21:02:12 -06:00
Riley McArdle
9b707cf93d Make improvement MR-590 - Make panels docked to the edge of the window keep their size 2013-11-06 02:07:58 -06:00
Riley McArdle
a73b42409f Remove stray trailing colon from SQL Server options page name in some translations. 2013-11-05 04:18:23 -06:00
Riley McArdle
e743b2c699 Refactor options dialog. 2013-11-05 04:10:02 -06:00
Riley McArdle
107c44df88 Merge branch 'release/1.71' into develop
Conflicts:
	CHANGELOG.TXT
2013-11-04 03:44:13 -06:00
Riley McArdle
5e19c420e7 Add feature MR-16 - Add keyboard shortcuts to switch between tabs
Add feature MR-557 - Add Hotkeys to Tabs / Subtabs
2013-11-04 02:41:16 -06:00
Riley McArdle
2f55324708 Continue implementing keyboard options page. 2013-10-31 07:00:48 -05:00
Riley McArdle
6cc6c34c4b Create KeyboardShortcuts class to manage keyboard shortcuts. 2013-10-30 06:28:23 -05:00
Riley McArdle
539a0198f3 Improve control focus behavior of options dialog. 2013-10-28 09:13:13 -05:00
Riley McArdle
9beebac7fc Set AcceptButton for options dialog. 2013-10-28 09:12:42 -05:00
Riley McArdle
50567fd967 Improve options dialog. Start implementing keyboard options page. 2013-10-28 09:06:10 -05:00
Riley McArdle
3ee004ce4e Code cleanup. 2013-10-28 01:42:43 -05:00
Riley McArdle
a58fd7559c Code cleanup. 2013-10-28 01:39:43 -05:00
Riley McArdle
73d738887a Merge branch 'develop' into feature/hotkeys
Conflicts:
	CHANGELOG.TXT
2013-10-28 01:25:38 -05:00
Riley McArdle
e96199dc37 Change XmingProvider to include sessions from the registry. 2013-10-28 01:14:59 -05:00
Riley McArdle
f5cde10d62 Fix merge error. 2013-10-28 01:06:36 -05:00
Riley McArdle
1d5df08e78 Merge branch 'release/1.71' into develop 2013-10-28 00:03:12 -05:00
Riley McArdle
1c33494547 Update version number to 1.72. 2013-10-27 01:54:48 -05:00
Riley McArdle
4acaefe9c3 Add "Reset" to config panel context menu to allow resetting some config settings to their default value.
Fix config panel showing settings from previously loaded connection file after loading a new one.
Code cleanup.
2013-10-27 01:53:24 -05:00
Riley McArdle
8c3f4c06df Add feature MR-547 - Add support for Xming Portable PuTTY 2013-10-27 01:40:32 -05:00
Riley McArdle
ed589f4b51 Merge branch 'release/1.71' into develop
Conflicts:
	CHANGELOG.TXT
2013-10-25 01:03:54 -05:00
Riley McArdle
8c61e95a5b Reword CHANGELOG.TXT. 2013-10-21 20:43:21 -05:00
Riley McArdle
a6fa6e19d0 Fix PuTTY Saved Sessions still showing if all saved sessions are removed 2013-10-21 20:38:39 -05:00
Riley McArdle
8273bdf70f Remove invalid "Site" configuration option from PuTTY Saved Sessions 2013-10-21 18:55:59 -05:00
Riley McArdle
5267de8b87 Merge branch 'release/1.71' into develop
Conflicts:
	CHANGELOG.TXT
2013-10-16 17:21:49 -05:00
Riley McArdle
6036a792e5 Merge branch 'release/1.71' into develop
Conflicts:
	CHANGELOG.TXT
2013-10-14 22:55:53 -05:00
Riley McArdle
1341db0812 Change namespace of HotkeyControl. 2013-10-06 22:31:50 -05:00
Riley McArdle
c16a4134c7 Merge branch 'develop' into feature/hotkeys
Conflicts:
	CHANGELOG.TXT
2013-10-06 21:36:04 -05:00
Riley McArdle
771047ddd7 Merge branch 'release/1.71' into feature/hotkeys 2013-10-06 21:33:03 -05:00
Riley McArdle
718d67f20c Fix misleading log messages about RD Gateway support. 2013-10-06 21:32:12 -05:00
Riley McArdle
d18a510310 Fix issue MR-141 - Add a default protocol option
Fix issue MR-367 - Make the 'Connect' button on the 'Quick Connect' toolbar a forced dropdown
2013-10-06 20:30:38 -05:00
Riley McArdle
3a3da1c6f1 Continue adding support for hotkeys to switch tabs. 2013-10-03 20:56:56 -05:00
Riley McArdle
00647e4963 Start adding support for hotkeys to switch tabs. 2013-10-01 23:27:22 -05:00
1125 changed files with 133392 additions and 46243 deletions

58
.github/CONTRIBUTING.md vendored Normal file
View File

@@ -0,0 +1,58 @@
# Welcome!
We are really glad you are interested in contributing to mRemoteNG!
Open source software is best when shared with others. This also applies to the work that goes into the software. Your ideas and passion are what make this software great.
### Ways you can contribute
There are many ways that you can help improve mRemoteNG, even if you don't know how to program.
For example, you might:
- add documentation or "how-to" articles on the [Wiki](https://github.com/mRemoteNG/mRemoteNG/wiki)
- answer support questions on the [forum](http://forum.mremoteng.org)
- [add or improve a translation](https://github.com/mRemoteNG/mRemoteNG/wiki/How-to-Help-Translating-mRemoteNG)
- submit a [pull request](https://github.com/mRemoteNG/mRemoteNG/pulls) for a [bug or feature ticket](https://github.com/mRemoteNG/mRemoteNG/issues)
# Submitting GitHub Issues
The GitHub Issue tracker is our preferred channel for bug reports and feature requests.
- For questions or general discussion, please use [our public Gitter chat](https://gitter.im/mRemoteNG/PublicChat) or the [forum](http://forum.mremoteng.org).
- If you find a security vulnerability, do **NOT** open an issue. Email support@mremoteng.org instead.
### Bug reports
A bug is any behavior that does not consistently produce the expected result.
Guidelines for bug reports:
1. Do not open bug reports for questions.
1. Use the GitHub Issue search to make sure your bug hasn't already been reported.
1. Include as much detailed information as possible. We've included a default template when opening an issue to make this easier.
### Feature requests
Feature requests are great! Take some time to compose a well thought out proposal. It's up to you to convince the project maintainers that your feature is a good idea. To ensure your request receives the consideration that it deserves, include as much detail as possible. For example:
- What is the purpose of the new feature?
- What situation led you to want this feature?
- How does the application perform now and how would the new feature change this?
- If applicable, consider including visual mock-ups to show us what you mean.
# Pull requests
Good pull requests are a huge help! If you haven't already, please consider reading [GitHub's guide to contributing to open source](https://guides.github.com/activities/contributing-to-open-source/)
Our requests when it comes to pull requests:
- Be clear about what your PR seeks to do.
- Keep your PR focused. It should be clear what code changed to achieve your stated goal.
- Add or update tests when possible. Some of the code base is still very hard to effectively test. If you can, please try to create or update tests that relate to your PR.
- Please talk with one of the project maintainers before starting work on large pull requests. Otherwise, you run the risk of putting a lot of time into a feature or refactor that gets denied.
- If you have access to Static Code Analysis tools (like ReSharper), please don't analyze/fix everything in one giant PR. As great as these tools are, they can sometimes cause unintended problems.
# Code Style
- Please make use of simple types and var where possible
- Prefer "using" over .Dispose()
- Avoid nesting "using"
# Your first contributions
Want to help but don't know where to start? Check out the issues that we've labeled with [`Help Wanted`](https://github.com/mRemoteNG/mRemoteNG/issues?q=is%3Aissue+is%3Aopen+label%3A%22Help+Wanted%22) or [`ready`](https://github.com/mRemoteNG/mRemoteNG/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3A%22ready%22). These will vary in difficulty, but should be possible for new contributors.
Want to help but don't know C#? Check out the issues that we've labeled with [`Documentation`](https://github.com/mRemoteNG/mRemoteNG/labels/Documentation).
Sorry, we currently do not have any tags for truly beginner-friendly issues :(

30
.github/ISSUE_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,30 @@
<!--- Provide a general summary of the issue in the Title above -->
## Expected Behavior
<!--- If you're describing a bug, tell us what should happen -->
<!--- If you're suggesting a change/improvement, tell us how it should work -->
## Current Behavior
<!--- If describing a bug, tell us what happens instead of the expected behavior -->
<!--- If suggesting a change/improvement, explain the difference from current behavior -->
## Possible Solution
<!--- Not obligatory, but suggest a fix/reason for the bug, -->
<!--- or ideas how to implement the addition or change -->
## Steps to Reproduce (for bugs)
<!--- Provide an unambiguous set of steps to reproduce -->
<!--- this bug. Include code to reproduce, if relevant -->
1.
2.
3.
4.
## Context
<!--- How has this issue affected you? What are you trying to accomplish? -->
<!--- Providing context helps us come up with a solution that is most useful in the real world -->
## Your Environment
<!--- Include as many relevant details about the environment you experienced the bug in -->
* Version used:
* Operating System and version (e.g. Windows 10 1709 x64):

29
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,29 @@
<!--- Provide a general summary of your changes in the Title above -->
## Description
<!--- Describe your changes in detail -->
## Motivation and Context
<!--- Why is this change required? What problem does it solve? -->
<!--- If it fixes an open issue, please link to the issue here. -->
## How Has This Been Tested?
<!--- Please describe in detail how you tested your changes. -->
<!--- Include details of your testing environment, and the tests you ran to -->
<!--- see how your change affects other areas of the code, etc. -->
## Screenshots (if appropriate):
## Types of changes
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
## Checklist:
<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have read the **CONTRIBUTING** document.

BIN
.github/icon_ReSharper.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

281
.gitignore vendored
View File

@@ -1,16 +1,13 @@
Release/
mRemoteV1/bin/
mRemoteV1/obj/
mRemoteV1/publish/
**/bin/
**/obj/
**/[Rr]elease [Pp]ortable/
**/[Dd]ebug [Pp]ortable/
*.pfx
*.suo
*.vbproj.user
Thumbs.db
[Dd]ebug/
_Re[Ss]harper.*
*.resharper
*.resharper.user
*.suo
*.cache
*~
*.swp
@@ -24,3 +21,271 @@ UpgradeLog.XML
*.sdf
*.opensdf
*.ipch
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/
# Visual Studio 2015 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
# NUNIT
*.VisualState.xml
TestResult.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
# DNX
project.lock.json
artifacts/
*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
# Chutzpah Test files
_Chutzpah*
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb
# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap
# TFS 2012 Local Workspace
$tf/
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
# JustCode is a .NET coding add-in
.JustCode
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
# MightyMoose
*.mm.*
AutoTest.Net/
# Web workbench (sass)
.sass-cache/
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# TODO: Comment the next line if you want to checkin your web deploy settings
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj
# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/
# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/packages/*
# except build/, which is used as an MSBuild target.
!**/packages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/packages/repositories.config
# NuGet v3's project.json files produces more ignoreable files
*.nuget.props
*.nuget.targets
# Microsoft Azure Build Output
csx/
*.build.csdef
# Microsoft Azure Emulator
ecf/
rcf/
# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/
# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.pfx
*.publishsettings
node_modules/
orleans.codegen.cs
# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
# SQL Server files
*.mdf
*.ldf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
# Microsoft Fakes
FakesAssemblies/
# GhostDoc plugin setting file
*.GhostDoc.xml
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
# Visual Studio 6 build log
*.plg
# Visual Studio 6 workspace options file
*.opt
# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions
# Paket dependency manager
.paket/paket.exe
paket-files/
# FAKE - F# Make
.fake/
# JetBrains Rider
.idea/
*.sln.iml
*.msi
Installer/Resources/License.rtf
Installer/Fragments/FilesFragment.wxs
Installer Projects/Installer/Resources/License.rtf
Installer Projects/Installer/Fragments/FilesFragment.wxs
Installer Projects/Installer/Fragments/HelpFilesFragment.wxs
InstallerProjects/Installer/Fragments/FilesFragment.wxs
InstallerProjects/Installer/Resources/License.rtf
# user preference: .editorconfig - http://editorconfig.org/
.editorconfig
# gh-pages info
runlocal.bat
/_site

File diff suppressed because it is too large Load Diff

View File

@@ -1,16 +1,49 @@
Contributors
============
Current mRemoteNG dev team:
David Sparer (github.com/sparerd)
Sean Kaim (github.com/kmscode)
Thanks for the awesome new website!
Bennett Blodinger (github.com/benwa)
Joe Cefoli (github.com/jcefoli)
countchappy (github.com/countchappy)
Tony Lambert
Julien Roncaglia (github.com/vbfox)
github.com/peterchenadded
Brandon Wulf (github.com/mrwulf)
Pedro Rodrigues (github.com/pedro2555)
github.com/dekelMP
github.com/farosch
Bruce (github.com/brucetp)
Camilo Alvarez (github.com/jotatsu)
github.com/DamianBis
github.com/pfjason
github.com/sirLoaf
github.com/Fyers
Vladimir Semenov (github.com/sli-pro)
Past Contributors
=================
Felix Deimel - mRemote original developer
Riley McArdle - mRemoteNG original developer
Hayato Iriumi (github.com/hiriumi)
Jason Barbier
Wiktor Beryt
Lionel Caignec
Felix Deimel
Ruben d'Arco
Holger Henke
Tom Hiller
Riley McArdle
Apisitt Rattana
Andreas Rehm
David Vidmar
github.com/Brandhor
github.com/Kvarkas
Translators
@@ -20,103 +53,91 @@ Eugenio "Ryo567" Mart
Mathieu Pape
Emanuel Silva
Robert Siwiec
Hayato Iriumi
Sebastien Thieury (github.com/SebThieu)
Riza Emet
Lukas Plachy (github.com/rheingold)
Gyuha Shin
Stefan (github.com/polluks)
github.com/emazv72
Vladimir Semenov (github.com/sli-pro)
Marco Sousa (github.com/marcomsousa)
Included Source Code
====================
Command Line Arguments Parser 1.0
Command Line Arguments Parser
Copyright <20> 2002 Richard Lopes
MIT License
http://www.codeproject.com/KB/recipes/command_line.aspx
DotNetVer
Copyright <20> 2010 David Grinberg
Copyright <20> 2010-2011 Brandon Hansen
http://nsis.sourceforge.net/DotNetVer
FilteredPropertyGrid
Copyright <20> 2006 Azuria
http://www.codeproject.com/KB/cs/FilteredPropertyGrid.aspx
InputBox
Copyright <20> 2016 Jan Slama
http://www.csharp-examples.net/inputbox/
IP TextBox
Copyright <20> 2005 mawnkay
http://www.codeproject.com/Articles/11576/IP-TextBox
PortableSettingsProvider
Copyright <20> 2014 crdx
https://github.com/crdx/PortableSettingsProvider
Included Components
===================
ADTree 1.0
ADTree
Copyright <20> 2004 Marc Merritt
Copyright <20> 2008 Felix Deimel
http://www.codeproject.com/KB/selection/ADPickerCtrl.aspx
DiffieHellman 1.0
Copyright <20> 2003 The Mentalis.org Team
Modified New BSD License
http://www.mentalis.org/
DockPanel Suite 2.3.1
Copyright <20> 2007 Weifen Luo
DockPanel Suite
Copyright <20> 2016 @roken and @lextm (formerly Weifen Luo)
MIT License
http://sourceforge.net/projects/dockpanelsuite/
https://github.com/dockpanelsuite/dockpanelsuite
Emergent OnLine WTSCOM 2.0.6.0
Copyright <20> 2001-2003 Emergent OnLine
http://www.go-eol.com/
GeckoFX
Copyright <20> 2016 Tom Hindle
Mozilla Public License
https://bitbucket.org/geckofx/
FilteredPropertyGrid 1.0.0.0
Copyright <20> 2006 Azuria
http://www.codeproject.com/KB/cs/FilteredPropertyGrid.aspx
GeckoFX 1.8.1.4
Copyright <20> 2008 Skybound Software
Mozilla Public License 1.1
http://www.geckofx.org/
IPTextBox 1.1
Copyright <20> 2006 Matthew Kleinwaks
Copyright <20> 2008 Felix Deimel
http://www.vbforums.com/showthread.php?t=430169
log4net 1.2.10.0
Copyright <20> 2001-2006 The Apache Software Foundation
log4net
Copyright <20> 2001-2015 The Apache Software Foundation
Apache License Version 2.0
http://logging.apache.org/log4net/
Magic Library 1.7.4
Magic Library
Copyright <20> 2002-2003 Crownwood Consulting, Ltd.
Freely redistributable with attribution
http://www.dotnetmagic.com/magic_download.html
Mentalis.org Security Library 1.0.13.715
Copyright <20> 2002-2005 The Mentalis.org Team
Modified New BSD License
http://www.mentalis.org/
MiniGeckoBrowser 1.0
Copyright <20> 2008 Felix Deimel
http://www.appjuice.org/
MiniTabControl 1.0
Copyright <20> 2008 Felix Deimel
http://www.appjuice.org/
PuTTY 0.62
Copyright <20> 1997-2011 Simon Tatham
PuTTY
Copyright <20> 1997-2017 Simon Tatham
MIT License
http://www.chiark.greenend.org.uk/~sgtatham/putty/
SharpSSH 1.1.1.13
Copyright <20> 2002-2008 Atsuhiko Yamanaka, JCraft, Inc.
Copyright <20> 2007 Tamir Gal
BSD Style License
http://www.tamirgal.com/blog/page/SharpSSH.aspx
Silk Icon Set
Copyright <20> 2005-2008 FAMFAMFAM
Creative Commons Attribution 2.5 License
http://www.famfamfam.com/
Vista TaskDialog Wrapper and Emulator 1.0
Copyright <20> 2007-2009 Hedley Muscroft
Code Project Open License (CPOL)
http://www.codeproject.com/KB/vista/Vista_TaskDialog_Wrapper.aspx
SSH.NET
Copyright <20> 2016
MIT License
https://github.com/sshnet/SSH.NET
VncSharp 1.0
VncSharp
Copyright <20> 2004-2009 David Humphrey
GNU General Public License (GPL) Version 2
http://cdot.senecac.on.ca/projects/vncsharp/
https://github.com/humphd/VncSharp
ObjectListView
Copyright <20> 2006-2016 Phillip Piper
GNU General Public License (GPL) Version 3
https://sourceforge.net/projects/objectlistview/

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,296 +0,0 @@
; ---------------------
; DotNetVer.nsh
; Written by: David Grinberg
; Homepage: http://ontheperiphery.veraida.com/
; Updated By: Brandon Hansen (http://www.remotehams.com/)
; ---------------------
;
; LogicLib extensions for checking Microsoft .NET Framework versions and service packs.
;
; Latests Updates by Brandon Hansen, KG6YPI (RemoteHams.com)
; Dec 26, 2011 - .NET Framework 4.0 detection fixes - client profile not being found
; Dec 07, 2010 - .NET Framework 4.0 detection added by Brandon Hansen (KG6YPI)
;
; Usage examples:
;
; ${If} ${HasDotNet4.0}
; DetailPrint "Microsoft .NET Framework 4.0 installed."
; ${If} ${DOTNETVER_4_0} AtLeastDotNetServicePack 1
; DetailPrint "Microsoft .NET Framework 4.0 is at least SP1."
; ${Else}
; DetailPrint "Microsoft .NET Framework 4.0 SP1 not installed."
; ${EndIf}
; ${If} ${DOTNETVER_4_0} HasDotNetClientProfile 1
; DetailPrint "Microsoft .NET Framework 4.0 (Client Profile) available."
; ${EndIf}
; ${If} ${DOTNETVER_4_0} HasDotNetFullProfile 1
; DetailPrint "Microsoft .NET Framework 4.0 (Full Profile) available."
; ${EndIf}
; ${If} ${DOTNETVER_4_0} HasDotNetFullProfile 0
; DetailPrint "Microsoft .NET Framework 4.0 (Full Profile) not available."
; ${EndIf}
; ${EndIf}
!verbose push
!verbose 3
!ifndef ___DOTNETVER__NSH___
!define ___DOTNETVER__NSH___
!include LogicLib.nsh
!include Util.nsh
# constants
!define DOTNETVER_1_0 "1.0"
!define DOTNETVER_1_1 "1.1"
!define DOTNETVER_2_0 "2.0"
!define DOTNETVER_3_0 "3.0"
!define DOTNETVER_3_5 "3.5"
!define DOTNETVER_4_0 "4.0"
# variable declaration
Var /GLOBAL __DONTNET_FOUNDVER
!macro __DotNetVer_DeclareVars
!ifndef __DOTNETVER_VARS_DECLARED
!define __DOTNETVER_VARS_DECLARED
Var /GLOBAL __DOTNET_1.0
Var /GLOBAL __DOTNET_1.1
Var /GLOBAL __DOTNET_2.0
Var /GLOBAL __DOTNET_3.0
Var /GLOBAL __DOTNET_3.5
Var /GLOBAL __DOTNET_4.0
Var /GLOBAL __DOTNETVER_1.0_SP
Var /GLOBAL __DOTNETVER_1.1_SP
Var /GLOBAL __DOTNETVER_2.0_SP
Var /GLOBAL __DOTNETVER_3.0_SP
Var /GLOBAL __DOTNETVER_3.5_SP
Var /GLOBAL __DOTNETVER_4.0_SP
Var /GLOBAL __DOTNET_1.0_CLIENT
Var /GLOBAL __DOTNET_1.1_CLIENT
Var /GLOBAL __DOTNET_2.0_CLIENT
Var /GLOBAL __DOTNET_3.0_CLIENT
Var /GLOBAL __DOTNET_3.5_CLIENT
Var /GLOBAL __DOTNET_4.0_CLIENT
Var /GLOBAL __DOTNET_1.0_FULL
Var /GLOBAL __DOTNET_1.1_FULL
Var /GLOBAL __DOTNET_2.0_FULL
Var /GLOBAL __DOTNET_3.0_FULL
Var /GLOBAL __DOTNET_3.5_FULL
Var /GLOBAL __DOTNET_4.0_FULL
StrCpy $__DOTNET_1.0 0
StrCpy $__DOTNET_1.1 0
StrCpy $__DOTNET_2.0 0
StrCpy $__DOTNET_3.0 0
StrCpy $__DOTNET_3.5 0
StrCpy $__DOTNET_4.0 0
StrCpy $__DOTNETVER_1.0_SP 0
StrCpy $__DOTNETVER_1.1_SP 0
StrCpy $__DOTNETVER_2.0_SP 0
StrCpy $__DOTNETVER_3.0_SP 0
StrCpy $__DOTNETVER_3.5_SP 0
StrCpy $__DOTNETVER_4.0_SP 0
StrCpy $__DOTNET_1.0_CLIENT 0
StrCpy $__DOTNET_1.1_CLIENT 0
StrCpy $__DOTNET_2.0_CLIENT 0
StrCpy $__DOTNET_3.0_CLIENT 0
StrCpy $__DOTNET_3.5_CLIENT 0
StrCpy $__DOTNET_4.0_CLIENT 0
StrCpy $__DOTNET_1.0_FULL 0
StrCpy $__DOTNET_1.1_FULL 0
StrCpy $__DOTNET_2.0_FULL 0
StrCpy $__DOTNET_3.0_FULL 0
StrCpy $__DOTNET_3.5_FULL 0
StrCpy $__DOTNET_4.0_FULL 0
!endif
!macroend
# lazy initialization macro
!macro __DotNetVer_InitVars
# only calculate version once
StrCmp $__DONTNET_FOUNDVER "" dotnetver.noveryet
Return
dotnetver.noveryet:
!insertmacro __DotNetVer_DeclareVars
Push $0 ;registry count
Push $1 ;registry key
Push $2 ;version number
Push $3 ;installed
Push $4 ;service pack number
Push $8 ;strLen helper var
StrCpy $0 0
dotnetver.startenum:
EnumRegKey $1 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP" $0
StrCmp $1 "" dotnetver.done
IntOp $0 $0 + 1
StrCpy $2 $1 1 0
StrCmp $2 "v" +1 dotnetver.startenum
StrCpy $2 $1 3 1
; Check for .NET 1.0 to 3.5
ReadRegDWORD $3 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\$1" "Install"
ReadRegDWORD $4 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\$1" "SP"
IntCmp $3 1 dotnetcheck.skipalt
; Alternate check for versions that don't set the Install key
ReadRegDWORD $3 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\$1\Setup" "InstallSuccess"
dotnetcheck.skipalt:
; This is a sanity check that works on .NET 1.0 to 3.5
; if it fails check for dotnet 4
IntCmp $3 0 dotnetcheck.40
StrCmp $2 ${DOTNETVER_1_0} dotnetver.10
StrCmp $2 ${DOTNETVER_1_1} dotnetver.11
StrCmp $2 ${DOTNETVER_2_0} dotnetver.20
StrCmp $2 ${DOTNETVER_3_0} dotnetver.30
StrCmp $2 ${DOTNETVER_3_5} dotnetver.35
dotnetcheck.40:
StrCmp $2 ${DOTNETVER_4_0} dotnetver.40
StrCmp $2 "4" dotnetver.40
Goto dotnetver.startenum
dotnetver.10:
StrCpy $__DOTNET_1.0 1
StrCpy $__DOTNETVER_1.0_SP $4
StrCpy $__DOTNET_1.0_FULL 1
Goto dotnetver.startenum
dotnetver.11:
StrCpy $__DOTNET_1.1 1
StrCpy $__DOTNETVER_1.1_SP $4
StrCpy $__DOTNET_1.1_FULL 1
Goto dotnetver.startenum
dotnetver.20:
StrCpy $__DOTNET_2.0 1
StrCpy $__DOTNETVER_2.0_SP $4
StrCpy $__DOTNET_2.0_FULL 1
Goto dotnetver.startenum
dotnetver.30:
StrCpy $__DOTNET_3.0 1
StrCpy $__DOTNETVER_3.0_SP $4
StrCpy $__DOTNET_3.0_FULL 1
Goto dotnetver.startenum
dotnetver.35:
StrCpy $__DOTNET_3.5 1
StrCpy $__DOTNETVER_3.5_SP $4
StrCpy $__DOTNET_3.5_FULL 1
Goto dotnetver.startenum
dotnetver.40:
; Check for .NET 4.0 (Full Profile)
ReadRegDWORD $3 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" "Install"
ReadRegDWORD $4 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" "SP"
StrLen $8 $3
IntCmp $8 0 dotnetcheck.40c
IntCmp $3 0 dotnetcheck.40c
StrCmp $2 ${DOTNETVER_4_0} dotnetver.40_Full
StrCmp $2 "4" dotnetver.40_Full
dotnetcheck.40c:
; Check for .NET 4.0 (Client Profile)
ReadRegDWORD $3 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client" "Install"
ReadRegDWORD $4 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client" "SP"
StrLen $8 $3
IntCmp $8 0 dotnetver.startenum
IntCmp $3 0 dotnetver.startenum
StrCmp $2 ${DOTNETVER_4_0} dotnetver.40_Client
StrCmp $2 "4" dotnetver.40_Client
Goto dotnetver.startenum
dotnetver.40_Full:
StrCpy $__DOTNET_4.0 1
StrCpy $__DOTNETVER_4.0_SP $4
StrCpy $__DOTNET_4.0_FULL 1
Goto dotnetcheck.40c ; continue looking for other profiles
dotnetver.40_Client:
StrCpy $__DOTNET_4.0 1
StrCpy $__DOTNETVER_4.0_SP $4
StrCpy $__DOTNET_4.0_CLIENT 1
Goto dotnetver.startenum
dotnetver.done:
StrCpy $__DONTNET_FOUNDVER "1"
Pop $8
Pop $4
Pop $3
Pop $2
Pop $1
Pop $0
!macroend
!macro _HasDotNet _a _b _t _f
${CallArtificialFunction} __DotNetVer_InitVars
!insertmacro _= `$__DOTNET_${_b}` `1` `${_t}` `${_f}`
!macroend
!macro __DotNetVer_DefineTest Ver
!define HasDotNet${Ver} `"" HasDotNet ${Ver}`
!macroend
!insertmacro __DotNetVer_DefineTest ${DOTNETVER_1_0}
!insertmacro __DotNetVer_DefineTest ${DOTNETVER_1_1}
!insertmacro __DotNetVer_DefineTest ${DOTNETVER_2_0}
!insertmacro __DotNetVer_DefineTest ${DOTNETVER_3_0}
!insertmacro __DotNetVer_DefineTest ${DOTNETVER_3_5}
!insertmacro __DotNetVer_DefineTest ${DOTNETVER_4_0}
!macro _AtLeastDotNetServicePack _a _b _t _f
${CallArtificialFunction} __DotNetVer_InitVars
!insertmacro _>= `$__DOTNETVER_${_a}_SP` `${_b}` `${_t}` `${_f}`
!macroend
!define AtLeastDotNetServicePack `AtLeastDotNetServicePack`
!macro _AtMostDotNetServicePack _a _b _t _f
${CallArtificialFunction} __DotNetVer_InitVars
!insertmacro _<= `$__DOTNETVER_${_a}_SP` `${_b}` `${_t}` `${_f}`
!macroend
!define AtMostDotNetServicePack `AtMostDotNetServicePack`
!macro _IsDotNetServicePack _a _b _t _f
${CallArtificialFunction} __DotNetVer_InitVars
!insertmacro _= `$__DOTNETVER_${_a}_SP` `${_b}` `${_t}` `${_f}`
!macroend
!define IsDotNetServicePack `IsDotNetServicePack`
!macro _HasDotNetClientProfile _a _b _t _f
${CallArtificialFunction} __DotNetVer_InitVars
!insertmacro _= `$__DOTNET_${_a}_CLIENT` `${_b}` `${_t}` `${_f}`
!macroend
!define HasDotNetClientProfile `HasDotNetClientProfile`
!macro _HasDotNetFullProfile _a _b _t _f
${CallArtificialFunction} __DotNetVer_InitVars
!insertmacro _= `$__DOTNET_${_a}_FULL` `${_b}` `${_t}` `${_f}`
!macroend
!define HasDotNetFullProfile `HasDotNetFullProfile`
# done
!endif # !___DOTNETVER__NSH___
!verbose pop

View File

@@ -1,22 +0,0 @@
; 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 3.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

@@ -1,22 +0,0 @@
; 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 3.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

@@ -1,22 +0,0 @@
; 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 3.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

@@ -1,22 +0,0 @@
; 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 3.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

@@ -1,22 +0,0 @@
; 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 3.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

@@ -1,31 +0,0 @@
!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

@@ -1,22 +0,0 @@
; 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 3.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

@@ -1,22 +0,0 @@
; Spanish installer translation
; Start mRemoteNG after installation
LangString LaunchMremoteNow ${LANG_SPANISH} "Iniciando de mRemoteNG"
; Installer Language
LangString InstallerLanguage ${LANG_SPANISH} "Lenguaje de Instalación"
; Select installer Language
LangString SelectInstallerLanguage ${LANG_SPANISH} "Seleccione el lenguaje de instalación"
; Requires .NET Framework
LangString RequiresNetFramework ${LANG_SPANISH} "mRemoteNG requiere Microsoft .NET Framework 3.0."
; User needs to be Admin
LangString RequiresAdminUser ${LANG_SPANISH} "Debe ser miembro del grupo 'Administradores' para poder instalar mRemoteNG."
; Start Menu items
LangString CreditsLinkName ${LANG_SPANISH} "Créditos"
LangString CopyingLinkName ${LANG_SPANISH} "Licencia"
LangString UninstallLinkName ${LANG_SPANISH} "Desinstalar"
LangString ChangeLogLinkName ${LANG_SPANISH} "Historial de Versiones"

View File

@@ -1,23 +0,0 @@
; 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 3.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"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

View File

@@ -1,197 +0,0 @@
!include "MUI.nsh"
!include "WordFunc.nsh"
!insertmacro VersionCompare
!include "DotNetVer.nsh"
!include "..\Release\Version.nsh"
; 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
; Basic Config
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}
VIAddVersionKey "CompanyName" "Next Generation Software"
VIAddVersionKey "ProductName" "mRemoteNG"
VIAddVersionKey "ProductVersion" ${PRODUCT_VERSION}
VIAddVersionKey "LegalCopyright" "Copyright © 2007-2009 Felix Deimel, 2010-2013 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
!define MUI_HEADERIMAGE_UNBITMAP "header.bmp" ; optional
!define MUI_HEADERIMAGE_UNBITMAP_NOSTRETCH
!define MUI_HEADER_TRANSPARENT_TEXT
!define MUI_WELCOMEFINISHPAGE_BITMAP "welcomefinish.bmp"
!define MUI_WELCOMEFINISHPAGE_BITMAP_NOSTRETCH
!define MUI_UNWELCOMEFINISHPAGE_BITMAP "welcomefinish.bmp"
!define MUI_UNWELCOMEFINISHPAGE_BITMAP_NOSTRETCH
; Install Pages
!insertmacro MUI_PAGE_LICENSE "..\COPYING.TXT"
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!define MUI_FINISHPAGE_NOAUTOCLOSE
; Finish Page
!define MUI_FINISHPAGE_RUN_NOTCHECKED
!define MUI_FINISHPAGE_RUN "$INSTDIR\mRemoteNG.exe"
!insertmacro MUI_PAGE_FINISH
; Uninstall Pages
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
; 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
IfSilent +2
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
${IfNot} ${HasDotNet3.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\*.*"
File "..\*.txt"
; Uninstaller
WriteUninstaller "$INSTDIR\Uninstall.exe"
; Register ActiveX components
RegDLL "$INSTDIR\eolwtscom.dll"
; 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\$(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" "Next Generation Software"
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "DisplayIcon" "$INSTDIR\mRemoteNG.exe"
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}
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "VersionMinor" ${PRODUCT_VERSION_MINOR}
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "UninstallString" '"$INSTDIR\Uninstall.exe"'
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "NoModify" 1
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG" "NoRepair" 1
SectionEnd
Section "un.Uninstall"
; Unregister ActiveX components
UnregDLL "$INSTDIR\eolwtscom.dll"
; Delete Files
RMDIR /r $INSTDIR
; Start Menu
SetShellVarContext all
RMDir /r "$SMPROGRAMS\mRemoteNG"
SetShellVarContext current
RMDir /r "$SMPROGRAMS\mRemoteNG"
; Registry
DeleteRegValue HKLM "Software\mRemoteNG" "InstallPath"
DeleteRegKey /ifempty HKLM "Software\mRemoteNG"
DeleteRegKey /ifempty HKCU "Software\mRemoteNG"
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\mRemoteNG"
SectionEnd

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<!--
Use supportedRuntime tags to explicitly specify the version(s) of the .NET Framework runtime that
the custom action should run on. If no versions are specified, the chosen version of the runtime
will be the "best" match to what Microsoft.Deployment.WindowsInstaller.dll was built against.
WARNING: leaving the version unspecified is dangerous as it introduces a risk of compatibility
problems with future versions of the .NET Framework runtime. It is highly recommended that you specify
only the version(s) of the .NET Framework runtime that you have tested against.
Note for .NET Framework v3.0 and v3.5, the runtime version is still v2.0.
In order to enable .NET Framework version 2.0 runtime activation policy, which is to load all assemblies
by using the latest supported runtime, @useLegacyV2RuntimeActivationPolicy="true".
For more information, see http://msdn.microsoft.com/en-us/library/bbx34a2h.aspx
-->
<supportedRuntime version="v4.0" />
<supportedRuntime version="v2.0.50727"/>
</startup>
<!--
Add additional configuration settings here. For more information on application config files,
see http://msdn.microsoft.com/en-us/library/kza1yk3a.aspx
-->
</configuration>

View File

@@ -0,0 +1,56 @@
using Microsoft.Deployment.WindowsInstaller;
namespace CustomActions
{
public class CustomActions
{
[CustomAction]
public static ActionResult IsMinimumRdpVersionInstalled(Session session)
{
var acceptedRdpKbVariables = new[] { session["RDP80_KB"], session["RDP81_KB"] };
var returnVariable = "MINIMUM_RDP_VERSION_INSTALLED";
var kbInstalledChecker = new KbInstalledChecker(session);
kbInstalledChecker.Execute(acceptedRdpKbVariables, returnVariable);
return ActionResult.Success;
}
[CustomAction]
public static ActionResult IsRdpDtlsUpdateInstalled(Session session)
{
var kb = session["RDP_DTLS_KB"];
var returnVar = "RDP_DTLS_UPDATE_INSTALLED";
var kbInstalledChecker = new KbInstalledChecker(session);
kbInstalledChecker.Execute(kb, returnVar);
return ActionResult.Success;
}
[CustomAction]
public static ActionResult IsLegacyVersionInstalled(Session session)
{
session.Log("Begin IsLegacyVersionInstalled");
var uninstaller = new UninstallNsisVersions();
if (uninstaller.IsLegacymRemoteNgInstalled())
{
session["LEGACYVERSIONINSTALLED"] = "1";
}
else
{
session["LEGACYVERSIONINSTALLED"] = "0";
}
session.Log("End IsLegacyVersionInstalled");
return ActionResult.Success;
}
[CustomAction]
public static ActionResult UninstallLegacyVersion(Session session)
{
session.Log("Begin UninstallLegacyVersion");
var uninstaller = new UninstallNsisVersions();
uninstaller.GetLegacyUninstallString();
uninstaller.UninstallLegacyVersion(true);
session.Log("End UninstallLegacyVersion");
return ActionResult.Success;
}
}
}

View File

@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{5423D985-CB48-4344-B47F-E8C6D60C8B04}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>CustomActions</RootNamespace>
<AssemblyName>CustomActions</AssemblyName>
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<WixCATargetsPath Condition=" '$(WixCATargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.CA.targets</WixCATargetsPath>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<StartupObject>
</StartupObject>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Management" />
<Reference Include="Microsoft.Deployment.WindowsInstaller">
<Private>True</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="CustomActions.cs" />
<Compile Include="KbInstalledChecker.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="InstalledWindowsUpdateChecker.cs" />
<Compile Include="UninstallNsisVersions.cs" />
<Content Include="CustomAction.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="$(WixCATargetsPath)" />
</Project>

View File

@@ -0,0 +1,72 @@
using System;
using System.Management;
using System.Collections;
using System.Collections.Generic;
namespace CustomActions
{
public class InstalledWindowsUpdateChecker
{
private readonly ManagementScope _managementScope;
public InstalledWindowsUpdateChecker()
{
_managementScope = Connect();
}
public ManagementScope Connect()
{
try
{
return new ManagementScope(@"root\cimv2");
}
catch (ManagementException e)
{
Console.WriteLine($"Failed to connect: {e.Message}");
throw;
}
}
public ArrayList GetInstalledUpdates()
{
const string query = "SELECT * FROM Win32_QuickFixEngineering";
var installedUpdates = new ArrayList();
var searcher = new ManagementObjectSearcher(_managementScope, new ObjectQuery(query));
foreach(var o in searcher.Get())
{
var queryObj = (ManagementObject) o;
installedUpdates.Add(queryObj["HotFixID"]);
}
return installedUpdates;
}
public bool IsUpdateInstalled(string kb) => IsUpdateInstalled(new[] {kb});
public bool IsUpdateInstalled(IEnumerable<string> kbList)
{
var updateIsInstalled = false;
var whereClause = BuildWhereClauseFromKbList(kbList);
if (whereClause == "") return false;
var query = $"SELECT HotFixID FROM Win32_QuickFixEngineering WHERE {whereClause}";
var searcher = new ManagementObjectSearcher(_managementScope, new ObjectQuery(query));
if (searcher.Get().Count > 0)
updateIsInstalled = true;
return updateIsInstalled;
}
private string BuildWhereClauseFromKbList(IEnumerable<string> kbList)
{
var whereClause = "";
var counter = 0;
foreach (var kb in kbList)
{
if (counter > 0)
whereClause += " OR ";
whereClause += $"HotFixID='{kb}'";
counter++;
}
return whereClause;
}
}
}

View File

@@ -0,0 +1,44 @@
using System;
using System.Collections.Generic;
using Microsoft.Deployment.WindowsInstaller;
namespace CustomActions
{
public class KbInstalledChecker
{
private readonly Session _session;
private readonly InstalledWindowsUpdateChecker _installedUpdateChecker;
public KbInstalledChecker(Session session)
{
_installedUpdateChecker = new InstalledWindowsUpdateChecker();
_session = session;
}
public bool Execute(string acceptedKb, string returnVar) => Execute(new[] {acceptedKb}, returnVar);
public bool Execute(IEnumerable<string> acceptedKbs, string returnVar)
{
try
{
_session.Log("Begin KbInstalledChecker");
var isUpdateInstalled = _installedUpdateChecker.IsUpdateInstalled(acceptedKbs);
SetReturnValue(isUpdateInstalled, returnVar);
_session.Log("End KbInstalledChecker");
return true;
}
catch (Exception e)
{
_session.Log($"There was an issue executing the KbInstalledChecker. Exception: {e}");
return false;
}
}
private void SetReturnValue(bool isUpdateInstalled, string returnVar)
{
var updateInstalledVal = isUpdateInstalled ? "1" : "0";
_session[returnVar] = updateInstalledVal;
_session.Log($"Set property '{returnVar}' to '{updateInstalledVal}'");
}
}
}

View File

@@ -0,0 +1,35 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("HotfixInstalled")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("HotfixInstalled")]
[assembly: AssemblyCopyright("Copyright © 2016")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("5423d985-cb48-4344-b47f-e8c6d60c8b04")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -0,0 +1,83 @@
using System;
using Microsoft.Win32;
using System.Diagnostics;
namespace CustomActions
{
public class UninstallNsisVersions
{
private const string RegistryPath = "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\mRemoteNG";
private const string RegistryPathWow6432 = "Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\mRemoteNG";
private RegistryKey _activeRegistryPath;
public UninstallNsisVersions()
{
GetLegacymRemoteNgRegistryKeyPath();
}
public void UninstallLegacyVersion(bool silent = false)
{
if (!IsLegacymRemoteNgInstalled())
return;
var uninstallString = GetLegacyUninstallString();
var forceNonTempUninstaller = $"_?={uninstallString.Replace("Uninstall.exe", "").Replace(@"""", "")}";
var silentUninstall = "";
if (silent)
{
silentUninstall = "/S";
}
var processStartInfo = new ProcessStartInfo(uninstallString)
{
UseShellExecute = true,
Arguments = $"{forceNonTempUninstaller} {silentUninstall}"
};
var uninstallProcess = Process.Start(processStartInfo);
while (uninstallProcess != null && uninstallProcess.HasExited == false)
{
Debug.WriteLine("Waiting for uninstaller to exit");
}
}
public bool IsLegacymRemoteNgInstalled()
{
return (_activeRegistryPath != null);
}
public string GetLegacyUninstallString()
{
return IsLegacymRemoteNgInstalled() ? _activeRegistryPath.GetValue("UninstallString").ToString() : "";
}
private void GetLegacymRemoteNgRegistryKeyPath()
{
GetUninstallKeyPath();
GetUninstallKeyPath6432();
}
private void GetUninstallKeyPath()
{
try
{
_activeRegistryPath = Registry.LocalMachine.OpenSubKey(RegistryPath);
}
catch (Exception)
{
// ignored
}
}
private void GetUninstallKeyPath6432()
{
try
{
_activeRegistryPath = Registry.LocalMachine.OpenSubKey(RegistryPathWow6432);
}
catch (Exception)
{
// ignored
}
}
}
}

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include $(sys.CURRENTDIR)Includes\Config.wxi?>
<Fragment>
<CustomAction Id="CheckIfMinimumRdpInstalled" Return="check" Execute="immediate" BinaryKey="CustomActions.CA.dll" DllEntry="IsMinimumRdpVersionInstalled" />
</Fragment>
<Fragment>
<CustomAction Id="CheckIfRdpDtlsUpdateInstalled" Return="check" Execute="immediate" BinaryKey="CustomActions.CA.dll" DllEntry="IsRdpDtlsUpdateInstalled" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<!-- http://robmensching.com/blog/posts/2010/5/2/the-wix-toolsets-remember-property-pattern/ -->
<!-- This pattern allows a cmdline value to take precedence over values set from searchers (registry/file/etc) -->
<!-- Save the INSTALLDIR value from the cmdline, if it was provided -->
<CustomAction Id="SaveCmdlineINSTALLDIR" Property="CMDLINE_INSTALLDIR" Value="[INSTALLDIR]" Execute="firstSequence" />
<!-- Set the INSTALLDIR value to the cmdline value, if one was provided -->
<CustomAction Id="SetFromCmdlineINSTALLDIR" Property="INSTALLDIR" Value="[CMDLINE_INSTALLDIR]" Execute="firstSequence" />
<InstallUISequence>
<Custom Action="SaveCmdlineINSTALLDIR" Before="AppSearch" />
<Custom Action="SetFromCmdlineINSTALLDIR" After="AppSearch">
CMDLINE_INSTALLDIR
</Custom>
</InstallUISequence>
<InstallExecuteSequence>
<Custom Action="SaveCmdlineINSTALLDIR" Before="AppSearch" />
<Custom Action="SetFromCmdlineINSTALLDIR" After="AppSearch">
CMDLINE_INSTALLDIR
</Custom>
</InstallExecuteSequence>
</Fragment>
</Wix>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include $(sys.CURRENTDIR)Includes\Config.wxi?>
<Fragment>
<CustomAction Id="CheckIfLegacyVersionInstalled" Return="check" Execute="immediate" BinaryKey="CustomActions.CA.dll" DllEntry="IsLegacyVersionInstalled" />
</Fragment>
<Fragment>
<CustomAction Id="UninstallLegacyVersion" Return="check" Execute="immediate" BinaryKey="CustomActions.CA.dll" DllEntry="UninstallLegacyVersion" />
</Fragment>
</Wix>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:wix="http://schemas.microsoft.com/wix/2006/wi">
<xsl:output method="xml" indent="yes" />
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:key name="service-search" match="wix:Component[contains(wix:File/@Source, '.xml')]" use="@Id" />
<xsl:key name="service-search" match="wix:Component[contains(wix:File/@Source, 'app.config')]" use="@Id" />
<xsl:key name="service-search" match="wix:Component[contains(wix:File/@Source, 'vshost')]" use="@Id" />
<xsl:key name="service-search" match="wix:Component[contains(wix:File/@Source, 'manifest')]" use="@Id" />
<xsl:key name="service-search" match="wix:Component[contains(wix:File/@Source, '.application')]" use="@Id" />
<xsl:key name="service-search" match="wix:Component[wix:File/@Source = '$(var.HarvestPath)\mRemoteNG.exe']" use="@Id" />
<xsl:key name="service-search" match="wix:Component[wix:File/@Source = '$(var.HarvestPath)\PuTTYNG.exe']" use="@Id" />
<xsl:template match="wix:Component[key('service-search', @Id)]" />
<xsl:template match="wix:ComponentRef[key('service-search', @Id)]" />
</xsl:stylesheet>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include $(sys.CURRENTDIR)Includes\Config.wxi?>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="$(var.PlatformProgramFilesFolder)">
<Directory Id="INSTALLDIR" Name="$(var.ProductName)">
</Directory>
</Directory>
<Directory Id="DesktopFolder" Name="!(loc.Folders_Desktop)" />
<Directory Id="ProgramMenuFolder">
<Directory Id="ApplicationProgramsFolder" Name="$(var.ProductName)"/>
</Directory>
</Directory>
</Fragment>
</Wix>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include $(sys.CURRENTDIR)Includes\Config.wxi?>
<Fragment>
<Component Id="C.MainExe" Directory="INSTALLDIR" Guid="*">
<File Id="MainExeFile" Source="$(var.SolutionDir)mRemoteV1\bin\$(var.Configuration)\mRemoteNG.exe" />
</Component>
</Fragment>
</Wix>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<ComponentGroup Id="CG.ProjectInfoFiles" Directory="INSTALLDIR">
<Component Id="C.Changelog" Guid="*">
<File Id="ChangelogFile" Name="Changelog.txt" Source="$(var.SolutionDir)CHANGELOG.TXT" KeyPath="yes" />
</Component>
<Component Id="C.Credits" Guid="*">
<File Id="CreditsFile" Name="Credits.txt" Source="$(var.SolutionDir)CREDITS.TXT" KeyPath="yes" />
</Component>
<Component Id="C.License" Guid="*">
<File Id="LicenseFile" Name="License.txt" Source="$(var.SolutionDir)COPYING.TXT" KeyPath="yes" />
</Component>
<Component Id="C.Readme" Guid="*">
<File Id="ReadmeFile" Name="Readme.txt" Source="$(var.SolutionDir)README.TXT" KeyPath="yes" />
</Component>
</ComponentGroup>
</Fragment>
</Wix>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<DirectoryRef Id="INSTALLDIR">
<Component Id="C.PuttyNGFile" Guid="*">
<File Id="PuttyNGFile" Name="PuTTYNG.exe" Source="$(var.HarvestPath)\PuTTYNG.exe" KeyPath="yes" />
</Component>
</DirectoryRef>
</Fragment>
</Wix>

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<DirectoryRef Id="TARGETDIR">
<Component Id="C.RegistryEntries" Guid="*">
<RegistryKey Root="HKLM" Key="Software\mRemoteNG">
<RegistryValue Type="string" Name="InstallDir" Value="[INSTALLDIR]" KeyPath="yes" />
</RegistryKey>
</Component>
</DirectoryRef>
</Fragment>
</Wix>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?include $(sys.CURRENTDIR)Includes\Config.wxi?>
<Fragment Id="Fr.Shortcuts">
<DirectoryRef Id="DesktopFolder">
<Component Id="C.DesktopShortcut" Guid="F78E5A16-A2F7-4BD9-9250-CBF3016CCCDA">
<Shortcut Id="DesktopShortcut" Name="$(var.ProductName)" Target="[INSTALLDIR][MAINEXE]" WorkingDirectory="INSTALLDIR" Icon="mRemoteNG.ico" />
<RegistryValue Root="HKCU" Key="Software\$(var.ProductName)" Name="DesktopShortcut" Type="integer" Value="1" KeyPath="yes" />
</Component>
</DirectoryRef>
<DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="C.ApplicationStartMenuShortcut" Guid="193B9E14-F40E-44F1-8514-BED253BCBF75">
<Shortcut Id="ApplicationStartMenuShortcut" Name="$(var.ProductName)" Target="[INSTALLDIR][MAINEXE]" WorkingDirectory="INSTALLDIR" Icon="mRemoteNG.ico" />
<Shortcut Id="CreditsShortcut" Name="Credits" Target="[INSTALLDIR]Credits.txt" WorkingDirectory="INSTALLDIR" />
<Shortcut Id="LicenseShortcut" Name="License" Target="[INSTALLDIR]License.txt" WorkingDirectory="INSTALLDIR" />
<Shortcut Id="ReadmeShortcut" Name="Readme" Target="[INSTALLDIR]Readme.txt" WorkingDirectory="INSTALLDIR" />
<RemoveFolder Id="ApplicationProgramsFolder" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\$(var.ProductName)" Name="ApplicationStartMenuShortcut" Type="integer" Value="1" KeyPath="yes"/>
</Component>
</DirectoryRef>
</Fragment>
</Wix>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<Include>
<?define ProductName = "mRemoteNG" ?>
<?define Company = "Next Generation Software" ?>
<?define UpgradeCode = "dd678a54-ca75-4791-8dfe-d818095684f8" ?>
<?define ProductCode = "*" ?>
<?define ProductVersion = "!(bind.FileVersion.MainExeFile)" ?>
<?define MajorVersion = "!(bind.property.ProductVersion.Major)" ?>
<?define MinorVersion = "!(bind.property.ProductVersion.Minor)" ?>
<?define BuildVersion = "!(bind.property.ProductVersion.Build)" ?>
<?define RevisionVersion = "!(bind.property.ProductVersion.Revision)" ?>
<?define ProductLanguage = 1033 ?>
<?define ExeProcessName = "$(var.ProductName).exe" ?>
<?define RequiredDotNetFrameworkMajorVersion = "4" ?>
<?define RequiredDotNetFrameworkMinorVersion = "0" ?>
<?define RequiredDotNetFrameworkServicePackLevel = "" ?>
<?define RequiredDotNetFrameworkVersion = "$(var.RequiredDotNetFrameworkMajorVersion).$(var.RequiredDotNetFrameworkMinorVersion)" ?>
<?define Rdp80Kb = "KB2592687" ?>
<?define Rdp81Kb = "KB2830477" ?>
<?define MinimumRdpKb = $(var.Rdp80Kb) ?>
<?define RdpDtlsKb = "KB2574819" ?>
<?define IGNOREPREREQUISITES = 0 ?>
<?if $(var.Platform) = x64 ?>
<?define ProductNameWithPlatform = "$(var.ProductName) (64 bit)" ?>
<?define Win64 = "yes" ?>
<?define PlatformProgramFilesFolder = "ProgramFiles64Folder" ?>
<?else ?>
<?define ProductNameWithPlatform = "$(var.ProductName)" ?>
<?define Win64 = "no" ?>
<?define PlatformProgramFilesFolder = "ProgramFilesFolder" ?>
<?endif ?>
</Include>

View File

@@ -0,0 +1,144 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>3.10</ProductVersion>
<ProjectGuid>f0168b9f-6815-40df-ba53-46cee7683b68</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
<OutputName>mRemoteNG-Installer</OutputName>
<OutputType>Package</OutputType>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
<OutputPath>bin\$(Configuration)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<DefineConstants>HarvestPath=..\mRemoteV1\bin\Debug;</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<DefineConstants>HarvestPath=..\mRemoteV1\bin\Release;</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug Portable' ">
<DefineConstants>HarvestPath=..\mRemoteV1\bin\Debug Portable;</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release Portable' ">
<DefineConstants>HarvestPath=..\mRemoteV1\bin\Release Portable;</DefineConstants>
</PropertyGroup>
<ItemGroup>
<Compile Include="CustomActions\CheckForInstalledWindowsUpdates.wxs" />
<Compile Include="CustomActions\SaveInstallLocation.wxs" />
<Compile Include="CustomActions\UninstallLegacyVersions.wxs" />
<Compile Include="Fragments\FilesFragment.wxs" />
<Compile Include="Fragments\DirectoriesFragment.wxs" />
<Compile Include="Fragments\MainExeFragment.wxs" />
<Compile Include="Fragments\MiscTextFilesFragment.wxs" />
<Compile Include="Fragments\PuTTYNGFragment.wxs" />
<Compile Include="Fragments\RegistryEntriesFragment.wxs" />
<Compile Include="Fragments\ShortcutFragment.wxs" />
<Compile Include="mRemoteNGV1.wxs" />
</ItemGroup>
<ItemGroup>
<Content Include="Filters\Harvest_Filter.xslt" />
<Content Include="Includes\Config.wxi" />
<Content Include="Resources\header.bmp" />
<Content Include="Resources\License.rtf" />
<Content Include="Resources\mRemoteNG.ico" />
<Content Include="Resources\welcome.bmp" />
</ItemGroup>
<ItemGroup>
<Folder Include="CustomActions" />
<Folder Include="CustomDialogs" />
<Folder Include="Fragments" />
<Folder Include="Includes" />
<Folder Include="Localizations" />
<Folder Include="Filters" />
<Folder Include="bin" />
<Folder Include="Resources" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Localizations\ru-RU.wxl" />
<EmbeddedResource Include="Localizations\ja-JP.wxl" />
<EmbeddedResource Include="Localizations\cs-CZ.wxl" />
<EmbeddedResource Include="Localizations\de-DE.wxl" />
<EmbeddedResource Include="Localizations\en-US.wxl" />
</ItemGroup>
<ItemGroup>
<WixExtension Include="WixUtilExtension">
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
<Name>WixUtilExtension</Name>
</WixExtension>
<WixExtension Include="WixUIExtension">
<HintPath>$(WixExtDir)\WixUIExtension.dll</HintPath>
<Name>WixUIExtension</Name>
</WixExtension>
<WixExtension Include="WixNetFxExtension">
<HintPath>$(WixExtDir)\WixNetFxExtension.dll</HintPath>
<Name>WixNetFxExtension</Name>
</WixExtension>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\mRemoteV1\mRemoteV1.csproj">
<Name>mRemoteV1</Name>
<Project>{4934a491-40bc-4e5b-9166-ea1169a220f6}</Project>
<Private>True</Private>
<DoNotHarvest>
</DoNotHarvest>
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
<RefTargetDir>APPLICATIONROOTDIRECTORY</RefTargetDir>
</ProjectReference>
</ItemGroup>
<Import Project="$(WixTargetsPath)" />
<!--
To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Wix.targets.
-->
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<LinkerAdditionalOptions>
</LinkerAdditionalOptions>
<DefineConstants>HarvestPath=$(SolutionDir)mRemoteV1\bin\Release;HelpFilesHarvestPath=$(SolutionDir)mRemoteV1\Resources\Help</DefineConstants>
<Cultures>en-US</Cultures>
<SuppressPdbOutput>True</SuppressPdbOutput>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<Cultures>en-US</Cultures>
<DefineConstants>HarvestPath=$(SolutionDir)mRemoteV1\bin\Debug;HelpFilesHarvestPath=$(SolutionDir)mRemoteV1\Resources\Help</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug Portable|x86' ">
<DefineConstants>HarvestPath=$(SolutionDir)mRemoteV1\bin\Debug Portable;HelpFilesHarvestPath=$(SolutionDir)mRemoteV1\Resources\Help</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release Portable|x86' ">
<DefineConstants>HarvestPath=$(SolutionDir)mRemoteV1\bin\Release Portable;HelpFilesHarvestPath=$(SolutionDir)mRemoteV1\Resources\Help</DefineConstants>
</PropertyGroup>
<PropertyGroup>
<PostBuildEvent>:: When passing paths to powershell scripts, check if the path ends with a backslash "\"
:: If it does, then the backslash may be interpreted as an escape character. Add another backslash to cancel the first one.
powershell -noprofile -command "sleep 2"
set /p buildenv=&lt;buildenv.tmp
set solutionDir=$(SolutionDir)\
set targetDir=%25cd%25
set psScriptsDir=$(SolutionDir)Tools
set certPath=$(CertPath)
set certPassword=$(CertPassword)
:: Call the post build powershell script
powershell.exe -ExecutionPolicy Bypass -File "%25psScriptsDir%25\postbuild_installer.ps1" -SolutionDir "%25solutionDir%25" -TargetDir "%25targetDir%25" -TargetFileName "mRemoteNG.exe" -ConfigurationName "%25buildenv%25" -CertificatePath "%25certPath%25" -CertificatePassword "%25certPassword%25"</PostBuildEvent>
</PropertyGroup>
<PropertyGroup>
<PreBuildEvent>REM Clean the TargetDir
rmdir /S /Q "$(TargetDir)"
echo $(ConfigurationName) &gt; buildenv.tmp
REM Harvest bin directory of the mRemoteV1 project
"$(WIX)bin\heat.exe" dir "$(SolutionDir)mRemoteV1\bin\$(Configuration)" -ag -nologo -dr INSTALLDIR -var var.HarvestPath -srd -cg MandatoryComponents -template fragment -out "$(ProjectDir)Fragments\FilesFragment.wxs" -t "$(ProjectDir)Filters\Harvest_Filter.xslt"
REM Convert the license file "COPYING.TXT" to "License.rtf" to be shown in the installer GUI
"$(ProjectDir)Resources\Pandoc\pandoc.exe" -s -t rtf -o "$(ProjectDir)\Resources\License.rtf" "$(SolutionDir)COPYING.TXT"</PreBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="cs-CZ" Language="1029" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<!-- Install Conditions -->
<String Id="Upgrade_NewerVersionInstalled" Overridable="yes">A newer version of [ProductName] is already installed.</String>
<String Id="Install_NeedToBeAdminToInstall">You need to be an administrator to install this product.</String>
<String Id="Install_NeedDotNetFrameworkVersion">mRemoteNG requires Microsoft .NET Framework $(var.RequiredDotNetFrameworkVersion).</String>
<String Id="Install_OSVersionRequirement">mRemoteNG requires Windows 7 SP1 or higher to run. Please update your operating system and try again.</String>
<String Id="Install_RDP80Requirement">mRemoteNG requires RDP 8.0 or higher to run. Windows 7 users will need to install KB2592687</String>
<String Id="Install_Win7RequiresSP1">For mRemoteNG to run on Windows 7, it requires Service Pack 1 to be installed. Please install Service Pack 1 and try again.</String>
<!-- Directories and File names -->
<String Id="Folders_Desktop">Desktop</String>
<String Id="File_Credits">Credits</String>
<String Id="File_License">License</String>
<String Id="File_VersionHistory">Version History</String>
<!-- Features and install options -->
<String Id="Feature_Complete">Complete</String>
<String Id="Feature_DesktopShortcut">Desktop Shortcut</String>
<String Id="Feature_StartMenuShortcut">Start menu shortcut</String>
<!-- GUI Page Text -->
<String Id="FinishPage_LaunchMremoteNow" Overridable="yes">Launch [ProductName] Now</String>
</WixLocalization>

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="de-DE" Language="1031" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<!-- Install Conditions -->
<String Id="Upgrade_NewerVersionInstalled" Overridable="yes">A newer version of [ProductName] is already installed.</String>
<String Id="Install_NeedToBeAdminToInstall">You need to be an administrator to install this product.</String>
<String Id="Install_NeedDotNetFrameworkVersion">mRemoteNG requires Microsoft .NET Framework $(var.RequiredDotNetFrameworkVersion).</String>
<String Id="Install_OSVersionRequirement">mRemoteNG requires Windows 7 SP1 or higher to run. Please update your operating system and try again.</String>
<String Id="Install_RDP80Requirement">mRemoteNG requires RDP 8.0 or higher to run. Windows 7 users will need to install KB2592687</String>
<String Id="Install_Win7RequiresSP1">For mRemoteNG to run on Windows 7, it requires Service Pack 1 to be installed. Please install Service Pack 1 and try again.</String>
<!-- Directories and File names -->
<String Id="Folders_Desktop">Desktop</String>
<String Id="File_Credits">Credits</String>
<String Id="File_License">License</String>
<String Id="File_VersionHistory">Version History</String>
<!-- Features and install options -->
<String Id="Feature_Complete">Complete</String>
<String Id="Feature_DesktopShortcut">Desktop Shortcut</String>
<String Id="Feature_StartMenuShortcut">Start menu shortcut</String>
<!-- GUI Page Text -->
<String Id="FinishPage_LaunchMremoteNow" Overridable="yes">mRemoteNG jetzt Starten</String>
</WixLocalization>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="en-US" Language="1033" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<!-- Install Conditions -->
<String Id="Upgrade_NewerVersionInstalled" Overridable="yes">A newer version of [ProductName] is already installed.</String>
<String Id="Install_NeedToBeAdminToInstall">You need to be an administrator to install this product.</String>
<String Id="Install_NeedDotNetFrameworkVersion">mRemoteNG requires Microsoft .NET Framework [REQUIREDDOTNETFRAMEWORKVERSION] or higher.</String>
<String Id="Install_OSVersionRequirement">mRemoteNG requires Windows 7 SP1 or higher to run. Please update your operating system and try again.</String>
<String Id="Install_RDP80Requirement">mRemoteNG requires RDP 8.0 or higher to run. Windows 7 users will need to install either KB2592687 (RDP 8.0) or KB2830477 (RDP 8.1)</String>
<String Id="Install_RDPDtlsRequirement">mRemoteNG requires KB2574819 in order to create RDP connections. Windows 7 users will need to install this KB.</String>
<String Id="Install_Win7RequiresSP1">For mRemoteNG to run on Windows 7, it requires Service Pack 1 to be installed. Please install Service Pack 1 and try again.</String>
<!-- Directories and File names -->
<String Id="Folders_Desktop">Desktop</String>
<String Id="File_Credits">Credits</String>
<String Id="File_License">License</String>
<String Id="File_VersionHistory">Version History</String>
<!-- Features and install options -->
<String Id="Feature_Complete">Complete</String>
<String Id="Feature_DesktopShortcut">Desktop Shortcut</String>
<String Id="Feature_StartMenuShortcut">Start menu shortcut</String>
<!-- GUI Page Text -->
<String Id="FinishPage_LaunchMremoteNow" Overridable="yes">Launch mRemoteNG Now</String>
</WixLocalization>

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="ja-JP" Language="1041" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<!-- Install Conditions -->
<String Id="Upgrade_NewerVersionInstalled" Overridable="yes">A newer version of [ProductName] is already installed.</String>
<String Id="Install_NeedToBeAdminToInstall">You need to be an administrator to install this product.</String>
<String Id="Install_NeedDotNetFrameworkVersion">mRemoteNG requires Microsoft .NET Framework $(var.RequiredDotNetFrameworkVersion).</String>
<String Id="Install_OSVersionRequirement">mRemoteNG requires Windows 7 SP1 or higher to run. Please update your operating system and try again.</String>
<String Id="Install_RDP80Requirement">mRemoteNG requires RDP 8.0 or higher to run. Windows 7 users will need to install KB2592687</String>
<String Id="Install_Win7RequiresSP1">For mRemoteNG to run on Windows 7, it requires Service Pack 1 to be installed. Please install Service Pack 1 and try again.</String>
<!-- Directories and File names -->
<String Id="Folders_Desktop">Desktop</String>
<String Id="File_Credits">Credits</String>
<String Id="File_License">License</String>
<String Id="File_VersionHistory">Version History</String>
<!-- Features and install options -->
<String Id="Feature_Complete">Complete</String>
<String Id="Feature_DesktopShortcut">Desktop Shortcut</String>
<String Id="Feature_StartMenuShortcut">Start menu shortcut</String>
<!-- GUI Page Text -->
<String Id="FinishPage_LaunchMremoteNow" Overridable="yes">Launch [ProductName] Now</String>
</WixLocalization>

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="ru-RU" Language="1049" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<!-- Install Conditions -->
<String Id="Upgrade_NewerVersionInstalled" Overridable="yes">A newer version of [ProductName] is already installed.</String>
<String Id="Install_NeedToBeAdminToInstall">You need to be an administrator to install this product.</String>
<String Id="Install_NeedDotNetFrameworkVersion">mRemoteNG requires Microsoft .NET Framework $(var.RequiredDotNetFrameworkVersion).</String>
<String Id="Install_OSVersionRequirement">mRemoteNG requires Windows 7 SP1 or higher to run. Please update your operating system and try again.</String>
<String Id="Install_RDP80Requirement">mRemoteNG requires RDP 8.0 or higher to run. Windows 7 users will need to install KB2592687</String>
<String Id="Install_Win7RequiresSP1">For mRemoteNG to run on Windows 7, it requires Service Pack 1 to be installed. Please install Service Pack 1 and try again.</String>
<!-- Directories and File names -->
<String Id="Folders_Desktop">Desktop</String>
<String Id="File_Credits">Credits</String>
<String Id="File_License">License</String>
<String Id="File_VersionHistory">Version History</String>
<!-- Features and install options -->
<String Id="Feature_Complete">Complete</String>
<String Id="Feature_DesktopShortcut">Desktop Shortcut</String>
<String Id="Feature_StartMenuShortcut">Start menu shortcut</String>
<!-- GUI Page Text -->
<String Id="FinishPage_LaunchMremoteNow" Overridable="yes">Launch [ProductName] Now</String>
</WixLocalization>

View File

@@ -0,0 +1,85 @@
{\rtf1\ansi\deff0{\fonttbl{\f0 \fswiss Helvetica;}{\f1 Courier;}}
{\colortbl;\red255\green0\blue0;\red0\green0\blue255;}
\widowctrl\hyphauto
{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs36 GNU GENERAL PUBLIC LICENSE\par}
{\pard \ql \f0 \sa180 \li0 \fi0 Version 2, June 1991\par}
{\pard \ql \f0 \sa180 \li0 \fi0 Copyright (C) 1989, 1991 Free Software Foundation, Inc.\line 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\par}
{\pard \ql \f0 \sa180 \li0 \fi0 Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 Preamble\par}
{\pard \ql \f0 \sa180 \li0 \fi0 The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software\u8211-to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation\u8217's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 Also, for each author\u8217's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors\u8217' reputations.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone\u8217's free use or not licensed at all.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 The precise terms and conditions for copying, distribution and modification follow.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 GNU GENERAL PUBLIC LICENSE\par}
{\pard \ql \f0 \sa180 \li0 \fi0 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 0.\tx360\tab This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The \u8220"Program\u8221", below, refers to any such program or work, and a \u8220"work based on the Program\u8221" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term \u8220"modification\u8221".) Each licensee is addressed as \u8220"you\u8221".\par}
{\pard \ql \f0 \sa180 \li360 \fi0 Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 1.\tx360\tab You may copy and distribute verbatim copies of the Program\u8217's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.\par}
{\pard \ql \f0 \sa180 \li360 \fi0 You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 2.\tx360\tab You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:\par}
{\pard \ql \f0 \sa180 \li720 \fi-360 a)\tx360\tab You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.\par}
{\pard \ql \f0 \sa180 \li720 \fi-360 b)\tx360\tab You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.\par}
{\pard \ql \f0 \sa180 \li720 \fi-360 c)\tx360\tab If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)\sa180\par}
{\pard \ql \f0 \sa180 \li360 \fi0 These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.\par}
{\pard \ql \f0 \sa180 \li360 \fi0 Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.\par}
{\pard \ql \f0 \sa180 \li360 \fi0 In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 3.\tx360\tab You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:\par}
{\pard \ql \f0 \sa180 \li720 \fi-360 a)\tx360\tab Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,\par}
{\pard \ql \f0 \sa180 \li720 \fi-360 b)\tx360\tab Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,\par}
{\pard \ql \f0 \sa180 \li720 \fi-360 c)\tx360\tab Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)\sa180\par}
{\pard \ql \f0 \sa180 \li360 \fi0 The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.\par}
{\pard \ql \f0 \sa180 \li360 \fi0 If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 4.\tx360\tab You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 5.\tx360\tab You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 6.\tx360\tab Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients\u8217' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 7.\tx360\tab If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.\par}
{\pard \ql \f0 \sa180 \li360 \fi0 If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.\par}
{\pard \ql \f0 \sa180 \li360 \fi0 It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.\par}
{\pard \ql \f0 \sa180 \li360 \fi0 This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 8.\tx360\tab If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 9.\tx360\tab The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.\par}
{\pard \ql \f0 \sa180 \li360 \fi0 Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and \u8220"any later version\u8221", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 10.\tx360\tab If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.\sa180\par}
{\pard \ql \f0 \sa180 \li0 \fi0 NO WARRANTY\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 11.\tx360\tab BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \u8220"AS IS\u8221" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\par}
{\pard \ql \f0 \sa180 \li360 \fi-360 12.\tx360\tab IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\sa180\par}
{\pard \ql \f0 \sa180 \li0 \fi0 END OF TERMS AND CONDITIONS\par}
{\pard \ql \f0 \sa180 \li0 \fi0 \b \fs32 How to Apply These Terms to Your New Programs\par}
{\pard \ql \f0 \sa180 \li0 \fi0 If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the \u8220"copyright\u8221" line and a pointer to where the full notice is found.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 \f1 <one line to give the program's name and a brief idea of what it does.>\line
Copyright (C) <year> <name of author>\line
\line
This program is free software; you can redistribute it and/or modify\line
it under the terms of the GNU General Public License as published by\line
the Free Software Foundation; either version 2 of the License, or\line
(at your option) any later version.\line
\line
This program is distributed in the hope that it will be useful,\line
but WITHOUT ANY WARRANTY; without even the implied warranty of\line
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\line
GNU General Public License for more details.\line
\line
You should have received a copy of the GNU General Public License\line
along with this program; if not, write to the Free Software\line
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\par}
{\pard \ql \f0 \sa180 \li0 \fi0 Also add information on how to contact you by electronic and paper mail.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 If the program is interactive, make it output a short notice like this when it starts in an interactive mode:\par}
{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Gnomovision version 69, Copyright (C) year name of author\line
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\line
This is free software, and you are welcome to redistribute it\line
under certain conditions; type `show c' for details.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 The hypothetical commands {\f1 show w' and}show c\u8217' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than {\f1 show w' and}show c\u8217'; they could even be mouse-clicks or menu items\u8211-whatever suits your program.\par}
{\pard \ql \f0 \sa180 \li0 \fi0 You should also get your employer (if you work as a programmer) or your school, if any, to sign a \u8220"copyright disclaimer\u8221" for the program, if necessary. Here is a sample; alter the names:\par}
{\pard \ql \f0 \sa180 \li0 \fi0 \f1 Yoyodyne, Inc., hereby disclaims all copyright interest in the program\line
`Gnomovision' (which makes passes at compilers) written by James Hacker.\line
\line
<signature of Ty Coon>, 1 April 1989\line
Ty Coon, President of Vice\par}
{\pard \ql \f0 \sa180 \li0 \fi0 This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License.\par}
}

View File

@@ -0,0 +1,108 @@
Pandoc
Copyright (C) 2006-2016 John MacFarlane <jgm at berkeley dot edu>
This code is released under the [GPL], version 2 or later:
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
The GNU General Public License is available in the file COPYING in
the source distribution. On Debian systems, the complete text of the
GPL can be found in `/usr/share/common-licenses/GPL`.
[GPL]: http://www.gnu.org/copyleft/gpl.html
Pandoc's complete source code is available from the [Pandoc home page].
[Pandoc home page]: http://pandoc.org
Pandoc includes some code from other authors. The copyright and license
statements for these sources are included below. All are GPL-compatible
licenses.
----------------------------------------------------------------------
src/Text/Pandoc/Writers/Texinfo.hs
Copyright (C) 2008-2015 John MacFarlane and Peter Wang
Released under the GNU General Public License version 2 or later.
----------------------------------------------------------------------
src/Text/Pandoc/Writers/OpenDocument.hs
Copyright (C) 2008-2015 Andrea Rossato and John MacFarlane
Released under the GNU General Public License version 2 or later.
----------------------------------------------------------------------
src/Text/Pandoc/Writers/Org.hs
Copyright (C) 2010-2015 Puneeth Chaganti and John MacFarlane
Released under the GNU General Public License version 2 or later.
----------------------------------------------------------------------
src/Text/Pandoc/Readers/Textile.hs
Copyright (C) 2010-2015 Paul Rivier and John MacFarlane
Released under the GNU General Public License version 2 or later.
----------------------------------------------------------------------
src/Text/Pandoc/Readers/Org.hs
tests/Tests/Readers/Org.hs
Copyright (C) 2014-2015 Albert Krewinkel
Released under the GNU General Public License version 2 or later.
----------------------------------------------------------------------
data/LaTeXMathML.js
Adapted by Jeff Knisely and Douglas Woodall from
ASCIIMathML.js v. 1.4.7
Copyright (C) 2005 Peter Jipsen
Released under the GNU General Public License version 2 or later.
----------------------------------------------------------------------
data/MathMLinHTML.js
Copyright (C) 2004 Peter Jipsen http://www.chapman.edu/~jipsen
Released under the GNU General Public License version 2 or later.
------------------------------------------------------------------------
The dzslides template contains javascript and CSS from Paul Rouget's
dzslides template.
http://github.com/paulrouget/dzslides
Released under the Do What the Fuck You Want To Public License.
------------------------------------------------------------------------
Pandoc embeds a lua interpreter (via hslua).
Copyright © 19942015 Lua.org, PUC-Rio.
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 451 KiB

View File

@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension">
<?include $(sys.CURRENTDIR)Includes\Config.wxi?>
<Product Name="$(var.ProductNameWithPlatform)" Manufacturer="Next Generation Software"
Version="$(var.ProductVersion)"
Id="$(var.ProductCode)"
UpgradeCode="$(var.UpgradeCode)"
Language="1033">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade DowngradeErrorMessage="!(loc.Upgrade_NewerVersionInstalled)" Schedule="afterInstallExecute" />
<MediaTemplate EmbedCab="yes" />
<Binary Id="CustomActions.CA.dll" SourceFile="$(var.SolutionDir)InstallerProjects\CustomActions\bin\$(var.Configuration)\CustomActions.CA.dll" />
<Property Id="MsiLogging" Value="v" />
<Property Id="ARPPRODUCTICON" Value="mRemoteNG.ico" />
<Property Id="ARPHELPLINK" Value="http://www.mremoteng.org" />
<SetProperty Id="ARPINSTALLLOCATION" Value="[INSTALLDIR]" After="CostFinalize" />
<Property Id="MAINEXE" Value="$(var.ExeProcessName)" />
<Property Id="INSTALLDIR">
<RegistrySearch Id='mRemoteNGRegistry' Type='raw' Root='HKLM' Key='Software\mRemoteNG' Name='InstallDir' />
</Property>
<Property Id='RDP_DTLS_KB' Value='$(var.RdpDtlsKb)' />
<Property Id='RDP_DTLS_UPDATE_INSTALLED' Value='0' Secure='yes' />
<Property Id='RDP80_KB' Value='$(var.Rdp80Kb)' />
<Property Id='RDP81_KB' Value='$(var.Rdp81Kb)' />
<Property Id='MINIMUM_RDP_VERSION_INSTALLED' Value='0' Secure='yes' />
<Property Id='REQUIREDDOTNETFRAMEWORKVERSION' Value='$(var.RequiredDotNetFrameworkVersion)' />
<Property Id='LEGACYVERSIONINSTALLED' Value='0' />
<PropertyRef Id="NETFRAMEWORK40FULL" />
<PropertyRef Id="WIX_IS_NETFRAMEWORK_40_OR_LATER_INSTALLED" />
<Icon Id="mRemoteNG.ico" SourceFile="Resources\mRemoteNG.ico" />
<CustomActionRef Id='SaveCmdlineINSTALLDIR' />
<InstallUISequence>
<Custom Action="CheckIfRdpDtlsUpdateInstalled" After="AppSearch">(NOT Installed) AND (VersionNT = 601 OR VersionNT64 = 601)</Custom>
<Custom Action="CheckIfMinimumRdpInstalled" After="CheckIfRdpDtlsUpdateInstalled">(NOT Installed) AND (VersionNT = 601 OR VersionNT64 = 601)</Custom>
<LaunchConditions After="SetWIX_IS_NETFRAMEWORK_40_OR_LATER_INSTALLED" />
<Custom Action="CheckIfLegacyVersionInstalled" After="LaunchConditions" />
<Custom Action="UninstallLegacyVersion" After="CheckIfLegacyVersionInstalled">(NOT Installed) AND (LEGACYVERSIONINSTALLED = 1)</Custom>
</InstallUISequence>
<InstallExecuteSequence>
<Custom Action="CheckIfRdpDtlsUpdateInstalled" After="AppSearch">(NOT Installed) AND (VersionNT = 601 OR VersionNT64 = 601)</Custom>
<Custom Action="CheckIfMinimumRdpInstalled" After="CheckIfRdpDtlsUpdateInstalled">(NOT Installed) AND (VersionNT = 601 OR VersionNT64 = 601)</Custom>
<LaunchConditions After="SetWIX_IS_NETFRAMEWORK_40_OR_LATER_INSTALLED" />
<Custom Action="CheckIfLegacyVersionInstalled" After="LaunchConditions" />
<Custom Action="UninstallLegacyVersion" After="CheckIfLegacyVersionInstalled">(NOT Installed) AND (LEGACYVERSIONINSTALLED = 1)</Custom>
</InstallExecuteSequence>
<!-- Need to be admin to install -->
<Condition Message="!(loc.Install_NeedToBeAdminToInstall)">
Privileged
</Condition>
<!-- Windows 7 or higher required -->
<Condition Message="!(loc.Install_OSVersionRequirement)">
<![CDATA[Installed OR (IGNOREPREREQUISITES = 1) OR (VersionNT >= 601) OR (VersionNT64 >= 601)]]>
</Condition>
<!-- If Windows 7, SP 1 is required -->
<Condition Message="!(loc.Install_Win7RequiresSP1)">
<![CDATA[Installed OR (IGNOREPREREQUISITES = 1) OR (VersionNT >= 602 OR VersionNT64 >= 602) OR ((VersionNT = 601 OR VersionNT64 = 601) AND ServicePackLevel >= 1)]]>
</Condition>
<!-- .Net Framework Version Condition -->
<Condition Message="!(loc.Install_NeedDotNetFrameworkVersion)">
<![CDATA[Installed OR (IGNOREPREREQUISITES = 1) OR WIX_IS_NETFRAMEWORK_40_OR_LATER_INSTALLED = 1]]>
</Condition>
<!-- If Win7, require RDP DTLS update (KB2574819) -->
<Condition Message="!(loc.Install_RDPDtlsRequirement)">
<![CDATA[Installed OR (IGNOREPREREQUISITES = 1) OR (VersionNT >= 602 OR VersionNT64 >= 602) OR ((VersionNT = 601 OR VersionNT64 = 601) AND (RDP_DTLS_UPDATE_INSTALLED = 1))]]>
</Condition>
<!-- If Win7, require RDP 8.0 (KB2592687) or 8.1 (KB2830477) update -->
<Condition Message="!(loc.Install_RDP80Requirement)">
<![CDATA[Installed OR (IGNOREPREREQUISITES = 1) OR (VersionNT >= 602 OR VersionNT64 >= 602) OR ((VersionNT = 601 OR VersionNT64 = 601) AND (MINIMUM_RDP_VERSION_INSTALLED = 1))]]>
</Condition>
<Feature Id="F.Complete" Title="!(loc.Feature_Complete)" Display="expand" AllowAdvertise="no" Level="1">
<Feature Id="F.MinimalFeature" Title="$(var.ProductName)" Absent="disallow" ConfigurableDirectory="INSTALLDIR" Level="1">
<ComponentGroupRef Id="MandatoryComponents" Primary="yes" />
<ComponentRef Id="C.MainExe" Primary="yes" />
<ComponentGroupRef Id="CG.ProjectInfoFiles" Primary="yes" />
<ComponentRef Id="C.RegistryEntries" Primary="yes" />
</Feature>
<Feature Id="F.PuttyNG" Title="PuTTYNG" Absent="allow" AllowAdvertise="no" Level="1">
<ComponentRef Id="C.PuttyNGFile" Primary="yes" />
</Feature>
<Feature Id="F.DesktopShortcut" Title="!(loc.Feature_DesktopShortcut)" Absent="allow" AllowAdvertise="no" Level="1">
<ComponentRef Id="C.DesktopShortcut" Primary="yes" />
</Feature>
<Feature Id="F.ApplicationStartMenuShortcut" Title="!(loc.Feature_StartMenuShortcut)" Absent="allow" AllowAdvertise="no" Level="1">
<ComponentRef Id="C.ApplicationStartMenuShortcut" Primary="yes" />
</Feature>
</Feature>
<UI>
<UIRef Id="WixUI_FeatureTree"/>
<UIRef Id="WixUI_ErrorProgressText" />
<Publish Dialog="ExitDialog"
Control="Finish"
Event="DoAction"
Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT Installed</Publish>
</UI>
<WixVariable Id="WixUILicenseRtf" Value="Resources\License.rtf" />
<WixVariable Id="WixUIDialogBmp" Value="Resources\welcome.bmp" />
<WixVariable Id="WixUIBannerBmp" Value="Resources\header.bmp" />
<!-- Provide option to run app after install -->
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="!(loc.FinishPage_LaunchMremoteNow)" />
<Property Id="WixShellExecTarget" Value="[#MainExeFile]" />
<CustomAction Id="LaunchApplication" BinaryKey="WixCA" DllEntry="WixShellExec" Impersonate="yes" />
</Product>
</Wix>

63
Jenkinsfile vendored Normal file
View File

@@ -0,0 +1,63 @@
#!groovy
node('windows') {
def jobDir = pwd()
def solutionFilePath = "\"${jobDir}\\mRemoteV1.sln\""
def msBuild = "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\MSBuild\\15.0\\Bin\\msbuild.exe"
def nunitConsolePath = "${jobDir}\\packages\\NUnit.ConsoleRunner.3.7.0\\tools\\nunit3-console.exe"
def openCoverPath = "${jobDir}\\packages\\OpenCover.4.6.519\\tools\\OpenCover.Console.exe"
def reportGeneratorPath = "${jobDir}\\packages\\ReportGenerator.3.0.2\\tools\\ReportGenerator.exe"
def testResultFilePrefix = "TestResult"
def testResultFileNormal = "${testResultFilePrefix}_UnitTests_normal.xml"
def testResultFilePortable = "${testResultFilePrefix}_UnitTests_portable.xml"
def testResultFileAcceptance = "${testResultFilePrefix}_AcceptanceTests.xml"
def coverageReport = "code_coverage_report.xml"
def codeCoverageHtml = "CodeCoverageReport.html"
stage ('Checkout Branch') {
checkout scm
bat "del /Q \"${jobDir}\\${testResultFilePrefix}*.xml\""
}
stage ('Restore NuGet Packages') {
def nugetPath = "C:\\nuget.exe"
bat "${nugetPath} restore ${solutionFilePath}"
}
stage ('Build mRemoteNG (Normal)') {
bat "\"${msBuild}\" /nologo /p:Platform=x86 \"${jobDir}\\mRemoteV1.sln\""
}
stage ('Build mRemoteNG (Portable)') {
bat "\"${msBuild}\" /nologo /p:Configuration=\"Debug Portable\";Platform=x86 \"${jobDir}\\mRemoteV1.sln\""
}
stage ('Run Unit Tests (Normal, w/coverage)') {
try {
bat "\"${openCoverPath}\" -register:user -target:\"${nunitConsolePath}\" -targetargs:\"\"${jobDir}\\mRemoteNGTests\\bin\\debug\\mRemoteNGTests.dll\" --result=${testResultFileNormal} --x86\" -output:\"${coverageReport}\""
}
catch (ex) {
nunit testResultsPattern: "${testResultFilePrefix}*.xml"
throw ex
}
}
stage ('Run Unit Tests (Portable)') {
try {
bat "\"${nunitConsolePath}\" \"${jobDir}\\mRemoteNGTests\\bin\\debug portable\\mRemoteNGTests.dll\" --result=${testResultFilePortable} --x86"
}
catch (ex) {
nunit testResultsPattern: "${testResultFilePrefix}*.xml"
throw ex
}
}
stage ('Run Acceptance Tests') {
try {
bat "\"${nunitConsolePath}\" \"${jobDir}\\mRemoteNG.Specs\\bin\\debug\\mRemoteNG.Specs.dll\" --result=${testResultFileAcceptance} --x86"
}
catch (ex) {
nunit testResultsPattern: "${testResultFilePrefix}*.xml"
throw ex
}
}
}

View File

@@ -0,0 +1,71 @@
node('windows') {
def jobDir = pwd()
def solutionFilePath = "\"${jobDir}\\mRemoteV1.sln\""
def msBuild = "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\MSBuild\\15.0\\Bin\\msbuild.exe"
def nunitConsolePath = "${jobDir}\\packages\\NUnit.ConsoleRunner.3.7.0\\tools\\nunit3-console.exe"
def openCoverPath = "${jobDir}\\packages\\OpenCover.4.6.519\\tools\\OpenCover.Console.exe"
def testResultFilePrefix = "TestResult"
def testResultFileNormal = "${testResultFilePrefix}_UnitTests_normal.xml"
def testResultFilePortable = "${testResultFilePrefix}_UnitTests_portable.xml"
def coverageReport = "code_coverage_report.xml"
stage ('Clean output dir') {
bat script: "rmdir /S /Q \"${jobDir}\\Release\" 2>nul", returnStatus: true
}
stage ('Checkout Branch') {
checkout([
$class: 'GitSCM',
branches: [[name: '*/${TargetBranch}']],
doGenerateSubmoduleConfigurations: false,
extensions: [],
submoduleCfg: [],
userRemoteConfigs: [[
credentialsId: '9c3fbff4-5b90-402f-a298-00e607fcec87',
url: 'https://github.com/mRemoteNG/mRemoteNG.git'
]]
])
}
stage ('Restore NuGet Packages') {
def nugetPath = "C:\\nuget.exe"
bat "${nugetPath} restore ${solutionFilePath}"
}
withCredentials([file(credentialsId: '9b674d57-6792-48e3-984a-4d1bab2abb64', variable: 'CODE_SIGNING_CERT')]) {
withCredentials([usernamePassword(credentialsId: '05b7449b-05c0-490f-8661-236242526e62', passwordVariable: 'MRNG_CERT_PASSWORD', usernameVariable: 'NO_USERNAME')]) {
stage ('Build mRemoteNG (Normal - MSI)') {
bat "\"${msBuild}\" /nologo /t:Clean,Build /p:Configuration=\"Release Installer\" /p:Platform=x86 /p:CertPath=\"${env.CODE_SIGNING_CERT}\" /p:CertPassword=${env.MRNG_CERT_PASSWORD} \"${jobDir}\\mRemoteV1.sln\""
archiveArtifacts artifacts: "Release\\*.msi", caseSensitive: false, onlyIfSuccessful: true, fingerprint: true
}
stage ('Build mRemoteNG (Portable)') {
bat "\"${msBuild}\" /nologo /t:Clean,Build /p:Configuration=\"Release Portable\" /p:Platform=x86 /p:CertPath=\"${env.CODE_SIGNING_CERT}\" /p:CertPassword=${env.MRNG_CERT_PASSWORD} \"${jobDir}\\mRemoteV1.sln\""
archiveArtifacts artifacts: "Release\\*.zip", caseSensitive: false, onlyIfSuccessful: true, fingerprint: true
}
}
}
stage ('Run Unit Tests (Normal - MSI)') {
bat "\"${nunitConsolePath}\" \"${jobDir}\\mRemoteNGTests\\bin\\release\\mRemoteNGTests.dll\" --result=${testResultFileNormal} --x86"
}
stage ('Run Unit Tests (Portable)') {
bat "\"${nunitConsolePath}\" \"${jobDir}\\mRemoteNGTests\\bin\\release portable\\mRemoteNGTests.dll\" --result=${testResultFilePortable} --x86"
}
stage ('Generate UpdateCheck Files') {
bat "powershell -ExecutionPolicy Bypass -File \"${jobDir}\\Tools\\create_upg_chk_files.ps1\" -TagName \"${env.TagName}\" -UpdateChannel \"${env.UpdateChannel}\""
archiveArtifacts artifacts: "Release\\*.txt", caseSensitive: false, onlyIfSuccessful: true
}
stage ('Publish to GitHub') {
withCredentials([string(credentialsId: '5443a369-dbe8-42d3-b4e8-04d0b4e9039a', variable: 'GH_AUTH_TOKEN')]) {
def releaseFolder = "${jobDir}\\Release"
// because batch files suck at handling newline characters, we have to convert to base64 in groovy and back to text in powershell
def base64Description = env.ReleaseDescription.bytes.encodeBase64().toString()
bat "powershell -ExecutionPolicy Bypass -File \"${jobDir}\\Tools\\publish_to_github.ps1\" -Owner \"mRemoteNG\" -Repository \"mRemoteNG\" -ReleaseTitle \"${env.ReleaseTitle}\" -TagName \"${env.TagName}\" -TargetCommitish \"${env.TargetBranch}\" -Description \"${base64Description}\" -IsDraft ${env.IsDraft} -IsPrerelease ${env.IsPreRelease} -ReleaseFolderPath \"${releaseFolder}\" -AuthToken \"${env.GH_AUTH_TOKEN}\" -DescriptionIsBase64Encoded"
}
}
}

59
README.MD Normal file
View File

@@ -0,0 +1,59 @@
# Welcome to the mRemoteNG project!
[![Twitter Follow](https://img.shields.io/twitter/follow/mRemoteNG.svg?style=social&label=Follow)](https://twitter.com/intent/follow?screen_name=mRemoteNG)
[![Join the chat at https://gitter.im/mRemoteNG/PublicChat/](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/mRemoteNG/PublicChat)
[![PayPal](https://img.shields.io/badge/%24-PayPal-blue.svg)](https://www.paypal.me/DavidSparer)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/529/badge)](https://bestpractices.coreinfrastructure.org/projects/529)
[![Issues In Progress](https://badge.waffle.io/mRemoteNG/mRemoteNG.png?label=In%20Progress&title=In%20Progress)](https://waffle.io/mRemoteNG/mRemoteNG)
| Update Channel | Build Status | Downloads |
| ---------------|--------------|-----------|
| Stable | [![Build status](https://ci.appveyor.com/api/projects/status/k0sdbxmq90fgdmj6/branch/master?svg=true)](https://ci.appveyor.com/project/mremoteng/mremoteng/branch/master) | [![Github Releases (by Release)](https://img.shields.io/github/downloads/mRemoteNG/mRemoteNG/v1.75.7012/total.svg)](https://github.com/mRemoteNG/mRemoteNG/releases/tag/v1.75.7012) |
| Beta | | [![Github Releases (by Release)](https://img.shields.io/github/downloads/mRemoteNG/mRemoteNG/v1.75.7012/total.svg)](https://github.com/mRemoteNG/mRemoteNG/releases/tag/v1.75.7012) |
| Development | [![Build status](https://ci.appveyor.com/api/projects/status/k0sdbxmq90fgdmj6/branch/develop?svg=true)](https://ci.appveyor.com/project/mremoteng/mremoteng/branch/develop) | [![Github Releases (by Release)](https://img.shields.io/github/downloads/mRemoteNG/mRemoteNG/v1.76Alpha5/total.svg)](https://github.com/mRemoteNG/mRemoteNG/releases/tag/v1.76Alpha5) |
mRemoteNG is the next generation of mRemote, a full-featured, multi-tab remote connections manager.
## Features
mRemoteNG is a fork of mRemote: an open source, tabbed, multi-protocol, remote connections manager. mRemoteNG adds bug fixes and new features to mRemote.
It allows you to view all of your remote connections in a simple yet powerful tabbed interface.
mRemoteNG supports the following protocols:
* RDP (Remote Desktop/Terminal Server)
* VNC (Virtual Network Computing)
* ICA (Citrix Independent Computing Architecture)
* SSH (Secure Shell)
* Telnet (TELecommunication NETwork)
* HTTP/HTTPS (Hypertext Transfer Protocol)
* rlogin (Remote Login)
* Raw Socket Connections
For a detailed feature list and general usage support, refer to the [User Manual](https://github.com/mRemoteNG/mRemoteNG/wiki/User-Manual).
## Installation
Before installing make sure you have all the required [prerequisites](https://github.com/mRemoteNG/mRemoteNG/wiki/Prerequisites).
mRemoteNG is available as a redistributable msi package, and can be downloaded from the following locations:
* [GitHub](https://github.com/mRemoteNG/mRemoteNG/releases)
* [Project Website](https://mremoteng.org/download)
mRemoteNG is supported on Windows 7 or later.
Windows 7 and Windows Server 2008 installations must ensure the [listed required updates](https://github.com/mRemoteNG/mRemoteNG/wiki/Prerequisites#full-list-of-required-windows-updates-for-windows-7--server-2008-clients) are installed and active.
## Contribute
If you find mRemoteNG useful and would like to contribute, it would be greatly appreciated. When you contribute, you make it possible for the team to cover the costs of producing mRemoteNG.
### Submit Code
Check out the [Wiki page](https://github.com/mRemoteNG/mRemoteNG/wiki/Development) on how to configure your development environment and submit a pull request.
### Translate
Check out the [Wiki page](https://github.com/mRemoteNG/mRemoteNG/wiki/How%20to%20Help%20Translating%20mRemoteNG) on how to help make mRemoteNG a polygot
[![Developed with ReSharper](https://raw.githubusercontent.com/mRemoteNG/mRemoteNG/develop/.github/icon_ReSharper.png)](https://www.jetbrains.com/resharper/)

View File

@@ -11,4 +11,15 @@ Currently these protocols are supported:
* Telnet (TELecommunication NETwork)
* HTTP/S (Hypertext Transfer Protocol)
* Rlogin (Rlogin)
* RAW
* RAW
mRemoteNG can be installed on Windows 7 or later.
Windows 7 systems require RDP version 8:
https://support.microsoft.com/en-us/kb/2592687
OR
https://support.microsoft.com/en-us/kb/2923545
Windows 8+ support RDP version 8+ out of the box.
RDP versions are backwards compatible, so an mRemoteNG client running on Windows 10 can connection successfully to a Windows 2003 host (for example).

BIN
Tools/7zip/7za.dll Normal file

Binary file not shown.

BIN
Tools/7zip/7za.exe Normal file

Binary file not shown.

BIN
Tools/7zip/7zxa.dll Normal file

Binary file not shown.

31
Tools/7zip/License.txt Normal file
View File

@@ -0,0 +1,31 @@
7-Zip Extra
~~~~~~~~~~~
License for use and distribution
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Copyright (C) 1999-2018 Igor Pavlov.
7-Zip Extra files are under the GNU LGPL license.
Notes:
You can use 7-Zip Extra on any computer, including a computer in a commercial
organization. You don't need to register or pay for 7-Zip.
GNU LGPL information
--------------------
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You can receive a copy of the GNU Lesser General Public License from
http://www.gnu.org/

96
Tools/7zip/history.txt Normal file
View File

@@ -0,0 +1,96 @@
7-Zip Extra history
-------------------
This file contains only information about changes related to that package exclusively.
The full history of changes is listed in history.txt in main 7-Zip program.
18.05 2018-04-30
-------------------------
- The speed for LZMA/LZMA2 compressing was increased
by 8% for fastest/fast compression levels and
by 3% for normal/maximum compression levels.
18.03 beta 2018-03-04
-------------------------
- The speed for single-thread LZMA/LZMA2 decoding
was increased by 30% in x64 version and by 3% in x86 version.
- 7-Zip now can use multi-threading for 7z/LZMA2 decoding,
if there are multiple independent data chunks in LZMA2 stream.
9.35 beta 2014-12-07
------------------------------
- SFX modules were moved to LZMA SDK package.
9.34 alpha 2014-06-22
------------------------------
- Minimum supported system now is Windows 2000 for EXE and DLL files.
- all EXE and DLL files use msvcrt.dll.
- 7zr.exe now support AES encryption.
9.18 2010-11-02
------------------------------
- New small SFX module for installers.
9.17 2010-10-04
------------------------------
- New 7-Zip plugin for FAR Manager x64.
9.10 2009-12-30
------------------------------
- 7-Zip for installers now supports LZMA2.
9.09 2009-12-12
------------------------------
- LZMA2 compression method support.
- Some bugs were fixed.
4.65 2009-02-03
------------------------------
- Some bugs were fixed.
4.38 beta 2006-04-13
------------------------------
- SFX for installers now supports new properties in config file:
Progress, Directory, ExecuteFile, ExecuteParameters.
4.34 beta 2006-02-27
------------------------------
- ISetProperties::SetProperties:
it's possible to specify desirable number of CPU threads:
PROPVARIANT: name=L"mt", vt = VT_UI4, ulVal = NumberOfThreads
If "mt" is not defined, 7za.dll will check number of processors in system to set
number of desirable threads.
Now 7za.dll can use:
2 threads for LZMA compressing
N threads for BZip2 compressing
4 threads for BZip2 decompressing
Other codecs use only one thread.
Note: 7za.dll can use additional "small" threads with low CPU load.
- It's possible to call ISetProperties::SetProperties to specify "mt" property for decoder.
4.33 beta 2006-02-05
------------------------------
- Compressing speed and Memory requirements were increased.
Default dictionary size was increased: Fastest: 64 KB, Fast: 1 MB,
Normal: 4 MB, Max: 16 MB, Ultra: 64 MB.
- 7z/LZMA now can use only these match finders: HC4, BT2, BT3, BT4
4.27 2005-09-21
------------------------------
- Some GUIDs/interfaces were changed.
IStream.h:
ISequentialInStream::Read now works as old ReadPart
ISequentialOutStream::Write now works as old WritePart

124
Tools/7zip/readme.txt Normal file
View File

@@ -0,0 +1,124 @@
7-Zip Extra 18.05
-----------------
7-Zip Extra is package of extra modules of 7-Zip.
7-Zip Copyright (C) 1999-2018 Igor Pavlov.
7-Zip is free software. Read License.txt for more information about license.
Source code of binaries can be found at:
http://www.7-zip.org/
This package contains the following files:
7za.exe - standalone console version of 7-Zip with reduced formats support.
7za.dll - library for working with 7z archives
7zxa.dll - library for extracting from 7z archives
License.txt - license information
readme.txt - this file
Far\ - plugin for Far Manager
x64\ - binaries for x64
All 32-bit binaries can work in:
Windows 2000 / 2003 / 2008 / XP / Vista / 7 / 8 / 10
and in any Windows x64 version with WoW64 support.
All x64 binaries can work in any Windows x64 version.
All binaries use msvcrt.dll.
7za.exe
-------
7za.exe - is a standalone console version of 7-Zip with reduced formats support.
Extra: 7za.exe : support for only some formats of 7-Zip.
7-Zip: 7z.exe with 7z.dll : support for all formats of 7-Zip.
7za.exe and 7z.exe from 7-Zip have same command line interface.
7za.exe doesn't use external DLL files.
You can read Help File (7-zip.chm) from 7-Zip package for description
of all commands and switches for 7za.exe and 7z.exe.
7za.exe features:
- High compression ratio in 7z format
- Supported formats:
- Packing / unpacking: 7z, xz, ZIP, GZIP, BZIP2 and TAR
- Unpacking only: Z, lzma, CAB.
- Highest compression ratio for ZIP and GZIP formats.
- Fast compression and decompression
- Strong AES-256 encryption in 7z and ZIP formats.
Note: LZMA SDK contains 7zr.exe - more reduced version of 7za.exe.
But you can use 7zr.exe as "public domain" code.
DLL files
---------
7za.dll and 7zxa.dll are reduced versions of 7z.dll from 7-Zip.
7za.dll and 7zxa.dll support only 7z format.
Note: 7z.dll is main DLL file that works with all archive types in 7-Zip.
7za.dll and 7zxa.dll support the following decoding methods:
- LZMA, LZMA2, PPMD, BCJ, BCJ2, COPY, 7zAES, BZip2, Deflate.
7za.dll also supports 7z encoding with the following encoding methods:
- LZMA, LZMA2, PPMD, BCJ, BCJ2, COPY, 7zAES.
7za.dll and 7zxa.dll work via COM interfaces.
But these DLLs don't use standard COM interfaces for objects creating.
Look also example code that calls DLL functions (in source code of 7-Zip):
7zip\UI\Client7z
Another example of binary that uses these interface is 7-Zip itself.
The following binaries from 7-Zip use 7z.dll:
- 7z.exe (console version)
- 7zG.exe (GUI version)
- 7zFM.exe (7-Zip File Manager)
Note: The source code of LZMA SDK also contains the code for similar DLLs
(DLLs without BZip2, Deflate support). And these files from LZMA SDK can be
used as "public domain" code. If you use LZMA SDK files, you don't need to
follow GNU LGPL rules, if you want to change the code.
License FAQ
-----------
Can I use the EXE or DLL files from 7-Zip in a commercial application?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Yes, but you are required to specify in documentation for your application:
(1) that you used parts of the 7-Zip program,
(2) that 7-Zip is licensed under the GNU LGPL license and
(3) you must give a link to www.7-zip.org, where the source code can be found.
Can I use the source code of 7-Zip in a commercial application?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Since 7-Zip is licensed under the GNU LGPL you must follow the rules of that license.
In brief, it means that any LGPL'ed code must remain licensed under the LGPL.
For instance, you can change the code from 7-Zip or write a wrapper for some
code from 7-Zip and compile it into a DLL; but, the source code of that DLL
(including your modifications / additions / wrapper) must be licensed under
the LGPL or GPL.
Any other code in your application can be licensed as you wish. This scheme allows
users and developers to change LGPL'ed code and recompile that DLL. That is the
idea of free software. Read more here: http://www.gnu.org/.
Note: You can look also LZMA SDK, which is available under a more liberal license.
---
End of document

View File

@@ -0,0 +1,114 @@
#####################################
# Author: David Sparer
# Summary:
# This is intended to be a template for creating connections in bulk. This uses the serializers directly from the mRemoteNG binaries.
# You will still need to create the connection info objects, but the library will handle serialization. It is expected that you
# are familiar with PowerShell. If this is not the case, reach out to the mRemoteNG community for help.
# Usage:
# Replace or modify the examples that are shown toward the end of the script to create your own connection info objects.
#####################################
$EncryptionKey = (Get-Credential -Message "Enter the encryption key you would like to use. This must match the encryption key used by the rest of the confCons file." -UserName "DontNeedUsername").Password
$PathToMrngFolder = ""
if ($PathToMrngFolder -eq "") {
Write-Error -Message 'You must set the $PathToMrngFolder variable in this script to the folder which contains mRemoteNG.exe'
}
$assembly = [System.Reflection.Assembly]::LoadFile((Join-Path -Path $PathToMrngFolder -ChildPath "mRemoteNG.exe"))
$assembly = [System.Reflection.Assembly]::LoadFile((Join-Path -Path $PathToMrngFolder -ChildPath "BouncyCastle.Crypto.dll"))
function New-mRemoteNGXmlSerializer {
[CmdletBinding()]
param (
[SecureString]
$EncryptionKey
)
PROCESS {
$cryptoProvider = New-Object -TypeName mRemoteNG.Security.SymmetricEncryption.AeadCryptographyProvider
$saveFilter = New-Object -TypeName mRemoteNG.Security.SaveFilter -ArgumentList @($false)
$xmlSerializer = New-Object -TypeName mRemoteNG.Config.Serializers.XmlConnectionNodeSerializer -ArgumentList @($cryptoProvider, $encryptionKey, $saveFilter)
Write-Output $xmlSerializer
}
}
function New-mRemoteNGConnectionInfo {
[CmdletBinding()]
param ()
PROCESS {
$connectionInfo = New-Object -TypeName mRemoteNG.Connection.ConnectionInfo
Write-Output $connectionInfo
}
}
function New-mRemoteNGContainerInfo {
[CmdletBinding()]
param ()
PROCESS {
$connectionInfo = New-Object -TypeName mRemoteNG.Container.ContainerInfo
Write-Output $connectionInfo
}
}
# Setup the services needed to do serialization
$xmlSerializer = New-mRemoteNGXmlSerializer -EncryptionKey $EncryptionKey
#----------------------------------------------------------------
# Example 1: serialize many connections, no containers
# Here you can define the number of connection info objects to create
# You can also provide a list of desired hostnames and iterate over those
$xml = ""
foreach($i in 1..5)
{
$connectionInfo = New-mRemoteNGConnectionInfo
# Set connection info properties
$connectionInfo.Name = "server-$i"
$connectionInfo.Hostname = "some-win-server-$i"
$connectionInfo.Protocol = [mRemoteNG.Connection.Protocol.ProtocolType]::RDP
$connectionInfo.Inheritance.Username = $true
$connectionInfo.Inheritance.Domain = $true
$connectionInfo.Inheritance.Password = $true
$serializedConnection = $xmlSerializer.SerializeConnectionInfo($connectionInfo).ToString()
$xml += $serializedConnection + [System.Environment]::NewLine
}
Write-Output $xml
#----------------------------------------------------------------
# Example 2: serialize a container which has connections
# You can also create containers and add connections to them, which will be nested correctly when serialized
$xml = ""
$container = New-mRemoteNGContainerInfo
$container.Name = "ProductionServers"
$serializedContainer = $xmlSerializer.SerializeConnectionInfo($container)
foreach($i in 1..3)
{
$connectionInfo = New-mRemoteNGConnectionInfo
# Set connection info properties
$connectionInfo.Name = "server-$i"
$connectionInfo.Hostname = "some-linux-server-$i"
$connectionInfo.Protocol = [mRemoteNG.Connection.Protocol.ProtocolType]::SSH2
$connectionInfo.Inheritance.Username = $true
$connectionInfo.Inheritance.Domain = $true
$connectionInfo.Inheritance.Password = $true
# serialize the connection
$serializedConnection = $xmlSerializer.SerializeConnectionInfo($connectionInfo)
# add the connection to the container
$serializedContainer.Add($serializedConnection)
}
# Call ToString() on the top-level container to get the XML of it and all its children
Write-Output $serializedContainer.ToString()

45
Tools/build-relport.cmd Normal file
View File

@@ -0,0 +1,45 @@
@echo off
setlocal enabledelayedexpansion
set SOLUTIONDIR=%~dp0..
rem Windows Sysinternals Sigcheck from http://technet.microsoft.com/en-us/sysinternals/bb897441
set SIGCHECK="%SOLUTIONDIR%\Tools\exes\sigcheck.exe"
set SEVENZIP="%SOLUTIONDIR%\Tools\7zip\7za.exe"
set VCVARSALL="%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"
call %VCVARSALL% x86
IF NOT "%~1"=="build" goto skipbuild
echo Building...
"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe" "%SOLUTIONDIR%\mRemoteV1.sln" /Rebuild "Release Portable"
:skipbuild
IF NOT EXIST "%SOLUTIONDIR%\mRemoteV1\bin\Release Portable\mRemoteNG.exe" echo Did you forget to build? && goto end
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 "%SOLUTIONDIR%\mRemoteV1\bin\Release Portable\mRemoteNG.exe"`) do (
set PRODUCT_VERSION_SHORT=%%i.%%j
set PRODUCT_VERSION=%%i.%%j.%%k.%%l
)
echo Version is %PRODUCT_VERSION%
set PORTABLEZIP="%SOLUTIONDIR%\Release\mRemoteNG-Portable-%PRODUCT_VERSION%.zip"
rmdir /S /Q "%SOLUTIONDIR%\mRemoteV1\bin\package"
mkdir "%SOLUTIONDIR%\mRemoteV1\bin\package"
copy "%SOLUTIONDIR%\*.txt" "%SOLUTIONDIR%\mRemoteV1\bin\package"
copy "%SOLUTIONDIR%\Installer Projects\Installer\Dependencies\PuTTYNG.exe" "%SOLUTIONDIR%\mRemoteV1\bin\package"
xcopy /S /Y "%SOLUTIONDIR%\mRemoteV1\bin\Release Portable" "%SOLUTIONDIR%\mRemoteV1\bin\package"
echo Creating portable ZIP file...
echo %PORTABLEZIP%
del /f /q %PORTABLEZIP% > nul 2>&1
%SEVENZIP% a -bt -mx=9 -tzip -y -r %PORTABLEZIP% "%SOLUTIONDIR%\mRemoteV1\bin\package\*.*"
%SEVENZIP% a -bt -mx=9 -tzip -y %PORTABLEZIP% "%SOLUTIONDIR%\*.TXT"
:end

15
Tools/copy_puttyng.ps1 Normal file
View File

@@ -0,0 +1,15 @@
param (
[string]
[Parameter(Mandatory=$true)]
$SolutionDir,
[string]
[Parameter(Mandatory=$true)]
$TargetDir
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
Write-Output "Copying PUTTYNG to correct directory"
Copy-Item -Path (Join-Path -Path $SolutionDir -ChildPath "mRemoteV1\Resources\PuTTYNG.exe") -Destination $TargetDir -Force
Write-Output ""

View File

@@ -0,0 +1,21 @@
param (
[string]
$SourcePath,
[string]
$DestinationDir
)
Write-Host $SourcePath
Write-Host $DestinationDir
if (!(Test-Path -Path $DestinationDir))
{
New-Item -Path $DestinationDir -ItemType "directory"
}
$sourceFiles = Get-ChildItem -Path $SourcePath -Recurse | ?{$_.Extension -match "exe|msi"}
foreach ($item in $sourceFiles)
{
Copy-Item -Path $item.FullName -Destination $DestinationDir -Force
}

19
Tools/copy_themes.ps1 Normal file
View File

@@ -0,0 +1,19 @@
param (
[string]
[Parameter(Mandatory=$true)]
$SolutionDir,
[string]
[Parameter(Mandatory=$true)]
$TargetDir
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
Write-Output "Copying THEMES folder to output"
$sourceFiles = [io.path]::combine($SolutionDir , 'mRemoteV1\Resources\Themes' )
$DestinationDir = [io.path]::combine($TargetDir , 'Themes')
robocopy $sourceFiles $DestinationDir *.vstheme /s
Write-Output ""

View File

@@ -0,0 +1,109 @@
#Requires -Version 4.0
param (
[string]
[Parameter(Mandatory=$true)]
$TagName,
[string]
[Parameter(Mandatory=$true)]
[ValidateSet("Stable","Beta","Development")]
$UpdateChannel
)
function New-MsiUpdateFileContent {
param (
[System.IO.FileInfo]
[Parameter(Mandatory=$true)]
$MsiFile,
[string]
[Parameter(Mandatory=$true)]
$TagName
)
$version = $MsiFile.BaseName -replace "[a-zA-Z-]*"
$certThumbprint = (Get-AuthenticodeSignature -FilePath $MsiFile).SignerCertificate.Thumbprint
$hash = Get-FileHash -Algorithm SHA512 $MsiFile | % { $_.Hash }
$fileContents = `
"Version: $version
dURL: https://github.com/mRemoteNG/mRemoteNG/releases/download/$TagName/$($MsiFile.Name)
clURL: https://raw.githubusercontent.com/mRemoteNG/mRemoteNG/$TagName/CHANGELOG.TXT
CertificateThumbprint: $certThumbprint
Checksum: $hash"
Write-Output $fileContents
}
function New-ZipUpdateFileContent {
param (
[System.IO.FileInfo]
[Parameter(Mandatory=$true)]
$ZipFile,
[string]
[Parameter(Mandatory=$true)]
$TagName
)
$version = $ZipFile.BaseName -replace "[a-zA-Z-]*"
$hash = Get-FileHash -Algorithm SHA512 $ZipFile | % { $_.Hash }
$fileContents = `
"Version: $version
dURL: https://github.com/mRemoteNG/mRemoteNG/releases/download/$TagName/$($ZipFile.Name)
clURL: https://raw.githubusercontent.com/mRemoteNG/mRemoteNG/$TagName/CHANGELOG.TXT
Checksum: $hash"
Write-Output $fileContents
}
function Resolve-UpdateCheckFileName {
param (
[string]
[Parameter(Mandatory=$true)]
[ValidateSet("Stable","Beta","Development")]
$UpdateChannel,
[string]
[Parameter(Mandatory=$true)]
[ValidateSet("Normal","Portable")]
$Type
)
$fileName = ""
if ($UpdateChannel -eq "Beta") { $fileName += "beta-" }
elseif ($UpdateChannel -eq "Development") { $fileName += "dev-" }
$fileName += "update"
if ($Type -eq "Portable") { $fileName += "-portable" }
$fileName += ".txt"
Write-Output $fileName
}
$releaseFolder = Join-Path -Path $PSScriptRoot -ChildPath "..\Release" -Resolve
# build msi update file
$msiFile = Get-ChildItem -Path "$releaseFolder\*.msi" | sort LastWriteTime | select -last 1
$msiUpdateContents = New-MsiUpdateFileContent -MsiFile $msiFile -TagName $TagName
$msiUpdateFileName = Resolve-UpdateCheckFileName -UpdateChannel $UpdateChannel -Type Normal
Write-Output "`n`nMSI Update Check File Contents ($msiUpdateFileName)`n------------------------------"
Tee-Object -InputObject $msiUpdateContents -FilePath "$releaseFolder\$msiUpdateFileName"
# build zip update file
$zipFile = Get-ChildItem -Path "$releaseFolder\*.zip" | sort LastWriteTime | select -last 1
$zipUpdateContents = New-ZipUpdateFileContent -ZipFile $zipFile -TagName $TagName
$zipUpdateFileName = Resolve-UpdateCheckFileName -UpdateChannel $UpdateChannel -Type Portable
Write-Output "`n`nZip Update Check File Contents ($zipUpdateFileName)`n------------------------------"
Tee-Object -InputObject $zipUpdateContents -FilePath "$releaseFolder\$zipUpdateFileName"

BIN
Tools/exes/dumpbin.exe Normal file

Binary file not shown.

BIN
Tools/exes/editbin.exe Normal file

Binary file not shown.

BIN
Tools/exes/link.exe Normal file

Binary file not shown.

BIN
Tools/exes/mspdbcore.dll Normal file

Binary file not shown.

BIN
Tools/exes/sigcheck.exe Normal file

Binary file not shown.

61
Tools/find_vstool.ps1 Normal file
View File

@@ -0,0 +1,61 @@
[CmdletBinding()]
param (
[string]
# Name of the file to find
$FileName
)
function EditBinCertificateIsValid() {
param (
[string]
$Path
)
# Verify file certificate
$valid_microsoft_cert_thumbprints = @(
"3BDA323E552DB1FDE5F4FBEE75D6D5B2B187EEDC",
"98ED99A67886D020C564923B7DF25E9AC019DF26",
"108E2BA23632620C427C570B6D9DB51AC31387FE",
"5EAD300DC7E4D637948ECB0ED829A072BD152E17"
)
$file_signature = Get-AuthenticodeSignature -FilePath $Path
if (($file_signature.Status -ne "Valid") -or ($valid_microsoft_cert_thumbprints -notcontains $file_signature.SignerCertificate.Thumbprint)) {
Write-Warning "Could not validate the signature of $Path"
return $false
} else {
return $true
}
}
function ToolCanBeExecuted {
param (
[string]
$Path
)
$null = & $Path
Write-Output ($LASTEXITCODE -gt 0)
}
$rootSearchPaths = @(
[System.IO.Directory]::EnumerateFileSystemEntries("C:\Program Files", "*Visual Studio*", [System.IO.SearchOption]::TopDirectoryOnly),
[System.IO.Directory]::EnumerateFileSystemEntries("C:\Program Files (x86)", "*Visual Studio*", [System.IO.SearchOption]::TopDirectoryOnly)
)
# Returns the first full path to the $FileName that our search can find
foreach ($searchPath in $rootSearchPaths) {
foreach ($visualStudioFolder in $searchPath) {
Write-Verbose "Searching in folder '$visualStudioFolder'"
$matchingExes = [System.IO.Directory]::EnumerateFileSystemEntries($visualStudioFolder, $FileName, [System.IO.SearchOption]::AllDirectories)
foreach ($matchingExe in $matchingExes) {
if ((EditBinCertificateIsValid -Path $matchingExe) -and (ToolCanBeExecuted -Path $matchingExe)) {
return $matchingExe
}
}
}
}
Write-Error "Could not find any valid file by the name $FileName." -ErrorAction Stop

235
Tools/github_functions.ps1 Normal file
View File

@@ -0,0 +1,235 @@
$githubUrl = 'https://api.github.com'
# GitHub doesn't support the default powershell protocol (TLS 1.0)
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
function Publish-GitHubRelease {
param (
[string]
[Parameter(Mandatory=$true)]
#
$Owner,
[string]
[Parameter(Mandatory=$true)]
#
$Repository,
[string]
[Parameter(Mandatory=$true)]
#
$ReleaseTitle,
[string]
[Parameter(Mandatory=$true)]
#
$TagName,
[string]
[Parameter(Mandatory=$true)]
# Either the SHA of the commit to target or the branch name.
$TargetCommitish,
[string]
[Parameter(Mandatory=$true)]
#
$Description,
[bool]
[Parameter(Mandatory=$true)]
#
$IsDraft,
[bool]
[Parameter(Mandatory=$true)]
#
$IsPrerelease,
[string]
[Parameter(Mandatory=$true)]
# The OAuth2 token to use for authentication.
$AuthToken
)
$body = New-GitHubReleaseRequestBody -TagName $TagName -TargetCommitish $TargetCommitish -ReleaseTitle $ReleaseTitle -Description $Description -IsDraft $IsDraft -IsPrerelease $IsPrerelease
$req_publishRelease = Invoke-WebRequest -Uri "$githubUrl/repos/$Owner/$Repository/releases" -Method Post -Headers @{"Authorization"="token $AuthToken"} -Body $body -ErrorAction Stop
$response_publishRelease = ConvertFrom-Json -InputObject $req_publishRelease.Content
Write-Output $response_publishRelease
}
function Edit-GitHubRelease {
param (
[string]
#[Parameter(Mandatory=$true)]
#
$Owner,
[string]
#[Parameter(Mandatory=$true)]
#
$Repository,
[string]
#[Parameter(Mandatory=$true)]
#
$ReleaseId,
[string]
#
$ReleaseTitle,
[string]
#
$TagName,
[string]
# Either the SHA of the commit to target or the branch name.
$TargetCommitish,
[string]
#
$Description,
[bool]
#
$IsDraft,
[bool]
#
$IsPrerelease,
[string]
#[Parameter(Mandatory=$true)]
# The OAuth2 token to use for authentication.
$AuthToken
)
$body_params = @{
"TagName" = $TagName
"TargetCommitish" = $TargetCommitish
"ReleaseTitle" = $ReleaseTitle
"Description" = $Description
}
if ($PSBoundParameters.ContainsKey("IsDraft")) { $body_params.Add("IsDraft", $IsDraft) }
if ($PSBoundParameters.ContainsKey("IsPrerelease")) { $body_params.Add("IsPrerelease", $IsPrerelease) }
$body = New-GitHubReleaseRequestBody @body_params
$req_editRelease = Invoke-WebRequest -Uri "$githubUrl/repos/$Owner/$Repository/releases/$ReleaseId" -Method Post -Headers @{"Authorization"="token $AuthToken"} -Body $body -ErrorAction Stop
$response_editRelease = ConvertFrom-Json -InputObject $req_editRelease.Content
Write-Output $response_editRelease
}
function Get-GitHubRelease {
param (
[string]
[Parameter(Mandatory=$true)]
#
$Owner,
[string]
[Parameter(Mandatory=$true)]
#
$Repository,
[string]
[Parameter(Mandatory=$true)]
#
$ReleaseId,
[string]
[Parameter(Mandatory=$true)]
# The OAuth2 token to use for authentication.
$AuthToken
)
$req_getRelease = Invoke-WebRequest -Uri "$githubUrl/repos/$Owner/$Repository/releases/$ReleaseId" -Method Get -Headers @{"Authorization"="token $AuthToken"} -ErrorAction Stop
$response_getRelease = ConvertFrom-Json -InputObject $req_getRelease.Content
Write-Output $response_getRelease
}
function Upload-GitHubReleaseAsset {
param (
[string]
[Parameter(Mandatory=$true)]
$UploadUri,
[string]
[Parameter(Mandatory=$true)]
# Path to the file to upload with the release
$FilePath,
[string]
[Parameter(Mandatory=$true)]
# Content type of the file
$ContentType,
[string]
[Parameter(Mandatory=$true)]
# The OAuth2 token to use for authentication.
$AuthToken,
[string]
# A short description label for the asset
$Label = ""
)
$UploadUri = $UploadUri -replace "(\{[\w,\?]*\})$"
$files = Get-Item -Path $FilePath
$labelParam = ""
if ($Label -ne "") {
$labelParam = "&label=$Label"
}
# Get-Item could produce an array of files if a wildcard is provided. (C:\*.txt)
# Upload each matching item individually
foreach ($file in $files) {
Write-Output "Uploading asset to GitHub release: '$($file.FullName)'"
$req_uploadZipAsset = Invoke-WebRequest -Uri "$($UploadUri)?name=$($file.Name)$labelParam" -Method Post -Headers @{"Authorization"="token $AuthToken"} -ContentType $ContentType -InFile $file.FullName -ErrorAction Stop
}
}
function New-GitHubReleaseRequestBody {
param (
[string]
#
$TagName,
[string]
# Either the SHA of the commit to target or the branch name.
$TargetCommitish,
[string]
# Title of the release
$ReleaseTitle,
[string]
# Description of the release
$Description,
[bool]
# Is this a draft?
$IsDraft,
[bool]
# Is this a pre-release?
$IsPrerelease
)
$body_params = [ordered]@{}
if ($TagName -ne "") { $body_params.Add("tag_name", $TagName) }
if ($TargetCommitish -ne "") { $body_params.Add("target_commitish", $TargetCommitish) }
if ($ReleaseTitle -ne "") { $body_params.Add("name", $ReleaseTitle) }
if ($Description -ne "") { $body_params.Add("body", $Description) }
if ($PSBoundParameters.ContainsKey("IsDraft")) { $body_params.Add("draft", $IsDraft) }
if ($PSBoundParameters.ContainsKey("IsPrerelease")) { $body_params.Add("prerelease", $IsPrerelease) }
$json_body = ConvertTo-Json -InputObject $body_params -Compress
Write-Output $json_body
}

23
Tools/move_help_files.ps1 Normal file
View File

@@ -0,0 +1,23 @@
param (
[string]
[Parameter(Mandatory=$true)]
$TargetDir
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
$path_HelpFilesDir = Join-Path -Path $TargetDir -ChildPath "Help"
Write-Output "Moving Help files to correct directory"
# Remove stale Help files, if they exist
if (Test-Path -Path $path_HelpFilesDir) {
Remove-Item -Path $path_HelpFilesDir -Recurse -Force
}
# Move Help files
Move-Item -Path (Join-Path -Path $TargetDir -ChildPath "Resources\Help") -Destination $path_HelpFilesDir -Force
Start-Sleep -Seconds 2
Remove-Item -Path (Join-Path -Path $TargetDir -ChildPath "Resources") -Recurse -Force
Write-Output ""

View File

@@ -0,0 +1,43 @@
param (
[string]
[Parameter(Mandatory=$true)]
$SolutionDir,
[string]
[Parameter(Mandatory=$true)]
$TargetDir,
[string]
[Parameter(Mandatory=$true)]
$TargetFileName,
[string]
[Parameter(Mandatory=$true)]
$ConfigurationName,
[string]
$CertificatePath,
[string]
$CertificatePassword,
[string[]]
$ExcludeFromSigning
)
Write-Output "+=================================================================+"
Write-Output "| Beginning mRemoteNG Installer Post Build |"
Write-Output "+=================================================================+"
Format-Table -AutoSize -Wrap -InputObject @{
"SolutionDir" = $SolutionDir
"TargetDir" = $TargetDir
"TargetFileName" = $TargetFileName
"ConfigurationName" = $ConfigurationName
"ExcludeFromSigning" = $ExcludeFromSigning
}
& "$PSScriptRoot\sign_binaries.ps1" -TargetDir $TargetDir -CertificatePath $CertificatePath -CertificatePassword $CertificatePassword -ConfigurationName $ConfigurationName -Exclude $ExcludeFromSigning
& "$PSScriptRoot\verify_binary_signatures.ps1" -TargetDir $TargetDir -ConfigurationName $ConfigurationName -CertificatePath $CertificatePath
& "$PSScriptRoot\rename_installer_with_version.ps1" -SolutionDir $SolutionDir
& "$PSScriptRoot\copy_release_installer.ps1" -SourcePath $TargetDir -DestinationDir (Join-Path -Path $SolutionDir -ChildPath "Release")

View File

@@ -0,0 +1,50 @@
param (
[string]
[Parameter(Mandatory=$true)]
$SolutionDir,
[string]
[Parameter(Mandatory=$true)]
$TargetDir,
[string]
[Parameter(Mandatory=$true)]
$TargetFileName,
[string]
[Parameter(Mandatory=$true)]
$ConfigurationName,
[string]
$CertificatePath,
[string]
$CertificatePassword,
[string[]]
$ExcludeFromSigning
)
Write-Output "+=================================================================+"
Write-Output "| Beginning mRemoteV1 Post Build |"
Write-Output "+=================================================================+"
Format-Table -AutoSize -Wrap -InputObject @{
"SolutionDir" = $SolutionDir
"TargetDir" = $TargetDir
"TargetFileName" = $TargetFileName
"ConfigurationName" = $ConfigurationName
"ExcludeFromSigning" = $ExcludeFromSigning
}
& "$PSScriptRoot\copy_puttyng.ps1" -SolutionDir $SolutionDir -TargetDir $TargetDir
& "$PSScriptRoot\copy_themes.ps1" -SolutionDir $SolutionDir -TargetDir $TargetDir
& "$PSScriptRoot\move_help_files.ps1" -TargetDir $TargetDir
& "$PSScriptRoot\set_LargeAddressAware.ps1" -TargetDir $TargetDir -TargetFileName $TargetFileName
& "$PSScriptRoot\verify_LargeAddressAware.ps1" -TargetDir $TargetDir -TargetFileName $TargetFileName
& "$PSScriptRoot\tidy_files_for_release.ps1" -TargetDir $TargetDir -ConfigurationName $ConfigurationName
& "$PSScriptRoot\sign_binaries.ps1" -TargetDir $TargetDir -CertificatePath $CertificatePath -CertificatePassword $CertificatePassword -ConfigurationName $ConfigurationName -Exclude $ExcludeFromSigning
& "$PSScriptRoot\verify_binary_signatures.ps1" -TargetDir $TargetDir -ConfigurationName $ConfigurationName -CertificatePath $CertificatePath
& "$PSScriptRoot\zip_symbols.ps1" -SolutionDir $SolutionDir -TargetDir $TargetDir -ConfigurationName $ConfigurationName
& "$PSScriptRoot\zip_portable_files.ps1" -SolutionDir $SolutionDir -TargetDir $TargetDir -ConfigurationName $ConfigurationName

View File

@@ -0,0 +1,25 @@
param (
[string]
[Parameter(Mandatory=$true)]
#
$Owner,
[string]
[Parameter(Mandatory=$true)]
#
$Repository,
[string]
[Parameter(Mandatory=$true)]
#
$ReleaseId,
[string]
[Parameter(Mandatory=$true)]
# The OAuth2 token to use for authentication.
$AuthToken
)
. "$PSScriptRoot\github_functions.ps1"
Edit-GitHubRelease -Owner $Owner -Repository $Repository -ReleaseId $ReleaseId -AuthToken $AuthToken -IsDraft $false

View File

@@ -0,0 +1,81 @@
param (
[string]
[Parameter(Mandatory=$true)]
#
$Owner,
[string]
[Parameter(Mandatory=$true)]
#
$Repository,
[string]
[Parameter(Mandatory=$true)]
#
$ReleaseTitle,
[string]
[Parameter(Mandatory=$true)]
#
$TagName,
[string]
[Parameter(Mandatory=$true)]
# Either the SHA of the commit to target or the branch name.
$TargetCommitish,
[string]
[Parameter(Mandatory=$true)]
#
$Description,
[string]
[Parameter(Mandatory=$true)]
[ValidateSet("true","false")]
# true/false
$IsDraft,
[string]
[Parameter(Mandatory=$true)]
[ValidateSet("true","false")]
# true/false
$IsPrerelease,
[string]
[Parameter(Mandatory=$true)]
# Path to the folder which contains release assets to upload
$ReleaseFolderPath,
[string]
[Parameter(Mandatory=$true)]
# The OAuth2 token to use for authentication.
$AuthToken,
[switch]
# Enable this switch to treat $Description as a Base64 encoded string. It will be decoded before being used elsewhere in the script.
$DescriptionIsBase64Encoded
)
if ($DescriptionIsBase64Encoded) {
$Description = ([System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($Description)))
}
. "$PSScriptRoot\github_functions.ps1"
$releaseFolderItems = Get-ChildItem -Path $ReleaseFolderPath
$mrngPortablePath = ($releaseFolderItems | ?{$_.Name -match "portable-[\d\.]+\.zip"}).FullName
$mrngNormalPath = ($releaseFolderItems | ?{$_.Name -match "installer-[\d\.]+\.msi"}).FullName
$mrngPortableSymbolsPath = ($releaseFolderItems | ?{$_.Name -match "mremoteng-portable-symbols-[\d\.]+\.zip"}).FullName
$mrngNormalSymbolsPath = ($releaseFolderItems | ?{$_.Name -match "mremoteng-symbols-[\d\.]+\.zip"}).FullName
$release = Publish-GitHubRelease -Owner $Owner -Repository $Repository -ReleaseTitle $ReleaseTitle -TagName $TagName -TargetCommitish $TargetCommitish -Description $Description -IsDraft ([bool]::Parse($IsDraft)) -IsPrerelease ([bool]::Parse($IsPrerelease)) -AuthToken $AuthToken
$zipUpload = Upload-GitHubReleaseAsset -UploadUri $release.upload_url -FilePath $mrngPortablePath -ContentType "application/zip" -AuthToken $AuthToken -Label "Portable Edition (zip)"
$msiUpload = Upload-GitHubReleaseAsset -UploadUri $release.upload_url -FilePath $mrngNormalPath -ContentType "application/octet-stream" -AuthToken $AuthToken -Label "Normal Edition (msi)"
$portableEditionSymbols = Upload-GitHubReleaseAsset -UploadUri $release.upload_url -FilePath $mrngPortableSymbolsPath -ContentType "application/zip" -AuthToken $AuthToken -Label "Portable Edition Debug Symbols"
$normalEditionSymbols = Upload-GitHubReleaseAsset -UploadUri $release.upload_url -FilePath $mrngNormalSymbolsPath -ContentType "application/zip" -AuthToken $AuthToken -Label "Normal Edition Debug Symbols"
Write-Output (Get-GitHubRelease -Owner $Owner -Repository $Repository -ReleaseId $release.id -AuthToken $AuthToken)

View File

@@ -0,0 +1,29 @@
param (
[string]
$SolutionDir
)
$renameTarget = $SolutionDir + "InstallerProjects\Installer\bin\Release\en-US\mRemoteNG-Installer.msi"
Write-Host $SolutionDir
Write-Host $renameTarget
$targetVersionedFile = "$SolutionDir\mRemoteV1\bin\Release\mRemoteNG.exe"
$version = &"$SolutionDir\Tools\exes\sigcheck.exe" /accepteula -q -n $targetVersionedFile
$renameTargetFileObject = Get-Item -Path $renameTarget -ErrorAction SilentlyContinue
if ($renameTargetFileObject)
{
# Build the new file name
$oldFileName = $renameTargetFileObject.Name
$newFileName = $oldFileName -replace "$("\"+$renameTargetFileObject.Extension)",$("-"+$version+$renameTargetFileObject.Extension)
Write-Host $oldFileName
Write-Host $newFileName
# Delete any items that already exist with the new name (effectively an overwrite)
Remove-Item -Path "$($renameTargetFileObject.Directory.FullName)\$newFileName" -ErrorAction SilentlyContinue
# Rename file
Rename-Item -Path $renameTarget -NewName $newFileName -ErrorAction SilentlyContinue
}

View File

@@ -0,0 +1,22 @@
[CmdletBinding()]
param (
[string]
[Parameter(Mandatory=$true)]
$TargetDir,
[string]
[Parameter(Mandatory=$true)]
$TargetFileName
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
$path_editBin = Join-Path -Path $PSScriptRoot -ChildPath "exes\editbin.exe"
$path_outputExe = Join-Path -Path $TargetDir -ChildPath $TargetFileName
# Set LargeAddressAware
Write-Output "Setting LargeAddressAware on binary file:`n`"$path_outputExe`" `nwith:`n`"$path_editBin`""
& "$path_editBin" /largeaddressaware "$path_outputExe"
Write-Output ""

76
Tools/sign_binaries.ps1 Normal file
View File

@@ -0,0 +1,76 @@
param (
[string]
[Parameter(Mandatory=$true)]
$TargetDir,
[string]
[Parameter(Mandatory=$true)]
$ConfigurationName,
[string[]]
# File names to exclude from signing
$Exclude,
[string]
# The code signing certificate to use when signing the files.
$CertificatePath,
[string]
# Password to unlock the code signing certificate.
$CertificatePassword
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
$timeserver = "http://timestamp.verisign.com/scripts/timstamp.dll"
if ($ConfigurationName -notmatch "Release") {
Write-Output "This is not a release build - we won't sign files."
return
}
if ($CertificatePath -eq "" -or !(Test-Path -Path $CertificatePath -PathType Leaf)) {
Write-Output "Certificate is not present - we won't sign files."
return
}
if ($CertificatePassword -eq "") {
Write-Output "No certificate password was provided - we won't sign files."
return
}
try {
$certKeyStore = [System.Security.Cryptography.X509Certificates.X509KeyStorageFlags]::MachineKeySet
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($CertificatePath, $CertificatePassword, $certKeyStore) -ErrorAction Stop
} catch {
Write-Output "Error loading certificate file - we won't sign files."
Write-Output $Error[0]
return
}
# Sign MSI if we are building a release version and the certificate is available
Write-Output "Signing Binaries"
Write-Output "Getting files from path: $TargetDir"
$signableFiles = Get-ChildItem -Path $TargetDir -Recurse | ?{$_.Extension -match "dll|exe|msi"} | ?{$Exclude -notcontains $_.Name}
$excluded_files = Get-ChildItem -Path $TargetDir -Recurse | ?{$_.Extension -match "dll|exe|msi"} | ?{$Exclude -contains $_.Name}
$excluded_files | ForEach-Object `
-Begin { Write-Output "The following files were excluded from signing due to being on the exclusion list:" } `
-Process { Write-Output "-- $($_.FullName)" }
Write-Output "Signable files count: $($signableFiles.Count)"
foreach ($file in $signableFiles) {
Set-AuthenticodeSignature -Certificate $cert -TimestampServer $timeserver -IncludeChain all -FilePath $file.FullName
}
# Release certificate
if ($cert -ne $null) {
$cert.Dispose()
}
Write-Output ""

31
Tools/signfiles.ps1 Normal file
View File

@@ -0,0 +1,31 @@
param(
[string]
[Parameter(Mandatory=$true)]
# Folder path that contains the files you would like to sign. Recursive.
$PathToSignableFiles,
[string]
# The code signing certificate to use when signing the files.
$CertificatePath = "C:\mRemoteNG_code_signing_cert.pfx",
[SecureString]
# Password to unlock the code signing certificate.
$CertificatePassword = (Get-Credential -Message "Enter password for the mRemoteNG code signing certificate" -UserName "USERNAME NOT NEEDED").Password,
[string[]]
# File names to exclude from signing
$Exclude
)
$timeserver = "http://timestamp.verisign.com/scripts/timstamp.dll"
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($CertificatePath, $CertificatePassword)
Write-Output "Getting files from path: $PathToSignableFiles"
$signableFiles = Get-ChildItem -Path $PathToSignableFiles -Recurse | ?{$_.Extension -match "dll|exe|msi"} | ?{$Exclude -notcontains $_.Name}
Write-Output "Signable files count: $($signableFiles.Count)"
foreach ($file in $signableFiles) {
Set-AuthenticodeSignature -Certificate $cert -TimestampServer $timeserver -IncludeChain all -FilePath $file.FullName
}

View File

@@ -0,0 +1,32 @@
param (
[string]
[Parameter(Mandatory=$true)]
$TargetDir,
[string]
[Parameter(Mandatory=$true)]
$ConfigurationName
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
# Remove unnecessary files from Release versions
if ($ConfigurationName -match "Release") {
Write-Output "Removing unnecessary files from Release versions"
Remove-Item -Path (Join-Path -Path $TargetDir -ChildPath "app.publish") -Recurse -Force
$filesToDelete = Get-ChildItem -Path $TargetDir -Recurse -Include @(
"*.publish",
"*.xml",
"*.backup",
"*.log",
"*vshost*",
"*.tmp"
)
Remove-Item -Path $filesToDelete.FullName
Write-Output $filesToDelete.FullName
}
else {
Write-Output "We will not remove anything - this is not a release build."
}
Write-Output ""

View File

@@ -0,0 +1,17 @@
# $FullPath Full path to the Microsoft executable to validate
param (
[string]
[Parameter(Mandatory=$true)]
$FullPath
)
$validMSCertThumbprints = @("3BDA323E552DB1FDE5F4FBEE75D6D5B2B187EEDC", "108E2BA23632620C427C570B6D9DB51AC31387FE", "98ED99A67886D020C564923B7DF25E9AC019DF26", "5EAD300DC7E4D637948ECB0ED829A072BD152E17")
$exeSignature = Get-AuthenticodeSignature -FilePath $FullPath
$baseErrorMsg = "Could not validate the certificate of $FullPath. "
if ($exeSignature.Status -ne "Valid") {
Write-Error -Message ($baseErrorMsg+"The signature was invalid.") -ErrorAction Stop
}
elseif ($validMSCertThumbprints -notcontains $exeSignature.SignerCertificate.Thumbprint) {
Write-Error -Message ($baseErrorMsg+"The certificate thumbprint ($($exeSignature.SignerCertificate.Thumbprint)) is not trusted.") -ErrorAction Stop
}

View File

@@ -0,0 +1,30 @@
[CmdletBinding()]
param (
[string]
[Parameter(Mandatory=$true)]
$TargetDir,
[string]
[Parameter(Mandatory=$true)]
$TargetFileName
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
$path_dumpBin = Join-Path -Path $PSScriptRoot -ChildPath "exes\dumpbin.exe"
$path_outputExe = Join-Path -Path $TargetDir -ChildPath $TargetFileName
# Dump exe header
$output = & "$path_dumpBin" /NOLOGO /HEADERS "$path_outputExe" | Select-String large
if ($output -eq $null)
{
Write-Warning "Could not validate LargeAddressAware"
}
else
{
Write-Output $output.ToString().TrimStart(" ")
}
Write-Output ""

View File

@@ -0,0 +1,48 @@
param (
[string]
[Parameter(Mandatory=$true)]
$TargetDir,
[string]
[Parameter(Mandatory=$true)]
$ConfigurationName,
[string]
[Parameter(Mandatory=$true)]
# The code signing certificate to use when signing the files.
$CertificatePath
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
# validate release versions and if the certificate is available
if ($ConfigurationName -match "Release") {
if ($CertificatePath -eq "" -or !(Test-Path -Path $CertificatePath -PathType Leaf))
{
Write-Output "Certificate is not present - files likely not signed - we won't verify file signatures."
return
}
Write-Output "Verifying signature of binaries"
Write-Output "Getting files from path: $TargetDir"
$signableFiles = Get-ChildItem -Path $TargetDir -Recurse | ?{$_.Extension -match "dll|exe|msi"}
Write-Output "Signable files count: $($signableFiles.Count)"
$badSignatureFound = $false
foreach ($file in $signableFiles) {
$signature = Get-AuthenticodeSignature -FilePath $file.FullName
if ($signature.Status -ne "Valid") {
Write-Warning "File $($file.FullName) does not have a valid signature."
$badSignatureFound = $true
}
}
if ($badSignatureFound) {
Write-Output "One or more files were improperly signed."
} else {
Write-Output "All files have valid signatures."
}
} else {
Write-Output "This is not a release build - we won't verify file signatures."
}
Write-Output ""

View File

@@ -0,0 +1,64 @@
param (
[string]
[Parameter(Mandatory=$true)]
$SolutionDir,
[string]
[Parameter(Mandatory=$true)]
$TargetDir,
[string]
[Parameter(Mandatory=$true)]
$ConfigurationName
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
if(-not [string]::IsNullOrEmpty($Env:APPVEYOR_BUILD_FOLDER)) {
Write-Output "Too early to run via Appveyor - artifacts don't get generated properly. Exiting"
Exit
}
Write-Output "Solution Dir: '$($SolutionDir)'"
Write-Output "Target Dir: '$($TargetDir)'"
$ConfigurationName = $ConfigurationName.Trim()
Write-Output "Config Name (tirmmed): '$($ConfigurationName)'"
# Windows Sysinternals Sigcheck from http://technet.microsoft.com/en-us/sysinternals/bb897441
$SIGCHECK="$($SolutionDir)Tools\exes\sigcheck.exe"
$SEVENZIP="$($SolutionDir)Tools\7zip\7za.exe"
# Package Zip
if ($ConfigurationName -eq "Release Portable") {
Write-Output "Packaging Release Portable ZIP"
$version = & $SIGCHECK /accepteula -q -n "$($SolutionDir)mRemoteV1\bin\$($ConfigurationName)\mRemoteNG.exe"
Write-Output "Version is $($version)"
$PortableZip="$($SolutionDir)Release\mRemoteNG-Portable-$($version).zip"
$tempFolderPath = Join-Path -Path $SolutionDir -ChildPath "mRemoteV1\bin\package"
Remove-Item -Recurse $tempFolderPath -ErrorAction SilentlyContinue | Out-Null
New-Item $tempFolderPath -ItemType "directory" | Out-Null
Copy-Item "$($SolutionDir)mRemoteV1\Resources\PuTTYNG.exe" -Destination $tempFolderPath
#Write-Output "$($SolutionDir)mRemoteV1\bin\$ConfigurationName"
#Write-Output "$($SolutionDir)mRemoteV1\bin\package"
Copy-Item "$($SolutionDir)mRemoteV1\bin\$ConfigurationName\*" -Destination $tempFolderPath -Recurse -Force
# Delete any PDB files that accidentally get copied into the temp folder
Get-ChildItem -Path $tempFolderPath -Filter "*.pdb" | Remove-Item
Copy-Item "$($SolutionDir)*.txt" -Destination $tempFolderPath
Write-Output "Creating portable ZIP file $($PortableZip)"
Remove-Item -Force $PortableZip -ErrorAction SilentlyContinue
& $SEVENZIP a -bt -bd -bb1 -mx=9 -tzip -y -r $PortableZip (Join-Path -Path $tempFolderPath -ChildPath "*.*")
#& $SEVENZIP a -bt -mx=9 -tzip -y $PortableZip "$($SolutionDir)*.TXT"
}
else {
Write-Output "We will not zip anything - this isnt a portable release build."
}
Write-Output ""

View File

@@ -0,0 +1,39 @@
if([string]::IsNullOrEmpty($Env:APPVEYOR_BUILD_FOLDER)) {
Write-Output "NOT running via Appveyor - Exiting"
Exit
}
$appvDir = $Env:APPVEYOR_BUILD_FOLDER
Write-Output "Appveyor Build Dir: '$($appvDir)'"
$ConfigurationName = $Env:CONFIGURATION.Trim()
Write-Output "Config Name (tirmmed): '$($ConfigurationName)'"
$SIGCHECK="$($SolutionDir)Tools\exes\sigcheck.exe"
$SEVENZIP="$($SolutionDir)Tools\7zip\7za.exe"
if ($ConfigurationName -eq "Release Portable") {
Write-Output "Packaging Release Portable ZIP"
$version = & $SIGCHECK /accepteula -q -n "$($SolutionDir)mRemoteV1\bin\$($ConfigurationName)\mRemoteNG.exe"
Write-Output "Version is $($version)"
$PortableZip="$($SolutionDir)Release\mRemoteNG-Portable-$($version).zip"
Remove-Item -Recurse "$($SolutionDir)mRemoteV1\bin\package" -ErrorAction SilentlyContinue | Out-Null
New-Item "$($SolutionDir)mRemoteV1\bin\package" -ItemType "directory" | Out-Null
Copy-Item "$($SolutionDir)mRemoteV1\Resources\PuTTYNG.exe" -Destination "$($SolutionDir)mRemoteV1\bin\package"
Copy-Item "$($SolutionDir)mRemoteV1\bin\$ConfigurationName\*" -Destination "$($SolutionDir)mRemoteV1\bin\package" -Recurse -Force
Copy-Item "$($SolutionDir)*.txt" -Destination "$($SolutionDir)mRemoteV1\bin\package"
Write-Output "Creating portable ZIP file $($PortableZip)"
Remove-Item -Force $PortableZip -ErrorAction SilentlyContinue
& $SEVENZIP a -bt -bd -bb1 -mx=9 -tzip -y -r $PortableZip "$($SolutionDir)mRemoteV1\bin\package\*.*"
}
else {
Write-Output "We will not zip anything - this isnt a portable release build."
}

56
Tools/zip_symbols.ps1 Normal file
View File

@@ -0,0 +1,56 @@
param (
[string]
[Parameter(Mandatory=$true)]
$SolutionDir,
[string]
[Parameter(Mandatory=$true)]
$TargetDir,
[string]
[Parameter(Mandatory=$true)]
$ConfigurationName
)
Write-Output "===== Beginning $($PSCmdlet.MyInvocation.MyCommand) ====="
if(-not [string]::IsNullOrEmpty($Env:APPVEYOR_BUILD_FOLDER)) {
Write-Output "Too early to run via Appveyor - artifacts don't get generated properly. Exiting"
Exit
}
Write-Output "Solution Dir: '$($SolutionDir)'"
Write-Output "Target Dir: '$($TargetDir)'"
$ConfigurationName = $ConfigurationName.Trim()
Write-Output "Config Name (trimmed): '$($ConfigurationName)'"
# Windows Sysinternals Sigcheck from http://technet.microsoft.com/en-us/sysinternals/bb897441
$SIGCHECK="$($SolutionDir)Tools\exes\sigcheck.exe"
$SEVENZIP="$($SolutionDir)Tools\7zip\7za.exe"
# Package Zip
if ($ConfigurationName -match "Release") {
Write-Output "Packaging debug symbols"
$version = & $SIGCHECK /accepteula -q -n "$($SolutionDir)mRemoteV1\bin\$($ConfigurationName)\mRemoteNG.exe"
Write-Output "Version is $($version)"
if ($ConfigurationName -match "Portable") {
$zipFilePrefix = "mRemoteNG-Portable-symbols"
} else {
$zipFilePrefix = "mRemoteNG-symbols"
}
$outputZipPath="$($SolutionDir)Release\$zipFilePrefix-$($version).zip"
Write-Output "Creating debug symbols ZIP file $($outputZipPath)"
Remove-Item -Force $outputZipPath -ErrorAction SilentlyContinue
& $SEVENZIP a -bt -bd -bb1 -mx=9 -tzip -y -r $outputZipPath (Join-Path -Path $TargetDir -ChildPath "*.pdb")
}
else {
Write-Output "We will not package debug symbols - this isnt a release build."
}
Write-Output ""

28
appveyor.yml Normal file
View File

@@ -0,0 +1,28 @@
version: 1.76.{build}
pull_requests:
do_not_increment_build_number: true
image: Visual Studio 2017
configuration:
- Release
- Release Portable
- Release Installer
platform: x86
clone_depth: 1
install:
- ps: C:\projects\mremoteng\mRemoteV1\Resources\CitrixReceiver.exe DONOTSTARTCC=1 ENABLE_SSON="No" /silent | out-null
before_build:
- cmd: nuget restore
build:
project: mRemoteV1.sln
verbosity: normal
after_build:
- ps: "if([string]::IsNullOrEmpty($Env:APPVEYOR_BUILD_FOLDER)) {\n Write-Output \"NOT running via Appveyor - Exiting\"\n Exit\n}\n\n$appvDir = $Env:APPVEYOR_BUILD_FOLDER\n\nWrite-Output \"Appveyor Build Dir: '$($appvDir)'\"\n$ConfigurationName = $Env:CONFIGURATION.Trim()\nWrite-Output \"Config Name (tirmmed): '$($ConfigurationName)'\"\n\n\n$SIGCHECK=\"$($SolutionDir)Tools\\exes\\sigcheck.exe\"\n$SEVENZIP=\"$($SolutionDir)Tools\\7zip\\7za.exe\"\n\nif ($ConfigurationName -eq \"Release Portable\") {\n Write-Output \"Packaging Release Portable ZIP\"\n \n $version = & $SIGCHECK /accepteula -q -n \"$($SolutionDir)mRemoteV1\\bin\\$($ConfigurationName)\\mRemoteNG.exe\"\n\n Write-Output \"Version is $($version)\"\n\n $PortableZip=\"$($SolutionDir)Release\\mRemoteNG-Portable-$($version).zip\"\n\n Remove-Item -Recurse \"$($SolutionDir)mRemoteV1\\bin\\package\" -ErrorAction SilentlyContinue | Out-Null\n New-Item \"$($SolutionDir)mRemoteV1\\bin\\package\" -ItemType \"directory\" | Out-Null\n \n Copy-Item \"$($SolutionDir)mRemoteV1\\Resources\\PuTTYNG.exe\" -Destination \"$($SolutionDir)mRemoteV1\\bin\\package\"\n\n Copy-Item \"$($SolutionDir)mRemoteV1\\bin\\$ConfigurationName\\*\" -Destination \"$($SolutionDir)mRemoteV1\\bin\\package\" -Recurse -Force \n Copy-Item \"$($SolutionDir)*.txt\" -Destination \"$($SolutionDir)mRemoteV1\\bin\\package\"\n\n Write-Output \"Creating portable ZIP file $($PortableZip)\"\n Remove-Item -Force $PortableZip -ErrorAction SilentlyContinue\n & $SEVENZIP a -bt -bd -bb1 -mx=9 -tzip -y -r $PortableZip \"$($SolutionDir)mRemoteV1\\bin\\package\\*.*\"\n}\nelse {\n Write-Output \"We will not zip anything - this isnt a portable release build.\"\n}"
test:
assemblies:
only:
- mRemoteNGTests\bin\$(configuration)\mRemoteNGTests.dll
artifacts:
- path: Release\*.msi
name: mRemoteNG-installer.msi
- path: Release\*.zip
name: mRemoteNG-portable.zip

View File

@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="specFlow" type="TechTalk.SpecFlow.Configuration.ConfigurationSectionHandler, TechTalk.SpecFlow" />
</configSections>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="WeifenLuo.WinFormsUI.Docking" publicKeyToken="5cded1a1a0a7b481" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.16.0.0" newVersion="2.16.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6" />
</startup>
<specFlow>
<!-- For additional details on SpecFlow configuration options see http://go.specflow.org/doc-config -->
<!-- For additional details on SpecFlow configuration options see http://go.specflow.org/doc-config -->
<unitTestProvider name="NUnit" />
</specFlow>
</configuration>

View File

@@ -0,0 +1,25 @@
Feature: CredentialRepository
As a user with several environments
I would like to load multiple credential repositories
In order to keep credentials separate
@credentials
Scenario: Load credential repository
Given I have a credential repository
And the credential repository is unloaded
When I click load
Then the credential repository is loaded
Scenario: Add credential record
Given I have a credential repository
And The credential repository is loaded
And The repository has 0 credentials
When I click add credential
Then the repository has 1 credentials
Scenario: Unload credential repository
Given I have a credential repository
And The credential repository is loaded
And The repository has 1 credentials
When I click unload
Then the credentials in the repository will no longer be available

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