在远程桌面上创建快捷方式,但创建快捷方式时使用“文件”而不是“文件夹”作为“目标类型”

时间:2013-03-11 06:36:06

标签: powershell powershell-remoting

我正在尝试在域中的远程桌面上创建快捷方式,我是域管理员。如果我直接在目标计算机上运行以下代码,则可以创建快捷方式并将其引导至目标路径。

$shortcutpath3 =  "c:\Users\Public\Desktop\Shortcuts to Test Custom\VV 1211 -TC.lnk"
$WshShell3 = New-Object -comObject WScript.Shell
$Shortcut3 = $WshShell3.CreateShortcut($shortcutpath3)
$Shortcut3.TargetPath = "\\machine\testcustom\"
$Shortcut3.Save()

我将此脚本保存为test.ps1,在不同的机器上使用以下代码运行它。代码结束时没有任何错误/警告,并且在我指定的属性的目标机器上创建快捷方式。但它不能引导我到达目标位置,它实际上要求我选择一个程序来打开该文件。我比较了2个快捷方式的属性,发现破解的快捷方式的“目标类型”是“文件”,而它是“文件夹”以获得良好的快捷方式。

Invoke-Command -ComputerName TARGETSERVER -FilePath test.ps1

知道如何解决这个问题吗?为什么会发生这种情况?谢谢!

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题而且我使用了Get-Item来使它工作。试试这个:

$targetPath = Get-Item("\\machine\testcustom\")
$WshShell3 = New-Object -comObject WScript.Shell
$Shortcut3 = $WshShell3.CreateShortcut($shortcutpath3)
$Shortcut3.TargetPath = $targetPath.FullName
$Shortcut3.Save()

答案 1 :(得分:0)

由于您是域管理员,我强烈建议您使用Group Policy Preference。您可以将快捷方式创建限制为特定用户/组/计算机/等。通过item-level targeting