我有一个安装了某个名为iLink(Crosslink)的BP程序的脚本。脚本工作正常,安装Java 6.21和两个Crosslink组件,并通过DISM .Net 3.5完美安装。
但是,唯一的缺点是网络版仅适用于管理员运行的Internet Explorer流程。我已经在用户桌面上创建了一个快捷方式,但我希望脚本能够从以下位置更改目标:" C:\ Program Files \ Internet Explorer \ iexplore.exe" 到 runas.exe / user:capeplc \ a-bhargate / savecreds" C:\ Program Files \ Internet Explorer \ iexplore.exe"
这是我目前获得的脚本,我只是希望将其添加到最后或者更改快捷方式目标的内容:
# ...
$TargetFile = "C:\Program Files\Internet Explorer\iexplore.exe"
$ShortcutFile = "$env:USERPROFILE\desktop\IEadmin.lnk"
$WScriptShell.CreateShortcut($ShortcutFile)
$Shortcut = $WScriptShell.CreateShortcut($ShortcutFile)
$Shortcut.TargetPath = $TargetFile
$Shortcut.Save()
脚本结果很好,只需将快捷方式目标更改为上面提到的粗体。任何帮助都会很棒!
答案 0 :(得分:0)
正如gpunktschmitz在对该问题的评论中指出的那样,您必须:
runas.exe
并将命令行的其余部分分配给.Arguments
property:
$WScriptShell = New-Object -ComObject 'WScript.Shell'
$ShortcutFile = "$env:USERPROFILE\desktop\IEadmin.lnk"
$Shortcut = $WScriptShell.CreateShortcut($ShortcutFile)
$Shortcut.TargetPath = 'runas.exe'
$Shortcut.Arguments =
"/user:capeplc\a-bhargate /savecreds `"C:\Program Files\Internet Explorer\iexplore.exe`"" #` (dummy comment to fix broken syntax highlighting)
$Shortcut.Save()
注意需要`
- 转义嵌入的双引号。
或者,使用 fixed 字符串(如手头的字符串),可以使用'...'
(单引号)作为外引号,在这种情况下,您无需转义嵌入式双引号
相反,请考虑使用$env:ProgramFiles
并通过变量指定用户名,在这种情况下,您需要"..."
进行外部引用以确保执行字符串扩展(插值)。