启动路径包含空格的程序

时间:2009-08-27 11:05:22

标签: vbscript

我需要使用VBScript在本地系统中启动程序。但我的语法有问题。这就是我现在正在使用的 -

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run("iexplore")
Set objShell = Nothing

上面的代码成功启动了IE。我想推出其他浏览器。但是,如果我使用 -

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run("c:\Program Files\Mozilla Firefox\firefox.exe")
Set objShell = Nothing

它抛出一个错误,说找不到文件或路径。我不确定如何使用Run()函数中的参数 - 我应该给EXE的路径还是应该给出一些DOS命令?!

8 个答案:

答案 0 :(得分:44)

尝试: -

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run("""c:\Program Files\Mozilla Firefox\firefox.exe""")
Set objShell = Nothing

注意字符串中的额外“”。由于exe的路径包含空格,因此需要用引号括起来。 (在这种情况下,只使用“firefox.exe”就可以了。)

另请注意,64位版本的Windows上的c:\ Program Files(x86)文件夹中存在许多程序。

答案 1 :(得分:3)

你使用Exec

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Exec("c:\Program Files\Mozilla Firefox\firefox.exe")
Set objShell = Nothing

答案 2 :(得分:3)

正在使用

Set WSHELL = CreateObject("Wscript.Shell")
WSHELL.Exec("Application_Path")

但是,如果我们只想输入应用程序名称,那么该参数应该是什么

例如在Internet Explorer的情况下

WSHELL.Run("iexplore")

答案 3 :(得分:2)

set shell=CreateObject("Shell.Application")
' shell.ShellExecute "application", "arguments", "path", "verb", window
shell.ShellExecute  "slipery.bat",,"C:\Users\anthony\Desktop\dvx", "runas", 1
set shell=nothing 

答案 4 :(得分:1)

Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run("firefox")
Set objShell = Nothing

请试试这个

答案 5 :(得分:1)

找到要运行的应用程序的.exe文件 示例iexplore.exe和firefox.exe并删除.exe 并在objShell.Run(“firefox”)

中使用它

我希望这会有所帮助。

答案 6 :(得分:0)

你想要实现的目标很简单,而你的实现方式则不然。试试这个(对我来说工作正常)并从文本编辑器中批量保存文件。相信我,这更容易。

"Too High"

答案 7 :(得分:-10)

复制文件夹,firefox.exe就位于c:\中。该脚本很难攀爬您的文件树。我发现当我将* .exe文件放在c:\中时,它消除了错误消息“找不到文件。”