VBS中的CopyFile上的权限被拒绝

Tri*_*riz 28 vbscript permission-denied file-copying

我正在尝试自动将文件推送到我的用户的主目录中,但是我被困在"权限被拒绝"错误上 - 在这里使用CopyFile调用抛出第6行.

脚本的其他部分(未显示)使用相同的源和目标目录创建和复制文件夹内容,并且它们完美地工作.只有当我使用CopyFile失败时才会这样.

Dim fso

Set fso = CreateObject("Scripting.FileSystemObject")

If Not fso.FileExists("H:\Minecraft\.minecraft\options.txt") Then
    fso.CopyFile "C:\Minecraft\options.txt", "H:\Minecraft\.minecraft\"
End If

Set fso = Nothing
Run Code Online (Sandbox Code Playgroud)

H: 是一个网络主目录,当前用户具有完全读/写权限.

我尝试添加/删除路径中的尾部斜杠,添加"options.txt"到目标路径,删除false参数...不确定还有什么要尝试.有什么想法吗?

谢谢!

仅供参考,在上面容易出错的位之前,这段代码每次都会完美地执行:

If Not fso.FolderExists("H:\Minecraft\.minecraft\bin\") Then
    If Not fso.FolderExists("H:\Minecraft\.minecraft\") Then
        fso.CreateFolder("H:\Minecraft\.minecraft\")
    End If
    fso.GetFolder("C:\Minecraft\bin\").Copy "H:\Minecraft\.minecraft\"
End If
Run Code Online (Sandbox Code Playgroud)

Ans*_*ers 87

我在CopyFile这三种情况中的一种情况下只见过"拒绝许可"错误:

  • 源或目标的实际权限问题.
  • 目标路径是一个文件夹,但没有尾部反斜杠.
  • 源文件被应用程序锁定.

  • "目标路径是一个文件夹,但没有尾部反斜杠." 谢谢! (23认同)
  • 这对我来说也是第2项. (3认同)

小智 6

对我来说,添加/工作在文件夹位置的末尾。因此,如果您要复制到文件夹中,请不要忘记放入/