专注于自动化测试,性能测试.......
检查当前使用用户是否为管理员
上一篇 /
下一篇 2008-08-25 22:59:18
/ 个人分类:Vbscript
)I
w:Z m`%iP8n0Set ōbjNetwork = CreateObject("Wscrīpt.Network")
rUc^/cL-h0strComputer = objNetwork.ComputerName
6j5L6gK!ql1w0strUser = objNetwork.UserName
$r`}(nt051Testing软件测试网1]bD+z#A?%TDi
Set ōbjGroup = GetObject("WinNT://" & strComputer & "/Administrators")
;h9fu'b5f ^
I]
\ b0For Each objUser in objGroup.Members51Testing软件测试网?N9]u$u
~sa4\
If objUser.Name = strUser Then51Testing软件测试网azi.V.n(ZD5x
Wscrīpt.Echo strUser & " is a local administrator."
!j4FlG$dp"B t0 End If51Testing软件测试网S b{o7}2CG-F
Next51Testing软件测试网6dF0]"op.jB
51Testing软件测试网!by/yZ3}p'O#A
那么,这段脚本做了些什么?好,首先我们创建了 Wscrīpt Network 对象的一个实例;我们可以使用该对象获得计算机及登录用户的名称。51Testing软件测试网2J)j0mXtx;tE4rb
51Testing软件测试网4?Bj'ZS'?2\/z
牢牢掌握了这些名称之后,我们使用 WinNT 提供者绑定到所讨论计算机上的 Administrators 组。然后,我们进入一个 For Each 循环,遍历所有的组成员(Members 属性以数组形式保存,这就是我们为什么需要 For Each 循环的原因)。对于找到的每一位成员,我们检查成员的登录名(objUser.Name)是否等于登录用户的名称(保存在变量 strUser 中)。51Testing软件测试网Z{@D,S
51Testing软件测试网dRd
d,B+z
以及该成员的名称是否与登录用户的名称相匹配?如果都满足条件,那么意味着登录用户肯定是一位本地管理员;否则,他(她)不是 Administrators 组的成员。在示例脚本中,我们仅仅显示了用户是否为一名本地管理员;在实际的登录脚本中,您可以更进一步,执行一些要求管理员权限的任务。
+N*h0?/ZL"JH051Testing软件测试网9mI`?(^AGi'UvA
51Testing软件测试网S O3j5rh(I^
UKB$R2D0
51Testing软件测试网*_:U!M/J;ot"T
收藏
举报
TAG:
每日脚本