我正在编写我的第一个PowerShell脚本,遇到了一些问题。
到目前为止,我的系统已经创建了一个目录树,并在其中放置了文件。最后一步是在我的桌面上创建一个快捷方式。
我想出了以下代码:
$ShortcutFile = "$home\Desktop\" + $protocol + ".lnk"
If ( (test-path -path "$ShortcutFile") -ne $true)
{
$WScriptShell = New-Object -ComObject WScript.Shell
$Shortcut = $WScriptShell.CreateShortcut($ShortcutFile)
$Shortcut.TargetPath = $root_path
$Shortcut.Save()
}
我相信任何有经验的PowerShell用户都知道,这种方法不起作用。它会创建一个文件而不是一个目录。我想正确的解决方法是更改WScript.Shell中控制文件类型的对象成员之一。但我没有找到任何关于如何具体实现此操作的资源,也没有其他方法。我在MSDN网站上找到了API,但只列出了几个成员。肯定还有更多的成员。
最佳方法是什么?
谢谢。
$protocol='SomeName';$root_path='C:\'
,那么你的代码可以正常工作,没有任何问题。 - user4003407$root_path
指向一个存在的目录吗?顺便提一下,使用@用户名
来通知用户你的评论。 - user4003407$ShortcutFile
有什么值?Test-Path $ShortcutFile -IsValid
返回什么?你是否期望像NTFS联接一样从命令行导航快捷方式? - Bacon Bits