中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-06 17:10
48,039 主题排行 / 350,124 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » vbs 要求判断登陆的是否为指定用户,然后再执行语句
可打印版本  778 / 3
第1楼 vcstone 发表于 2007-11-30 12:10
初级用户 发帖 39 积分 98
vbs 要求判断登陆的是否为指定用户,然后再执行语句
环境: xp sp2, 2003
希望实现:
判断当前登陆的是否为指定用户(cba),如果是则执行特定语句,如果不是则退出.

请兄弟们指点一下
第2楼 vcstone 发表于 2007-11-30 14:42
初级用户 发帖 39 积分 98
已解决
set obj=createobject("wscript.shell")
Set WshNetwork = WScript.CreateObject("WScript.Network")
if WshNetwork.UserName="fan" then
obj.run "calc.exe"
end if
测试时fan忘了加""号失败.汗喔!
第3楼 dato 发表于 2007-11-30 23:03
高级用户 发帖 377 积分 916
能否保留特定的比如两个用户,而且自动删除其它用户,机房里经常有人新建用户烦
第4楼 vcstone 发表于 2007-12-01 20:36
初级用户 发帖 39 积分 98
strComputer = "."
Set colGroups = GetObject("WinNT://" & strComputer & "/Administrators")
Set WshShell = WScript.CreateObject("WScript.Shell")
For Each objUser In colGroups.Members
IF objUser.Name<>"Administrator" Then
WshShell.Run "net user " & objUser.Name & " /delete"
Wscript.Echo "已删除用户" & objUser.Name
END IF
Next

这段可以解决,删除组内特定用户外的其它用户..觉得应该有专门方法.不用用到net user..不过不懂.

另还想问一下高手们..我怎么才可以知道用这个
GetObject("WinNT://" & strComputer & "/Administrators")
能查询组内用户,就好像这些一样
GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set wbemServices = Getobject("winmgmts:\\" & strComputer)

GetObject("winmgmts:\\"&"."&"\root\cimv2")

我怎么才能知道用它们能干什么,怎样用它们?..有什么资料是介绍这些的..请指点一下.
非常感谢
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023