Public Desktop:
$Shell = New-Object -ComObject WScript.Shell
$Location = "C:\Users\public\Desktop"
$Application = "Remote Desktop.lnk"
$Shortcut = $shell.CreateShortcut("$Location\$Application")
$Shortcut.TargetPath = "C:\Program Files\Remote Desktop\msrdcw.exe"
$Shortcut.IconLocation = "C:\Program Files\Remote Desktop\msrdcw.exe,0"
$Shortcut.Description = "Microsoft Remote Desktop Client"
$Shortcut.WorkingDirectory = "C:\Program Files\Remote Desktop\"
if (-Not (Test-Path $Location\$Application)) {
$Shortcut.Save()
}
All Users Start Menu:
$Shell = New-Object -ComObject WScript.Shell
$Location = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs"
$Application = "Remote Desktop.lnk"
$Shortcut = $shell.CreateShortcut("$Location\$Application")
$Shortcut.TargetPath = "C:\Program Files\Remote Desktop\msrdcw.exe"
$Shortcut.IconLocation = "C:\Program Files\Remote Desktop\msrdcw.exe,0"
$Shortcut.Description = "Microsoft Remote Desktop Client"
$Shortcut.WorkingDirectory = "C:\Program Files\Remote Desktop\"
if (-Not (Test-Path $Location\$Application)) {
$Shortcut.Save()
}
Both:
$Shell = New-Object -ComObject WScript.Shell
$Location1 = "C:\Users\public\Desktop"
$Location2 = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs"
$Application = "Remote Desktop.lnk"
$TargetPath = "C:\Program Files\Remote Desktop\msrdcw.exe"
$IconLocation = "C:\Program Files\Remote Desktop\msrdcw.exe"
$Description = "Microsoft Remote Desktop Client"
$WorkingDirectory = "C:\Program Files\Remote Desktop\"
if (-Not (Test-Path $Location1\$Application)) {
$Shortcut = $shell.CreateShortcut("$Location1\$Application")
$Shortcut.TargetPath = "$TargetPath"
$Shortcut.IconLocation = "$IconLocation"
$Shortcut.Description = "$Description"
$Shortcut.WorkingDirectory = "$WorkingDirectory"
$Shortcut.Save()
}
if (-Not (Test-Path $Location2\$Application)) {
$Shortcut = $shell.CreateShortcut("$Location2\$Application")
$Shortcut.TargetPath = "$TargetPath"
$Shortcut.IconLocation = "$IconLocation"
$Shortcut.Description = "$Description"
$Shortcut.WorkingDirectory = "$WorkingDirectory"
$Shortcut.Save()
}
[showhide]
set TARGET='C:\Program Files\Remote Desktop\msrdcw.exe' set SHORTCUT='C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Remote Desktop.lnk' set PWS=powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile %PWS% -Command "$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut(%SHORTCUT%); $S.TargetPath = %TARGET%; $S.Save()"
[/showhide]