我正在尝试在Windows 7上运行以下C:\ users \ jdoe \ google drive \ bin \ script.vbs脚本:
CreateObject("Wscript.Shell").Run "C:\users\jdoe\google drive\bin\run.bat", 0, True
但我总是得到错误:
---------------------------
Windows Script Host
---------------------------
Script: C:\Users\jdoe\Google Drive\bin\script.vbs
Line:1
Char: 1
Error: The system cannot find the file specified.
Code: 80070002
Source: (null)
---------------------------
OK
---------------------------
当我将run.bat文件的路径更改为c:\ run.bat,当然将run.bat文件移动到c:\时,script.vbs运行没有问题。
任何方法让我的脚本存储在谷歌硬盘中运行?使用本地组策略编辑器选择存储在Google驱动器中的关闭或登录/注销脚本时,我遇到了同样的问题......
非常感谢!
答案 0 :(得分:4)
CreateObject("Wscript.Shell").Run "C:\users\jdoe\google drive\bin\run.bat", 0, True
^..................^ ^...............^
command to run arguments
您需要引用该命令以避免空格问题
CreateObject("Wscript.Shell").Run """C:\users\jdoe\google drive\bin\run.bat""", 0, True
请记住,字符串中的双引号需要转义,写两个双引号,其中必须包含一个。
答案 1 :(得分:1)
为避免出现空格问题:您必须尝试这种方法来摆脱应用程序路径中空格的错误:
Option Explicit
Dim Application
Application = "C:\users\jdoe\google drive\bin\run.bat"
Call RunThis(Application)
'*********************************************************************************
Sub RunThis(Application)
Dim Ws,Result
Set Ws = CreateObject("WScript.Shell")
Result = Ws.Run(DblQuote(Application),0,True)
End Sub
'*********************************************************************************
Function DblQuote(Str)
DblQuote = Chr(34) & Str & Chr(34)
End Function
'*********************************************************************************