我想更改etc / host文件的权限。
我正在运行此vbs脚本
Dim objShell
Set objShell = WScript.CreateObject ("WScript.shell")
objShell.run "cmd cacls C:\Windows\System32\drivers\etc /e /p everyone:f "
Set objShell = Nothing
现在的问题是每当我运行这个时我都会被拒绝访问。是的,我是管理员。 但是当我手动点击文件并转到安全设置并更改权限时,它会提示输入域名管理员名称和密码,当我输入它时,它会有效。
但是使用命令行,如何启用域用户名和密码以便不拒绝访问。我想在vbs脚本中集成它。
我希望我很清楚,谢谢你
答案 0 :(得分:1)
看起来您已启用UAC,因此尝试通过ShellExecute
运行命令并设置“runas”动词:
cmd = "cacls.exe"
args = "C:\Windows\System32\drivers\etc /e /p everyone:f"
Set app = CreateObject("Shell.Application")
app.ShellExecute cmd, args, "", "runas", 0
但是,我建议使用icacls
而不是cacls
。此外,授予每个人对etc
目录的完全控制权是一个不好的想法。实际上不要这样做。