属性“中使用的目录名无效”;CurrentDirectory";vbscript

属性“中使用的目录名无效”;CurrentDirectory";vbscript,vbscript,directory,Vbscript,Directory,我试图通过位于另一个目录中的vbscript编译au3脚本,因此我使用“CurrentDirectory”属性使用以下代码将工作目录从脚本目录更改为au3文件目录 drivepath = "K" strTempTarget = "New Folder" filename = "gate.jpg" IconName = "102.ico" Comm = "cmd /c " & "Aut2Exe.exe /in " & filename & ".au3" & " /

我试图通过位于另一个目录中的vbscript编译au3脚本,因此我使用“CurrentDirectory”属性使用以下代码将工作目录从脚本目录更改为au3文件目录

drivepath = "K"
strTempTarget = "New Folder"
filename = "gate.jpg"
IconName = "102.ico"

Comm = "cmd /c " & "Aut2Exe.exe /in " & filename & ".au3" & " /out "  & filename & ".exe" & " /icon " & IconName
Path = """" & drivepath & "\" & strTempTarget & """"
MsgBox(Path)

Set objShell = WScript.CreateObject("WScript.Shell")
objShell.CurrentDirectory = Path
objShell.Run(Comm), 0, True
但我得到一个错误“无效的文件名或目录名” 由于“strTempTarget”值中有一个空格,我应该在目录名“Path”的开头和结尾加上双引号,我甚至尝试使用ASCII:

Path = Chr(34) & drivepath & "\" & strTempTarget & Chr(34)
但同样的错误不断出现
那么如何使这个脚本正常工作呢?

shell需要引用路径,因为它使用空格作为分隔符。CurrentDirectory“知道”整个字符串(包括任何空格)是一个文件夹路径;所以不要引用.CurrentDirectory的字符串

证据:

>> Set objShell = WScript.CreateObject("WScript.Shell")
>> Path = """C:\Documents and Settings"""
>> objShell.CurrentDirectory = Path
>>
Error Number:       -2147024773
Error Description:
>> Path = "C:\Documents and Settings"
>> objShell.CurrentDirectory = Path
>>
>> <-- no news are good news
>设置objShell=WScript.CreateObject(“WScript.Shell”)
>>路径=“C:\Documents and Settings”
>>objShell.CurrentDirectory=路径
>>
错误号码:-2147024773
错误说明:
>>Path=“C:\Documents and Settings”
>>objShell.CurrentDirectory=路径
>>
>>