【问题标题】:vbs script access denied permission changevbs 脚本访问被拒绝权限更改
【发布时间】:2013-10-25 11:55:44
【问题描述】:

我想更改 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 脚本中。

我希望我很清楚,谢谢你

【问题讨论】:

    标签: windows vbscript


    【解决方案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 目录的完全控制权是一个坏主意。实际上不要这样做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-17
      • 2014-09-17
      • 2014-08-10
      • 2019-03-29
      • 2013-04-10
      • 2014-06-18
      • 2015-11-15
      • 1970-01-01
      相关资源
      最近更新 更多