【发布时间】:2014-11-23 23:28:11
【问题描述】:
我目前正在将 Windows 7 部署到各种 PC(对 powershell 来说非常新)。部署本身是成功的,但是在整个任务序列中,有一个特定的步骤必须创建快捷方式。部署完成后,没有错误或问题说脚本尚未成功,显然它没有工作。该快捷方式位于服务器上,但任务序列中的步骤是使用网络管理员帐户运行的,因此我怀疑这是权限问题。如果您在安装 Windows 后在 PowerShell 中运行脚本,则它可以正确创建应用程序的快捷方式。如果有人有类似的经历或任何可能有帮助的信息,我将不胜感激。
这是在任务序列中使用的命令行序列:
powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -WindowStyle Hidden -File .\AppShortcut.ps1
这是实际的 powershell 脚本。
$AppLocation = "\PROGRAM\Testprogram\TestApp\App.exe"
$WshShell = New-Object -ComObject WScript.Shell
$desktop = $wshShell.SpecialFolders.Item("AllUsersDesktop")
$Shortcut = $WshShell.CreateShortcut($desktop + "\App.lnk")
$Shortcut.TargetPath = $AppLocation
$Shortcut.IconLocation = "\PROGRAM\Testprogram\TestApp\App.exe"
$Shortcut.WorkingDirectory ="\PROGRAM\Testprogram\TestApp\"
$Shortcut.Save()
【问题讨论】:
-
为什么不使用组策略部署快捷方式?
-
不确定
\PROGRAM\Testprogram\TestApp\App.exe在 SCCM 部署中的效果如何。如果您明确使用路径C:\PROGRAM\Testprogram\TestApp\,您会得到不同的结果吗?在 Windows 的上下文中运行它可能会产生不同的结果。调用脚本时的当前目录是什么?.\AppShortcut.ps1可能没有指向您的脚本。你确定脚本甚至在运行吗? -
抱歉回复晚了,我已经离开了!我将尝试显式输入快捷方式的路径,否则我认为组策略将是可行的方法,不确定是否值得在脚本中进行太多编辑以使其正常工作,如果你可以通过 GP 来完成。我会及时通知您,感谢您的帮助!
标签: windows powershell sccm sccm-2007