我正在尝试自动将文件推送到用户的主目录中,但遇到了“权限被拒绝”错误 - 此处通过 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
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
最佳答案
我只见过CopyFile
在以下 3 种情况之一中会失败并出现“权限被拒绝”错误:
- 源或目标的实际权限问题。
- 目标路径是一个文件夹,但末尾没有反斜杠。
- 源文件已被应用程序锁定。
关于vbscript - VBS 中的 CopyFile 权限被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16071679/