show rdp port on button and set rdpport in console (#5708)
* add rdpport to console Signed-off-by: si458 <simonsmith5521@gmail.com> * add port number to rdp connect button Signed-off-by: si458 <simonsmith5521@gmail.com> --------- Signed-off-by: si458 <simonsmith5521@gmail.com>
Simon Smith committed
Jan 19, 2024 at 02:56 UTC
a2aed9e772cef0ea43eba756475a41a9a27e95eb
2 files changed
+40
-1
agents/meshcore.js
+39
-1
@@ -3767,7 +3767,7 @@ function processConsoleCommand(cmd, args, rights, sessionid) {
3767
if (require('os').dns != null) { availcommands += ',dnsinfo'; }
3768
try { require('linux-dhcp'); availcommands += ',dhcp'; } catch (ex) { }
3769
if (process.platform == 'win32') {
3770
- availcommands += ',cs,wpfhwacceleration,uac,volumes';
3770
+ availcommands += ',cs,wpfhwacceleration,uac,volumes,rdpport';
3771
if (bcdOK()) { availcommands += ',safemode'; }
3772
if (require('notifybar-desktop').DefaultPinned != null) { availcommands += ',privacybar'; }
3773
try { require('win-utils'); availcommands += ',taskbar'; } catch (ex) { }
@@ -4051,6 +4051,44 @@ function processConsoleCommand(cmd, args, rights, sessionid) {
4051
case 'timerinfo':
4052
response = require('ChainViewer').getTimerInfo();
4053
break;
4054
+ case 'rdpport':
4055
+ if (process.platform != 'win32') {
4056
+ response = 'Unknown command "rdpport", type "help" for list of available commands.';
4057
+ return;
4058
+ }
4059
+ if (args['_'].length == 0) {
4060
+ response = 'Proper usage: rdpport [get|default|PORTNUMBER]';
4061
+ } else {
4062
+ switch (args['_'][0].toLocaleLowerCase()) {
4063
+ case 'get':
4064
+ var rdpport = require('win-registry').QueryKey(require('win-registry').HKEY.LocalMachine, 'System\\CurrentControlSet\\Control\\Terminal Server\\WinStations\\RDP-Tcp', 'PortNumber');
4065
+ response = "Current RDP Port Set To: " + rdpport + '\r\n';
4066
+ break;
4067
+ case 'default':
4068
+ try {
4069
+ require('win-registry').WriteKey(require('win-registry').HKEY.LocalMachine, 'System\\CurrentControlSet\\Control\\Terminal Server\\WinStations\\RDP-Tcp', 'PortNumber', 3389);
4070
+ response = 'RDP Port Set To 3389, Please Dont Forget To Restart Your Computer To Fully Apply';
4071
+ } catch (ex) {
4072
+ response = 'Unable to Set RDP Port To: 3389';
4073
+ }
4074
+ break;
4075
+ default:
4076
+ if (isNaN(parseFloat(args['_'][0]))){
4077
+ response = 'Proper usage: rdpport [get|default|PORTNUMBER]';
4078
+ } else if(parseFloat(args['_'][0]) < 0 || args['_'][0] > 65535) {
4079
+ response = 'RDP Port Must Be More Than 0 And Less Than 65535';
4080
+ } else {
4081
+ try {
4082
+ require('win-registry').WriteKey(require('win-registry').HKEY.LocalMachine, 'System\\CurrentControlSet\\Control\\Terminal Server\\WinStations\\RDP-Tcp', 'PortNumber', parseFloat(args['_'][0]));
4083
+ response = 'RDP Port Set To ' + args['_'][0] + ', Please Dont Forget To Restart Your Computer To Fully Apply';
4084
+ } catch (ex) {
4085
+ response = 'Unable to Set RDP Port To: '+args['_'][0];
4086
+ }
4087
+ }
4088
+ break;
4089
+ }
4090
+ }
4091
+ break;
4092
case 'find':
4093
if (args['_'].length <= 1) {
4094
response = "Proper usage:\r\n find root criteria [criteria2] [criteria n...]";
views/default.handlebars
+1
@@ -8984,6 +8984,7 @@
8984
var online = ((currentNode.conn & 1) != 0); // If Agent (1) connected, enable remote desktop
8985
QE('connectbutton1', online);
8986
QE('connectbutton1r', online || (currentNode.mtype == 3));
8987
+ Q('connectbutton1r').value = 'RDP Connect' + ((currentNode.rdpport && currentNode.rdpport != 3389) ? ' ('+currentNode.rdpport + ')' : '');
8988
var hwonline = ((currentNode.conn & 6) != 0); // If CIRA (2) or AMT (4) connected, enable hardware terminal
8989
QE('connectbutton1h', hwonline);
8990
QV('deskFocusBtn', (desktop != null) && (desktop.contype == 2) && (deskState != 0) && (desktopsettings.showfocus));