对于大部分企业中的用户来说都没有客户端的本地管理员权限,紧紧只有域用户权限,但这在进行MDT刷新部署客户端时会出现要求提升权限的问题,对于具有成千上万客户端的企业来说,不可能一个个去用户客户端输入管理员用户名和密码,一个原因是管理员忙不过来,另一个重要原因是出于安全考虑。对此,我就考虑是否可以使用一个脚本或者小软件来实现,操作简单且不会以明文形式泄露管理员密码,对此,经过一番搜寻,发现有一款小工具AutoIt(AU3)以很容易编译一个可执行小软件,然后推送到用户客户端,在用户需要刷新客户端时,只需轻轻一点,就会全自动轻松实现MDT刷新部署。

下面我共享我的代码如下所示,仅供参考:

Local $username = "administrator"
Local $password = "Passw0rd!"
Local $domain   = "Contoso.com"
Local $command  = "wscript.exe //e:vbscript LiteTouch.vbs"
Local $targetDir= "\\ServerName\DeploymentShare$\Scripts\"
Local $choice = MsgBox(4, "Confirm", "准备升级到Win7/8.1?")
If $choice = 6 Then
   Local $pid = RunAs($username, $domain, $password, 0, $command, $targetDir)
   If $pid = 0 Then
          MsgBox(16, "Warning", "发生错误!")
   Else
          MsgBox(0, "Prompt", "程序正在运行……", 3)
   EndIf
EndIf

以上代码意思是,当用户点击小软件时,会提示:“准备升级到Win7/8.1?”,如果是,用户点击“是”,然后就会显示“程序正在运行……”或者“发生错误!”,否则点击“否”,程序自动退出。

当然,也可以做到完全无需用户参与,需设定一个时间让软件执行即可,具体设定时间方法很多,可以利用组策略实现,也可以使用脚本实现。