在Powershell中创建文件系统快捷方式很困难

时间:2012-10-11 13:51:30

标签: windows performance powershell com

我有一个目前正在使用WScript.Shell COM对象创建快捷方式的脚本。

$shortcut = (New-Object -ComObject WScript.Shell).Createshortcut("$shortcutFolder\target.lnk")

不幸的是,设置快捷方式的目标路径......:

$shortcut.TargetPath = $targetPath

...如果之前在当前的Powershell会议中尚未完成,则需要很长时间(30到75秒)。但是,如果再次运行该命令,则其执行时间应为毫秒级。

是否有另一种,也许是原生的方式来实现这一目标会更好?或者,我有什么办法可以加快这个过程吗?我有一个Process Monitor跟踪,但我无法从中收集到很多信息。

1 个答案:

答案 0 :(得分:1)

IIRC WScript API只是IShellLink COM界面上的一个薄层,我们在PowerShell Community Extensions的New-Shortcut cmdlet中使用了它。 $targetPath中的类型是什么?这会返回什么类型的信息:

$targetPath | get-member