# Remote Desktop Plus

Once upon a time in a company far, far away, I needed to find a way to have users automatically logon to a Remote Desktop session with a specific set of credentials. I searched everywhere, and although I did find some tools, none of them were exactly what I was looking for. So I decided to make one myself. With the help of a lot of information at RemkoWeijnen.nl and examples at Obviex, I managed to write my own utility, saving me tons of work. So a big thank you to all the posters at Remko’s site!

Having done that however, I saw more possibilities. Our network consists of about 500 servers. A good system administrator is a lazy system administrator and although I don’t know about the good part, at least I’ve got the lazy part nailed down. I don’t want to enter my credentials every time I connect to a server. Or save them and then have to resave them over and over again, every time I change a password.

So as a way to spend what little free time I have left, I started writing Remote Desktop Plus. It’s Remote Desktop, but with some added features. Basically it allows you to launch a Remote Desktop session using a username and password entered from the command line (autologin) or imported from a saved profile. But that’s not all…

### Features

• Login automatically from the command line.
• Supports launching and autologin of RemoteApps.
• Remote Desktop Plus (RDP+) is not a clone or copy of Remote Desktop. It’s just a shell for the normal Remote Desktop client (mstsc.exe) on your computer.
• Automatically trusts all local resources and the remote computer. No more annoying questions like: Do you trust the computer you are connecting to?
• Allows you to save credentials (securely) in profiles. Profiles normally only work for the user who saved them and only on the computer on which they were saved. Profiles can be useful when administering a large amount of computers from a single point of administration. Changed the password for Administrator? Just edit the profile and you’re done.
• Passwords entered from the command line can be encrypted for enhanced security. Useful when starting Remote Desktop from batch files or published applications (Citrix).
• Remote Desktop Plus features a special restricted kiosk mode in which only the computer, username, password, or any combination thereof can be changed. When used as a published application, this allows you to grant (internal or external) support departments remote access to a range of servers in a much safer way.
• You can also specify a range of computers the user is allowed to connect to. Any attempt to connect to computers not in the list will be denied.
• You can save frequently used connections as favorites for easy launching.
• When logging on to a computer with local credentials, Remote Desktop Plus will try to determine the actual computername, so you don’t have to specify a computername in front of the username (like nldb01sa). This is also useful when logging in to computers using an IP address instead of a computername (rdp /v:10.140.10.1 /u:administrator) or when logging on to Windows clusters.
• Supports connecting through a Remote Desktop Gateway server.
• Accepts both /console and /admin. No need to remember which version of Remote Desktop and/or which Service Pack for XP you’re running.
• Can set the working screen size to either the maximum available size (so it looks like a normal maximized application) or to a adjustable size – by setting either a margin or specifying a percentage of the screen – so you can still move it around a bit.
• When using multiple monitors, you can specify on which monitor the Remote Desktop session should be started.
• Supports specifying a startup program (i.e. alternate shell) from the command line. You can use both local and remote environment variables in the command.
• Features an optional system tray icon for launching and managing your favorites, and for quickly switching to currently active Remote Desktop sessions.
• Normally Remote Desktop times out after about 30 seconds when connecting to a non-responsive (or still booting) computer. But the age of modems is a thing of the past and time is precious, so Remote Desktop Plus times out after only 3 seconds.
• When you use a separate connection file, the normal Remote Desktop client will display the name of the connection file in front of the server name in the task bar (Support – nlprint01 – Remote Desktop). This means that as soon as you have more than a couple of programs running, the server name won’t be visible in the task bar anymore due to the text truncation. Not with Remote Desktop Plus! RDP+ will leave out the name of the connection file, so you’ll always be able to see the server name.
• You can even provide your own title text or icon if you want. This can be especially useful when using RDP+ as a gateway to start another Remote Desktop session.
• Has the ability to disable the close button in the title bar and remove the connection bar, thus forcing users to logoff gracefully instead of just disconnecting and leaving their remote sessions open.
• Allows you to specify in the command line which drives or drive types to redirect and/or which drive(s) to exclude from redirection.
• Ever had to login to multiple servers at once? Just enter those servers separated by commas and off you go.
• Remote Desktop Plus also has a load balancing and failover feature. Specify multiple servers and RDP+ will randomly pick one of the servers to connect to. If this server is unreachable, RDP+ will skip it and cycle trough the other servers in the list, until it finds a responsive one. You can use this for example for RemoteApps which are hosted on multiple servers.
• Has the ability to log all connections in a log file or the event log.
• Still missing some command line parameters? RDP+ supports every option supported by the Remote Desktop .rdp file, using a special command line parameter. This gives you an unprecedented control over every aspect of the session, straight from the command line and without the need for specific RDP+ command line switches.
• Some settings and options can be controlled through Group Policies. Group Policy templates for these settings are available for download on the site.
• RDP+ has a very small footprint. It consists of a single file, less then 250 KB. No installation required on the client.
• Contains no spyware, adware, browser toolbars, nag screens, phone home mechanisms or any of that stuff. And it never will.

