首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用不同语言获取windows环境下的管理对象

用不同语言获取windows环境下的管理对象
EN

Stack Overflow用户
提问于 2014-01-03 03:38:03
回答 1查看 512关注 0票数 1

我有一个vbscript来验证用户凭据,我的代码的一部分是

代码语言:javascript
复制
  Set objLocalGroup = GetObject("WinNT://./Administrators, group")

这段代码在Windows(德文和法文版本)中失败,经过调试,我认为问题是,在德文版本中,对应于英文“管理员”的组被命名为“Administratoren”。

有什么通用的方法来获取对象吗?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-03 11:11:13

administrators组有一个著名的SID,所以这样的东西应该可以工作:

代码语言:javascript
复制
Set wmi = GetObject("winmgmts://./root/cimv2")
Set admins = wmi.Get("Win32_SID.SID='S-1-5-32-544'")
Set objLocalGroup = GetObject("WinNT://./" & admins.AccountName & ",group")

另一种方式将从Win32_Group类获得名称:

代码语言:javascript
复制
Set wmi = GetObject("winmgmts://./root/cimv2")

qry = "SELECT * FROM Win32_Group WHERE SID = 'S-1-5-32-544'"
For Each group In wmi.ExecQuery(qry)
  Set objLocalGroup = GetObject("WinNT://./" & group.Name & ",group")
Next
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20896115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档