我有一个脚本,在管理员用户下运行良好。但是当域用户执行该脚本时,我们收到此错误消息。
CScript Error: Loading your settings failed. (Access is denied. )
此错误仅发生在 Windows 2008 R2 服务器上。它是域的成员。它在 Windows 2003 域控制器上运行良好。我进行了谷歌搜索,找到了这个网站http://www.tek-tips.com/viewthread.cfm?qid=609886&page=457
它说,创建以下注册表项。我照做了,但没有帮助。
HKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script\Settings
有人知道如何让它工作吗?
测试.vbs:
Wscript.echo "hello"
运行命令是:
cscript C:\FileTransfer\TEST\test.vbs
答案1
“.DEFAULT”用户注册表中的设置不会影响其他用户,因此该帖子的建议对我来说是值得怀疑的。
验证“用户”是否具有“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Script Host\Settings”的“读取”权限。如果没有,那么我怀疑这就是cscript.exe
报告的问题的原因。不过,我不知道 Windows Server 2008 R2 中该密钥的默认权限是否被更改,所以我想知道它是如何更改的(假设您发现它已经更改)。
如果问题仍然存在,您可能需要针对用户执行的尝试运行“进程监视器”cscript.exe
以尝试发现更多详细信息。
答案2
我在 Windows Server 2012R2 计算机上通过在注册表中创建以下项解决了这个问题
HKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script Host\Settings
然后向 IIS Apppool\{AppPoolUser} 用户授予“Windows Script Host”键的完全控制权限。