打开不在同一目录中的文件

opening a file that's not in the same directory

我想 运行 一个带有消息框的程序(与脚本不在同一个目录中),这是代码(它不起作用,因为它需要程序在桌面上喜欢剧本)

    puls = MsgBox("Want to open steam?", vbYesNo + vbQuestion)

    if puls = vbYes then
    CreateObject("WScript.Shell").Run "C:\Program Files(x86)\Steam\Steam.exe"
    CreateObject("WScript.Shell").Run "C:\Users\Dario Loi\AppData\Local\TeamSpeak 3 Client\ts3client_win64.exe"
    else
    MsgBox "Okay :(", vbInformation
    end if

现在,如您所见,我想在系统启动时执行此操作以获取我的游戏程序 运行ning,但我无法将 Steam 放在桌面上,因为它会将它的资产转储到那里,这会很麻烦,我也不能把脚本放在 steam 的目录中,TS3 也是一样,我也试图用它的路径替换文件名,但它也不起作用

编辑: 为了清楚起见,我的桌面上有一个 VBS 文件,与它一起,在桌面上我有 2 links(不是原来的 EXE),用于 steam 和 TS,(程序我想 运行),我想打开这两个程序而不将脚本和程序放在同一个文件夹中,所以

  1. 通过使脚本引用 link 和
  2. 通过使脚本引用路径, 如果你有想法,请告诉我

将 cd(更改目录)行添加到可执行文件的完整路径,这会将 cmd 提示符带到该目录,然后执行 运行 命令。

如果你这样尝试呢?

puls = MsgBox("Want to open steam?", vbYesNo + vbQuestion)
Set ws = CreateObject("WScript.Shell")
if puls = vbYes then
    ws.Run DblQuote("C:\Program Files(x86)\Steam\Steam.exe")
    ws.Run DblQuote("C:\Users\Dario Loi\AppData\Local\TeamSpeak 3 Client\ts3client_win64.exe")
else
    MsgBox "Okay :(", vbInformation
end if
'*****************************************
Function DblQuote(Str)
    DblQuote = Chr(34) & Str & Chr(34)
End Function
'*****************************************