我必须在具有有限权限的用户帐户上运行脚本。在脚本中,有一行可以找到指定文件的完整路径,它必须与环境变量一起使用,例如%HOMEDRIVE%。
但是,命令行
objShell.ExpandEnvironmentStrings("%HOMEDRIVE%")
如果用户不是管理员,会抛出一个拒绝访问的异常。
如何从具有有限特权的帐户中读取此环境变量?
谢谢!
答案 0 :(得分:0)
尝试在脚本开头添加以下内容:
Set oShell = CreateObject("WScript.Shell")
strHomeFolder = oShell.ExpandEnvironmentStrings("%USERPROFILE%")
Const ssfPROFILE = &H28
Set oShell = CreateObject("Shell.Application")
strHomeFolder = oShell.NameSpace(ssfPROFILE).Self.Path
然后,当您需要引用用户名时,您可以使用以下内容代替“C:\ Users ... \”,只需输入:
= strHomeFolder & "\...\The Rest Of The Filepath eg.appdata\...\"
这应该允许您访问特定于用户的路径,然后继续查找特定文件。它访问登录主文件夹的用户。如果其他用户打开它,它将访问他/她的家庭文件夹。
我希望这有帮助!