繁体   English   中英

在VBScript中检查文件是否存在时,“权限被拒绝”

[英]'Permission denied' when checking if a file exists in VBScript

我有一个VBS脚本,用于将文件从旧的用户配置文件复制到新的文件(如果存在),但是使用objFSO.FileExists()方法时,系统显示“权限被拒绝”错误。

为了检查文件,我映射了一个驱动器(工作正常,并且objFSO.FolderExists()检查正常)并通过我的用户名/密码(我是管理员,因此可以访问所有配置文件,但是这在我上什至失败了)自己的个人资料)。

完整的脚本在此pastebin中 (有关代码的第106行),我将为您提供一些技巧。 谢谢。

具有用户名/密码的映射方法通常会带来麻烦,因为脚本在您用于映射的用户之外的另一个安全上下文中运行。 您确实需要映射才能获得读取文件的权限,因此最安全的方法是使用映射,但随后使用UNC来访问文件,而不是使用盘符的路径。

所以代替

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"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM