专注于自动化测试,性能测试.......
检查当前使用用户是否为管理员
上一篇 /
下一篇 2008-08-25 22:59:18
/ 个人分类:Vbscript
Q7~M9Xn#\pG)Lj0Set ōbjNetwork = CreateObject("Wscrīpt.Network")51Testing软件测试网OX0t5P'U5h*s
strComputer = objNetwork.ComputerName
'H,S%Wm&sNX-_t0strUser = objNetwork.UserName51Testing软件测试网(h2@j"__GI
51Testing软件测试网(y8]Fjgbo;V
Set ōbjGroup = GetObject("WinNT://" & strComputer & "/Administrators")
XKv&f+lgA0For Each objUser in objGroup.Members51Testing软件测试网DWq!b%[W.pA&F#J}
If objUser.Name = strUser Then
8N't/Sp9?&D0 Wscrīpt.Echo strUser & " is a local administrator."51Testing软件测试网-E4j1bwl#m[zS;p
End If
'Si.at*s/m%TU1r$P[0Next
GnRb4R051Testing软件测试网g t-`i1d6pb
那么,这段脚本做了些什么?好,首先我们创建了 Wscrīpt Network 对象的一个实例;我们可以使用该对象获得计算机及登录用户的名称。
+[}j P/`h!J|051Testing软件测试网GfHe9xjK_!\
牢牢掌握了这些名称之后,我们使用 WinNT 提供者绑定到所讨论计算机上的 Administrators 组。然后,我们进入一个 For Each 循环,遍历所有的组成员(Members 属性以数组形式保存,这就是我们为什么需要 For Each 循环的原因)。对于找到的每一位成员,我们检查成员的登录名(objUser.Name)是否等于登录用户的名称(保存在变量 strUser 中)。51Testing软件测试网X#t&W|6T
51Testing软件测试网-o+X X6Q-Q0Fr$S
以及该成员的名称是否与登录用户的名称相匹配?如果都满足条件,那么意味着登录用户肯定是一位本地管理员;否则,他(她)不是 Administrators 组的成员。在示例脚本中,我们仅仅显示了用户是否为一名本地管理员;在实际的登录脚本中,您可以更进一步,执行一些要求管理员权限的任务。51Testing软件测试网n-pk"Z SO'kkd
51Testing软件测试网
U4S3R2o8O2l9t"_4`$U+Z#l
n? M|J*A+T y$K051Testing软件测试网 iu aWJH7{K
51Testing软件测试网jt,e.L0h&j8E
收藏
举报
TAG:
每日脚本