Listing 1: The New-PowerShellScriptLink.vbs Script Option Explicit ' I broke these out to simplify creating a later multi-versioning script. Dim PsVersion: PsVersion = 1 Dim ShellId: ShellId = "Microsoft.PowerShell" Dim PsPathKey PsPathKey = "HKLM\SOFTWARE\Microsoft\PowerShell\" _ & PsVersion & "\ShellIds\" & ShellId & "\Path" Dim WshShell: Set WshShell = CreateObject("WScript.Shell") Dim PsPath: PsPath = WshShell.RegRead(PsPathKey) Dim uarg, uargs Set uargs = WScript.Arguments.UnNamed For Each uarg in uargs ' The shortcut is named after the script: Dim lnk Set lnk = WshShell.CreateShortcut(uarg & ".lnk") ' The target has to be PowerShell itself: lnk.TargetPath = PsPath lnk.Arguments = "-NoLogo -NoExit """"& '" _ & Replace(uarg, "'", "''") & "'""" lnk.Description = "Invoke PowerShell script " & uarg _ & " using version " & PsVersion & " of " & ShellId lnk.Save Next