### Screenshots

Note: The GUI only appears when no remote computer has been specified or when the command line option /gui is used.

### Command line parameters

Remote Desktop Plus supports the following command line parameters:

[/domain[:domain]] [/console | /admin] [/[no]printers] [/nodrives | drives[:drive[,...]]] [/[no]sound] [/[no]wallpaper] [/f[ullscreen] |
/fit[:fitvalue] | /max | [/w:width] [/h:height]] [/mon:monitor] [/title:"title text"] [/icon:"icon file"] [/start:"program"] [/noclose] [/wait]
[/disconnect] | [/remoteapp:"||remoteapp"]] [/lb | /t[:seconds]] [multimon] [/o:"option,[...]“] [/encrypt] [/gui] [/kiosk:[mask]]
[allowed:target[,...]] [/log[:"log file"]] [/tray] [/batch] [@"command file"]

### Examples

rdp /v:nlmail01 /u:administrator /p:P@ssw0rd! /max /mon:2

rdp /i:”Domain Admin” /fit /drives /noprinters /title:”%s (%u) – Remote Desktop”

rdp “G:\RDP\Support.rdp” /v:nlfps01 /u:helpdesk@donkz.local /drives:fixed,-c:,p: /log:G:\RDP\rdp%y%m%d.log

rdp /v:nlts03 /remoteapp:”||FileZilla” /u:donkz\ftp /p:Tr@ns1t

rdp /i:”Backup User” /kiosk /w:1024 /h:768 /allowed:10.10.*.*,nlfps-*.donkz.local /domain:donkz

rdp /v:nlapp01 /i:”Control Center” /noclose /o:”redirectcomports:i:1, redirectsmartcards:i:1″

rdp /v:nlts01,nlts02,nlts03,nlts04 /lb /remoteapp:”||e-Help Client 3.0″ /u:donkz\helpdesk /pe:dixYA/m8pOHVVkQLAI9ifQ==

rdp /v:nldmz01 /u:donkz\dmz /p:P@ssw0rd! /start:”mstsc \\nlfps01\config$\RDP\DMZ.rdp /f” /title:”Standby Support” /icon:”%WINDIR%\System32\shell32.dll,43″ rdp /v:nldc05,nldc06 /i /console /fit:35 rdp /v:nlapp02 /u:donkz\internetkiosk /pe:356zm6vRajBcS3mnnudOOh43bZKSWewQ /noprinters /nodrives /start:”C:\Program Files\Internet Explorer\iexplore.exe -k http://www.microsoft.com” rdp /v:nlapp03 /u:donkz\helpdesk /start:”\”C:\Program Files\Remote Control\rc.exe\” \”\\nlfps01\Config$\RC\\%COMPUTERNAME\%\%USERNAME%.cfg\”"

rdp /v:nlfps02 @options.txt /kiosk:011 /gui /log /tray

rdp /u:%USERDOMAIN%\%USERNAME% /kiosk:101 /gui /fit:95% /eventlog

Myself, I use the second example the most. Just create a shortcut in your Quick Launch toolbar and you only have to enter the desired server name.

### Notes

Profiles

Normally profiles are saved with the highest level of security, which means they can only be used using the account which created them and only on the computer they were created on. As of version 5.0, you can now also save profiles using a less strict security, which means they’ll be available on any other computer and will ‘roam’ with you.
Please note however that because no external password key is used, a determined individual with the right tools (debuggers, disassemblers), the right knowledge of programming, access to the registry or computer of the user, and some other ingredients, could potentially break the encryption, so use this option with care.

Also new is the add-on tool RDPProfile.exe, which allows you to automatically create profiles from the command line. You could use this from a login script to pre-populate some profiles for end users.

Startup program

If you need to use double quotes in the /start startup program, you have to put a backslash () in front of each quote. You can also use environment variables in your command, both local and from the remote computer. To use remote environment variables, you must precede the percent signs with a backslash.

Combined example:
rdp /v:nlapp03 /u:donkzdomainhelpdesk /start:”"C:Program FilesRemote Controlrc.exe” “\nlfps01Config$RC\%COMPUTERNAME%%USERNAME%.cfg”" If Remote Desktop Plus is started by user JohnDoe, the last part of the command will be expanded to “\nlfps01Config$RCNLAPP03JohnDoe.cfg”.

Title

You can set a user defined text as your title bar by using the option /title. You can use local environment variables in your title plus these two special variables:
%s: Will be expanded to the server name you’ve connected to.
%u: Will be expanded to the username used to login to the remote computer.

Example:
rdp /i:”Domain Admin” /fit /title:”%s (%u) – Remote Desktop”

When connecting to the server nlfps01, this would result in the title bar text nlfps01 (DONKZDOMAINAdministrator) – Remote Desktop.

Icon

You can also use your own icon for the session by using the option /icon. This can be either a normal icon file (G:IconsRemote.ico) or an executable or .dll file (%ProgramFiles%Internet Exploreriexplore.exe). For files containing multiple icons, you can specify the desired icon using its index (%WINDIR%System32shell32.dll,43).

Please note that using /icon will also force an implied /wait, due to the way Windows retains (or does not retain) dynamically changed icons when the program which requested the changes is closed.

RemoteApps

You can start a RemoteApp with Remote Desktop Plus, either from the command line or specified in the .rdp file. You can enter the RemoteApp using either its name (“||FileZilla”) or the full path to the executable (C:WindowsSystem32Notepad.exe). When using the name, always enclose it between double quotes, otherwise your system may confuse the double pipe signs with the double pipes used in batch scripting.
All options concerning the screen (like /fit and /mon) are ignored when using RemoteApps. The same goes for /title and /icon. Due to the way the Remote Desktop client launches all RemoteApps in a general, embedded instance of mstsc.exe, the option /wait is also not supported.

Remote Desktop Gateway

Remote Desktop Plus can login to remote servers through a Remote Desktop Gateway. There are no command line switches, so all options must be configured from the normal Remote Desktop client and saved in a .rdp file, or entered through the /o option. When you select the option Use my RD Gateway credentials for the remote computer, RDP+ will also automatically login to the RD Gateway. If not, you will be prompted for credentials.

Kiosk mode

With the kiosk mode, you can set the GUI to a special restricted mode, in which only the fields for the target computer, username and password are shown. Using a 3-character ‘mask’, you can enable or disable any of the three fields. Each character in the mask stands for one of the three fields (computername, username, password). A 1 will enable the field, a 0 will disable it. For example, /kiosk:011 will disable the computername field and only allow the user to enter the username and password.
The kiosk mode will default to 100 when a mask has not been specified.

Allowed targets list

Using the /allowed command line option, you can restrict users to only a selected range of computers. If the user tries to connect to a computer which is not in the allowed target list, the connection will be denied. This can be especially useful for publishing RDP+ to ‘untrusted’ users.

You can use wildcards in the list, and RDP+ will also try to translate hostnames to IP addresses and vice versa for its matching. So for example, when using /kiosk:100 /allowed:127.0.0.*, a target computer of localhost will be considered valid.

Drive redirection

You can specify the drives you want to redirect to the remote computer by using the /drives option. Drives can be specified either by name or by drive type (Fixed, Removable, Network, CD-ROM). To redirect drives that get plugged in later, you can use the drive type Dynamic.
You can also exclude certain drives by preceding them with the minus sign. For example, /drives:fixed,-c:,p: will redirect drive P: and all fixed drives except C:.

If you don’t specify any drive or type, /drives will default to all drives, including the ones plugged in later.

Extended .rdp options

By using the /o switch, you can specify every option supported by the .rdp file. Options should be given in the exact same syntax as used in .rdp files. You can specify multiple options by separating them by commas. To use commas within options, precede them with a backslash.

Examples:
rdp /start:terminal.exe /o:”shell working directory:s:H:My Documents, redirectcomports:i:1″
rdp /remoteapp:”||ProdDB” /o:”remoteapplicationcmdline:s:proddb, sqlsa, P@ssw0rd, remoteapplicationname:s:Production Database”

The native RDP+ command line switches always take precedence over the /o options. So if you use rdp /printers /o:”redirectprinters:i:0″, then /printers will win.

For an overview of (most of) the possible settings, you may find this page useful.

Log file

You can log all started sessions to a semicolon-delimited log file using the /log option. If you don’t specify the name of the log file, it will default to the file rdp.log in the directory containing rdp.exe.
If you do specify a filename, the name can be further customized through both local environment variables (like %COMPUTERNAME%), and some special variables:
%s: Will be expanded to the server name you’re connecting to.
%u: Will be expanded to the username used to login to the remote computer.
%c: Will be expanded to the name of the local client computer. When starting RDP+ locally, this will be the same as %COMPUTERNAME%. When starting RDP+ from within a Terminal Server or Citrix session, %c will contain the computername of the originating client computer (i.e. %CLIENTNAME%).
%y: The 4-digit representation of the current year.
%m: The 2-digit representation of the current month.
%d: The 2-digit representation of the current day.

Example:
rdp /log:%y%m%d-%s.log

When connecting to the server nlfps01 on the 31st of December, 2011, this would result in the log file 20111231-nlfps01.log being used.

The log file contains all kinds of information about the computer and user which started the session, and information about the target computer and how the session was started. When RDP+ is launched from within a Terminal Server or Citrix session, it will also log the computername and IP address of the originating client. This can also be useful when using thinclients.

A typical log file could look like this:

Event log

Much like the /log option, the /eventlog option writes an entry in the Application event log:

Log Name: Application
Source: Remote Desktop Plus
Date: 2-04-2013 23:21:09
Event ID: 12701
Level: Information
Keywords: Classic
User: N/A
Computer: DTP0348
Description:
Remote Desktop session started…

Date and time: 2013-04-02 23:21:07
Computer: DTP0348
Windows version: Microsoft Windows 7 Ultimate
TS client name: -
Remote computer: nlapp03
Remote port: 3389
Remote Desktop Plus version: 5.0
Remote Desktop Connection version: 7.1
Session type: Normal
Application: -

System tray icon

RDP+ features an optional system tray icon. This icon can be used for the following things:
- Managing and launching favorites.
- Starting a new ‘blank’ instance of RDP+.
- Quickly switching to currently active Remote Desktop sessions.

When using the kiosk mode, the system tray reverts to a simpler mode, in which only the active sessions are available. This simple mode can also be enforced through the Group Policy.

Favorites

When creating favorites, you have the option to save them with the option Save secured (user and computer bound). This means the favorite is only available on the computer it was created on. Use this option when you have specified sensitive passwords in the command line.
When not saving it as a secure favorite, the favorite will be available on any computer you logon to when using roaming profiles. It will be saved using the same encryption /pe or Gencrypt uses, so it is still secure from prying eyes.

Command file

If you regularly use the same command line parameters, you can also put them in a separate file and specify this file with the @-parameter. RDP+ will then use the contents as its command line parameters.
You can also put normal .rdp file style options in this without this files, without having to precede them with /o. This way you can use the command file as a master .rdp file.
Example of a command file:

/fit /noprinters /drives:fixed /icon:Company.ico /title:"%u on %s - Remote Desktop"
enablesuperpan:i:1
keyboardhook:i:2

Exit Codes

When starting Remote Desktop Plus from a script, you can use the option /batch to prevent RDP+ from displaying error messages. Instead you can catch potential errors through the exit codes (errorlevels) RDP+ which raises. These are the possible exit codes which can be raised:

0: No errors.
1: General undefined error.
5: Target computer not in the list of allowed targets.
29: Cannot write to the log file.
87: Invalid command line parameter or combination of command line parameters.
161: The format of the specified path is invalid (filename of the connection file, log file or command options file).
259: No responsive server found in the list (when using /lb).
2382: Invalid notation of the specified host name or IP address.
10060: Connection timed out to the specified server.

Setting default options

You can set some of the command line options as the default option for Remote Desktop Plus by setting the user environment variable RDP. Currently supported are the following options: /w/h/fit/f/fullscreen/max, /mon, /[no]printers, /[no]drives, /[no]sound. [no]wallpaper, /log, /t and /tray.
For example, you can set RDP to /fit /mon:2 /noprinters /drives:fixed.

When you set /mon to a number higher than the number of monitors attached to your computer, RDP+ will automatically fall back to monitor 1. This means you can safely set it to 2 if you always want your session to start in the second monitor when it is available.

The default options can of course be overruled by entering the option you want in the command line.
To override the display size with the fixed dimensions from the .rdp file, you can enter either specify /w or /h in the command line, without a dimension.

Localization

As of version 5.0 you can localize RDP+ for your own language using a customizable XML file. In the download section you will find a blank template (language_template.xml) which you can use to create your own translation. Once you’re done,  save it in the directory containing rdp.exe and replace the template part in the file name with the two letter (ISO 639-1) language code for the language your computer is running. For example: language_de.xml for German.

If you’d like to help translate RDP+, you can send your completed XML files to donkz@donkz.nl and I’ll put them up in the download section. A Dutch version is already provided.

Group Policies and registry

### System requirements

• Windows XP/2003/Vista/2008/7/8
• Microsoft .NET Framework 2.0 or higher

Note: If you intend to launch Remote Desktop Plus from a local network share and you’re running a version of .NET Framework prior to 3.5 SP1, you’ll need to execute the following command once from the command prompt:

%windir%Microsoft.NETFrameworkv2.0.50727caspol -q -m -ag LocalIntranet_Zone -zone Intranet FullTrust -n “Network shares” -d “Full rights in Local Intranet zone.”

If you only have .NET 4.0 installed and no previous version of .NET, Remote Desktop Plus (or any other program targeted for previous versions of .NET Framework for that matter) will fail to launch with an error Unable to find a version of the runtime to run this application. You don’t necessarily have to install an older version of .NET to fix this however.
Just create a file named rdp.exe.config with the following content and place it in the same directory as rdp.exe:

<configuration>
<startup>
<supportedRuntime version=”v4.0″ />
</startup>
</configuration>

Remote Desktop Plus is free to use for home, personal or corporate use. You may use and distribute the program free of charge for both commercial and non-commercial purposes, as long as end users are not charged a fee of any kind for its use.

Current version: 5.0
Release date: April 7, 2013

Remote Desktop Plus 5.0

Click here for the complete change log.

Remote Desktop Plus consists of a single executable. No installation required.

### 559 comments to Remote Desktop Plus

• Chris

I’m using the command line RDP+ to connect to cloud machines as they start, occasionally I get the message:

‘Unable to connect to the RDP port of the specified computer’

Any suggestions on why this might be happening? Is there any way I can work around this problem?

Cheers

Chris

• Donkz

Hi Chris,

If you’re connecting to machines while they’re starting, this is most likely just a timing issue. You’re propably trying to connect to the machine before it has fully initialized all required services for Remote Desktop access.
Have you tried using the /t switch? This will cause RDP+ to keep trying to connect until the machine is ready to accept connections.

Regards,
Donkz

• Chris

Yep, that’s what I was looking for. Many thanks!

• Donkz

Hi Chris,

Good to hear and you’re welcome.

Regards,
Donkz

• Dilip

Hi Donkz,

Your tools works well.. But it takes lot of time to load.. Any resolution to this??

• Donkz

Hi Dilip,

How long does it take exactly? And does it take a long time until the ‘Initializing Remote Desktop Plus…’ message appears or until the entire GUI appears?

Regards,
Donkz

• Dilip

Hi Donkz,

It takes long time until entire GUI appears.. It says ‘Initializing Remote Desktop Plus…’ for long time..

• Donkz

Hi Dilip,

And a long time in this case is how many seconds?

The problem occurs on every computer you have?

Regards,
Donkz

• Donkz

P.S. It might be a DNS or WMI issue.
If you execute the following command in the command prompt, does it take about the same time as the startup of RDP+?

wmic path win32_useraccount where localaccount=true get sid

Regards,
Donkz

• Dilip

Hi Donkz,

It takes around 15 seconds.. My machine is logged on domain.. Is it because of it? I checked it on other windows XP machine, its loading within 2 seconds..

Yes.. Following command also take around 15 seconds..

wmic path win32_useraccount where localaccount=true get sid

• Donkz

Hi Dilip,

Then it’s definitely a WMI or DNS issue. The 2 seconds is the normal time. It should not matter whether the machine is joined to the domain or not.
Can you check if all of the DNS servers you have configured on your machine are still functioning? There’s no ‘dead’ DNS server listed somewhere?
Otherwise it could be a corrupt WMI configuration or repository. You could try doing a winmgmt /resetrepository, but I give no guarantees.

Regards,
Donkz

• baobab

Wonderful tool. I want to run two instances of “RDP Plus” through a batch file on the same machine.

I get the error 57: the process cannot access the file ‘c:\documents and settings\username\local settings\temp\remote desktop plus. E9DD0F.temp’ because it is being by another process.

• Donkz

Hi Baoba,

Thanks.

Well, that should be possible. The E9DD0F part is a randomized sequence which should make sure you can launch multiple sessions at (almost) the same time.
Does it launch the first instance and produce the error for the second? And does the randomized part change with every attempt?

Could you post the contents of the batch file?

Regards,
Donkz

• baobab

Strange enough, it doesn’t execute the first occurrence. The 2 instances open the same terminal application but perform different task

first connection setup in first batch file
——————————————
@if exist “C:\documents and settings\all users\desktop\rdp.exe” goto STARTRDP

@echo @cd “C:\documents and settings\all users\desktop\” > “C:\documents and settings\all users\start menu\syteline.bat”

@echo “C:\documents and settings\all users\desktop\rdp.exe /v:10.81.4.6 /u:pkgla /p:pkgla /printers /w:800 /h:600 /title:SYTELINE.rdp.rdp” >> “C:\documents and settings\all users\start menu\syteline.bat”

goto SKIPRDP

:STARTRDP
@if exist “C:\documents and settings\all users\desktop\rdp.exe” goto 2STARTRDP

goto NORDP

:2STARTRDP
@echo @cd “C:\documents and settings\all users\desktop\” > “C:\documents and settings\all users\start menu\syteline.bat”

@echo @start rdp.exe /v:10.81.4.6 /u:pkgla /p:pkgla /printers /w:800 /h:600 /wait /title:SYTELINE.rdp >> “C:\documents and settings\all users\start menu\syteline.bat”

goto ENDBATCH

second connection setup in 2nd batch file
—————————————–
@if exist “C:\documents and settings\all users\desktop\rdp.exe” goto STARTRDP

@echo @cd “C:\documents and settings\all users\desktop\” > “C:\documents and settings\all users\start menu\label.bat”

@echo @”C:\documents and settings\all users\desktop\rdp.exe /v:10.81.4.6 /u:pkgla /p:pkgla /printers /w:800 /h:600 /title:LABEL.rdp” >> “C:\documents and settings\all users\start menu\label.bat”

@goto SKIPRDP

:STARTRDP
@if exist “C:\documents and settings\all users\desktop\rdp.exe” goto 2STARTRDP
@goto NORDP

:2STARTRDP
@echo @cd “C:\documents and settings\all users\desktop\” > “C:\documents and settings\all users\start menu\label.bat”

@echo @start rdp.exe /v:10.81.4.6 /u:pkgla /p:pkgla /printers /w:800 /h:600 /title:LABEL.rdp >> “C:\documents and settings\all users\start menu\label.bat”

goto ENDBATCH

The 2 connections are called from this batch
—————————————–
@call “c:\documents and settings\all users\start menu\syteline.bat”

@call “c:\documents and settings\all users\start menu\label.bat”

Baobab

• Donkz

Hi Baobab,

I tried the same construction and I get the same error. Not every time, but regularly. That’s a good thing. If it can be reproduced, it can be solved.
Maybe the randomizer doesn’t randomize enough. I’ll look into it.

Regards,
Baobab

• Donkz

Yep. Just as I thought. It turns out the randomizer function by default uses the system time to generate a pseudo-randomized number. If the function is called in almost the exact same time – which happens in this case because you’re using the start command – it’ll result in the same number.

I’ve fixed this for the next release.
If you’d like, I could send you a test version.

Regards,
Donkz

• baobab

Hi Donkz,

I would love to get the test version. My email: zako@lycos.com

Baobab

• baobab

Hi Donkz,

Soory, it took me so long for a feedback on the “Test rdp” you sent me. I got meanwhile caught up with other tasks.
The randomized error seems to be fixed but I am still getting the first instance failing; this time the error reads “Unable to connect to the RDP port of the specified computer (10.81.4.6). The second instance connects fine. I get similar symptom when I invert the order in which the 2 batch files are called.
Do you have any idea why?

Thank you.
Baobab

• Donkz

Hi Baobab,

No problem. I know exactly what you mean.

It could be your remote machine is a bit slow in opening the port and RDP+ times out too soon. Could you try adding the /t command line parameter to see what happens then? This forces RDP+ to wait until the remote machine has responded.

Regards,
Donkz

• Tito

Excellent utility. The number of servers that I have to manage has been increasing and typing credentials every time was getting annoying. Thank you for all your hard work.

• Donkz

Hi Tito,

Thanks!

I know how you feel. That’s exactly why I started to write it.

You’re very welcome and regards,
Donkz

• jk

HI Donkz,

Is it possible to connect various remote desktops, using single script with comma separated value (/v:computer,computer1,computer2) with same set of credentials.

Please let me know the syntax, if possible.

• Donkz

Hi JK,

Yes, it is. And you guessed the syntax correctly.
With rdp /v:computer1,computer2,computer3 /u:username /p:password you can connect to all 3 servers with the same credentials (or any other RDP+ setting).
It will do this sequentially. If computer2 is unknown or unreachable however, it will display a messagebox and will not connect to computer3 until the messagebox is acknowledged. If your script is meant to have no user interaction, you can add the /batch parameter. With /batch no messageboxes will be displayed.

Regards,
Donkz

• jk

Thanks Donkz, its working with RDP+, but is it possible just through RDP.
When i am trying to do with following script saving as .rdp file, it is not working.
rdp /v:localhost:2003,localhost:2002,localhost:2001 /u:uid /p:pwd.

Please let me know, where am i going wrong in the script.

• Donkz

Hi JK,

I’m not sure if I understand correctly. How are you trying to save it as a .rdp file? Or are you looking for the .rdp file RDP+ generates, so you can use it later with the regular mstsc.exe?

Regards,
Donkz

• jk

Yes, please let me know the process

• Donkz

Hi JK,

The easiest way is to start your rdp.exe session with the undocumented switch /debug added.
After you close the Remote Desktop session, it will show you an information screen containing (amongst others) the full path and content of the .rdp file it has generated and used.
You can then either copy the file – when not using /debug it’s always automatically deleted – or copy and paste the shown content into a new .rdp file.
You can then use the file with the regular mstsc.exe: mstsc /v:localhost:2003 “New file.rdp”
You’d have to repeat that command for each server though and you will lose all other RDP+ features.

Please also keep in mind that the generated .rdp file will only work on the computer it was created on and only for the user who originally created it. So you cannot transfer the file to another computer or have it used by other users.

What exactly is your goal? Why do you want to have the .rdp file? Because maybe there’s another solution.

Regards,
Donkz

• jk

Thanks a lot Donkz, i am just trying various options. Please let me know if any other process as well.

• wisnu

1. Doest RDP+ can handle outside connection across area (internet) ?
2. Doest RDP+ can handle multiple connection without any pacthing ? and how many concurrent ?

thx before

• Donkz

Hi Wisnu,

1) Yes it does. RDP+ uses Microsof’s Remote Desktop Connection, so if Remote Desktop can handle it, RDP+ can handle it.
2) I’m not sure what you mean by that. RDP+ is not for handling incoming sessions, but for connecting to remote computers.

