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

时间:2015-05-24 14:23:10

标签: windows vbscript windows-8 msgbox

我想用MSG框运行一个程序(与脚本不在同一个目录中),这里是代码(它不起作用,因为它需要程序在桌面上像脚本一样)

    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

现在,正如你所看到的,我想在系统启动时执行此操作以使我的游戏程序运行,但是我无法在桌面上放置它,因为它会将它的资产转储到那里,这将是一团糟,我也不能把脚本放在steam的目录中,对于TS3也是如此,我也试图用它的路径替换文件的名称,但它也不起作用

修改 只是为了清楚地说明,我的台式机上有一个VBS文件,在桌面上我有2个链接(不是原始的EXE),还有蒸汽和TS,(我想要运行的程序) ,我想打开这两个程序而不将脚本和程序放在同一个文件夹中,所以

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

2 个答案:

答案 0 :(得分:2)

如果你这样试试?

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
'*****************************************

答案 1 :(得分:0)

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