【问题标题】:Create a shortcut with parameters added to the program path使用添加到程序路径的参数创建快捷方式
【发布时间】:2015-10-27 03:21:54
【问题描述】:

这是代码,如果我右键单击新的 .Lnk 并删除引号,它就可以工作
来自"C:\Windows\System32\control.exe /name Microsoft.Windowsupdate"
C:\Windows\System32\control.exe /name Microsoft.Windowsupdate

echo off
Cls
set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs"
echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT%
echo sLinkFile = "%USERPROFILE%\Desktop\Weekly Maintenance\Windows Update.lnk" >> %SCRIPT%
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT%
echo oLink.TargetPath = "C:\Windows\System32\control.exe /name Microsoft.Windowsupdate" >> %SCRIPT%
echo oLink.Save >> %SCRIPT%
cscript /nologo %SCRIPT%
del %SCRIPT%
pause
cscript /nologo %SCRIPT%
del %SCRIPT%

有什么想法吗?

【问题讨论】:

  • 你能澄清一下吗?您所看到的究竟是什么问题?您期望的行为与实际发生的情况?

标签: batch-file shortcut wsh


【解决方案1】:

WshShortcut.TargetPath 上的文档说:

此属性仅适用于快捷方式的目标路径。
快捷方式的任何参数都必须放在 Argument 的属性中。

工作代码的片段:

echo oLink.TargetPath = "C:\Windows\System32\control.exe" >> %SCRIPT%
echo oLink.Arguments = "/name Microsoft.Windowsupdate" >> %SCRIPT%

以及整个固定代码:

@echo off
Cls
set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs"
echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT%
echo sLinkFile = "%USERPROFILE%\Desktop\Weekly Maintenance\Windows Update.lnk" >> %SCRIPT%
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT%
echo oLink.TargetPath = "C:\Windows\System32\control.exe" >> %SCRIPT%
echo oLink.Arguments = "/name Microsoft.Windowsupdate" >> %SCRIPT%
echo oLink.Save >> %SCRIPT%
cscript /nologo %SCRIPT%
del %SCRIPT%
pause

【讨论】:

  • 谢谢 工作得很好我会把完整的代码放在这里给其他人
猜你喜欢
  • 2016-12-05
  • 2013-09-14
  • 1970-01-01
  • 2021-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-12
  • 2023-02-25
相关资源
最近更新 更多