如何从批处理文件创建桌面快捷方式

如何从批处理文件创建桌面快捷方式

我知道关于这个问题有很多帖子,但我需要做的事情有一点小变化。

我可以弄清楚如何使用这样的参数创建快捷方式:
"C:\Program Files\My App\App.exe" /s

但是我需要将包裹在“”中的文件的路径作为参数应用,如下所示:
"C:\Program Files\My App\App.exe" "c:\Data\File.ext"
请注意双引号。

我找不到任何 VBscript 示例来说明此行为。
这是我当前脚本的基础。

@echo off

set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs"

echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT%
echo sLinkFile = "%USERPROFILE%\Desktop\myshortcut.lnk" >> %SCRIPT%
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT%
echo oLink.TargetPath = "D:\myfile.extension" >> %SCRIPT%
echo oLink.Save >> %SCRIPT%

cscript /nologo %SCRIPT%
del %SCRIPT%

答案1

灵魂是三重引号:

由于某种原因

echo oLink.arguments = Chr(34) & "c:\Data\File 1.ext" & Chr(34)

打开文件 1.ext。

答案2

尝试添加

echo oLink.arguments = "c:\Data\File.ext"

在 oLink.save 之前。

如果您发现仍然需要包含引号(我认为您不会这样做),您可以在批处理文件中将它们增加三倍。

echo oLink.arguments = """c:\Data\File 1.ext"""

最外层的引号是分隔字符串的引号,而内部的双重引号用于将双引号放在字符串内。

相关内容