我有一个VBS脚本,用于将文件从旧用户配置文件复制到新用户配置文件(如果存在),但在使用objFSO.FileExists()
方法时,我会看到“权限被拒绝”错误。
要检查文件,我映射一个驱动器(工作正常,并且objFSO.FolderExists()
检查工作正常)并传递我的用户名/密码(我是管理员,因此可以访问所有配置文件,但这甚至是失败了我自己的个人资料)。
完整的脚本位于this pastebin(相关代码的第106行),我会很满意一些提示。感谢。
答案 0 :(得分:1)
使用用户/密码的映射方法经常会出错,因为脚本在另一个安全上下文中运行,而不是用于执行映射的用户。您确实需要映射以获取读取文件的权限,因此最安全的方法是使用映射,但之后使用UNC访问文件,而不是使用driveletter的路径。
所以而不是
old_nicknames_file_path = "J:\" & user_name & "\Application Data\Microsoft\Outlook"
使用
old_nicknames_file_path = "\\server\d$\__OLD-PROFILES\" & user_name & "\Application Data\Microsoft\Outlook"