连接文件夹以形成路径时的预期文字常量

时间:2021-03-12 13:33:56

标签: vbscript

我并不是真正的 VBS 程序员。只是想用 VBS 脚本做一些基本的事情。基本上我想要做的就是创建一个新的文件夹结构,如果它不存在的话。对我来说,这将是 C:\testfolder\Aaron.wright。我的用户名只是一个环境变量。

但是在此处的第 2 行,我收到了 Expected Literal Constant 错误。我认为这是因为我试图将我的用户名连接到 C:\testfolder\

有人可以给我一些指示,或者建议一种更简单的方法。

UserName = WshSysEnv("UserName")
Const PATH = "C:\testfolder\" & UserName
Set fso = CreateObject("Scripting.FileSystemObject")
BuildFullPath PATH

Sub BuildFullPath(ByVal FullPath)
    If Not fso.FolderExists(FullPath) Then
        BuildFullPath fso.GetParentFolderName(FullPath)
        fso.CreateFolder FullPath
    End If
End Sub

我也尝试将那条线路换成类似的东西:

dim PATH : PATH = "C:\testfolder\" & UserName

然而,这最终只会创建 C:\testfolder\ 而没有 Aaron.Wright 子文件夹。

经过更多测试,我尝试了这个:

Set objShell = CreateObject("Wscript.Shell")
objShell.Run "cmd /c mkdir C:\testfolder\%UserName%"

这似乎奏效了。除非任何人都可以看到使用这种方法的任何直接问题。如果文件夹结构已经就位,则此命令似乎不会执行任何操作。至于为什么以前的方法不起作用,我认为是因为 fso.CreateFolder 不会创建子文件夹 - 只是顶级(但我可能错了)。

0 个答案:

没有答案
相关问题