Regards,
Donkz

• Thijs Vanbrabant

Hello

First of all thx for the nice work!

Is it possible to add the behavior for Windows shotcuts. ALT-TAB or the windows key. If they could be active in full screen mode. That would be great.

Greetings

Thijs
(Bedankt:-))

• Donkz

Hi Thijs,

Graag gedaan.

There’s no direct command line switch for the shortcuts, but you can do this through the /o parameter.
rdp /o:”keyboardhook:i:0″ – Windows key combinations are applied on the local computer.
rdp /o:”keyboardhook:i:1″ – Windows key combinations are applied on the remote computer.
rdp /o:”keyboardhook:i:2″ – Windows key combinations are applied in full-screen mode only.

Hope this helps.

Regards,
Donkz

• sajal

ANY TELL ME HOW TO LOGIN MSTSC SERVICE WITHOUT USING THE USER NAME AND PASSWORD WITH THE SERVER

• Donkz

Hi Sajal,

What do you mean exactly?

Regards,
Donkz

• mark

I really love this utility.
One thing, Our company has a legal notice which is displayed before msgina displayed the login password screen. Is there anyway rdp can bypass this screen ?

Thanks again

• Donkz

Hi Mark,

I’m afraid not. Once the session is launched, RDP+ has no control over anything which happens inside the session window. If you’re an administrator on the computer you’re connecting to, you could try to to disable it through the registry. But I expect your company has enforced the legal notice through Group Policies, which would prevent that.

Regards,
Donkz

• Date of release should be the newest. properties on the rdp.exe are: 3.12.3.0 Date 5/30/2012

I also had a couple other questions if we could take offline via email or phone. Thanks DJ

• Donkz

Hi Donald,

Yep. That’s the latest release.

You can reach me by mail at donkz@donkz.nl.

Regards,
Donkz

• Toto

Hi Donkz,

Does this version supports the comas ( , ) in the /o option ? I tried but it did not seem to work.