Target audience: System Administrators
Used tools: PowerShell
What’s the purpose: How to make multiple Remote Desktop Protocol (RDP) files from one template RDP file
The task for resolving is to make multiple RDP files from one template RDP file. Names of new RDP files are “RDP2016_” + codeName + “.rdp” – something like RDP2016_5483.rdp
Parameter values for variable codeName are written in CSV file rdpList.csv as this :
CODENAME
5483
6932
7582
File RDP2016_5483.rdp is :
redirectclipboard:i:1
redirectprinters:i:0
redirectcomports:i:0
redirectsmartcards:i:0
devicestoredirect:s:
drivestoredirect:s:
session bpp:i:32
prompt for credentials on client:i:1
server port:i:3389
allow font smoothing:i:1
promptcredentialonce:i:0
videoplaybackmode:i:0
audiocapturemode:i:0
gatewayusagemethod:i:0
gatewayprofileusagemethod:i:1
gatewaycredentialssource:i:0
full address:s:RRR2222.DOMAIN.COM
workspace id:s:RRR2222.DOMAIN.COM
use redirection server name:i:1
loadbalanceinfo:s:tsv://MS Terminal Services Plugin.1.RRR2222FARM
use multimon:i:0
alternate full address:s:RRR2222.DOMAIN.COM
signscope:s:Full Address,Alternate Full Address, ...
signature:s:BBBbbbaaa 6gYnrtDWvsd ...
screen mode id:i:2
desktopwidth:i:800
desktopheight:i:600
winposstr:s:0,3,0,0,800,600
compression:i:1
keyboardhook:i:2
connection type:i:7
networkautodetect:i:1
bandwidthautodetect:i:1
displayconnectionbar:i:1
username:s:DOMAIN\5483
enableworkspacereconnect:i:0
disable wallpaper:i:0
allow desktop composition:i:0
disable full window drag:i:1
disable menu anims:i:1
disable themes:i:0
disable cursor setting:i:0
bitmapcachepersistenable:i:1
This can be done with PowerShell script file makeRDP.ps1 :
$domain = "DOMAIN"
#####################
$hereString = @"
redirectclipboard:i:1
redirectprinters:i:0
redirectcomports:i:0
redirectsmartcards:i:0
devicestoredirect:s:
drivestoredirect:s:
session bpp:i:32
prompt for credentials on client:i:1
server port:i:3389
allow font smoothing:i:1
promptcredentialonce:i:0
videoplaybackmode:i:0
audiocapturemode:i:0
gatewayusagemethod:i:0
gatewayprofileusagemethod:i:1
gatewaycredentialssource:i:0
full address:s:RRR2222.DOMAIN.COM
workspace id:s:RRR2222.DOMAIN.COM
use redirection server name:i:1
loadbalanceinfo:s:tsv://MS Terminal Services Plugin.1.RRR2222FARM
use multimon:i:0
alternate full address:s:RRR2222.DOMAIN.COM
signscope:s:Full Address,Alternate Full Address ...
signature:s:BBBbbbaaa 6gYnrtDWvsd ....desktopwidth:i:800
desktopheight:i:600
winposstr:s:0,3,0,0,800,600
compression:i:1
keyboardhook:i:2
connection type:i:7
networkautodetect:i:1
bandwidthautodetect:i:1
displayconnectionbar:i:1
"@
$list = import-csv rdpList.csv
forEach ($item in $list) {
$out = @() + $hereString
$out += "username:s:" + $domain + "\" + $item.CODENAME
$out += "enableworkspacereconnect:i:0
disable wallpaper:i:0
allow desktop composition:i:0
disable full window drag:i:1
disable menu anims:i:1
disable themes:i:0
disable cursor setting:i:0
bitmapcachepersistenable:i:1"
$outFileName = "RRR2222_" + $item.CODENAME + ".rdp"
$out | out-file $outFileName