当前位置: 首页 > 编程笔记 >

WMI入门教程之WMI中的类在哪里?

叶淇
2023-03-14
本文向大家介绍WMI入门教程之WMI中的类在哪里?,包括了WMI入门教程之WMI中的类在哪里?的使用技巧和注意事项,需要的朋友参考一下

使用WMI归根到底是对WMI类的访问,如何找到合适的类是其中关键的一步。我一直在为找不到合适的类和命名空间苦恼。你也有这样的问题吗?

类层次结构

  WMI的类是以命名空间和继承层次方式组织的,呈树形结构。命名空间的根是root,在它的下面还有十几个命名空间,最常用的是root\cimv2。命名空间的信息存储在静态类__Namespace类中,要查询当前命名空间下的所有命名空间,可以查看__Namespace类的实例。以下是在我的机器上使用PowerShell查询到的命名空间:


PS C:\Users\idsswtt> Get-WmiObject -Class __namespace -Namespace root | select name

name ---- subscription DEFAULT cimv2 Cli Nap MicrosoftIISv2 SECURITY SmsDm CCMVDI RSOP WebAdministration ccm WMI directory Policy virtualization Interop Hardware ServiceModel Microsoft aspnet

关于命名空间更详细的信息,可以写一个递归的脚本来取得,或者从WMI入门(二):如何使用WMI中提到的WMI CIM Studio工具中查到。

常用WMI类

  WMI体系结构中有成百上千个类。我们经常用到的只有其中一部分。其中有些是用来查询实例的,另一些用来查询类的Schema的。除了上面提到的__Namespace类,我们还会用到__Win32Provider类,来查询当前系统中都有哪些提供程序。这两个类是系统类。

  此外,还有两类WMI类我们经常用到:CIM_*类和Win32_*类。前者是WMI的核心类和公共类,很多时候也被称为CIM核心类和公共类。后者是Win32扩展类,我们查询实例多在Win32扩展类中查询。例如Win32_Product、Win32_LogicalDisk等。

WMI类查找手册?

  很遗憾的是,到目前为止。我没有发现一个好用的WMI类查找手册。但在微软MSDN网站上,有一个分类。我们可以依照这个分类来做查询。以下几个链接是我经常用到的,贴在这里,希望你能用到。

  WMI Reference

  Win32 Classes

  WMI Providers

结语

  看完上面我写的这些东西,如果你还是找不到你要的类,那你就只能怪微软了。我觉得微软为WMI做的还是太少,至少在类查询这一块儿是这样。在微软为WMI投入更多之前,我们只能依赖经验和搜索引擎来寻找适当的类了。

 类似资料:
  • 本文向大家介绍WMI入门教程之什么是WMI?,包括了WMI入门教程之什么是WMI?的使用技巧和注意事项,需要的朋友参考一下 WMI出现至今已经二十多年了,但很多人对它并不熟悉。知道它很好很强大,但不知道它从哪里来,怎么工作,使用范围是什么?现在我跟大家说说我的理解。。。  WMI有一组API。我们不管使用VBScript、PowerShell脚本还是利用C#的来访问WMI的类库,都是因为WMI向外

  • 本文向大家介绍WMI入门教程之怎么使用WMI?,包括了WMI入门教程之怎么使用WMI?的使用技巧和注意事项,需要的朋友参考一下 知道了WMI是什么以后,肯定想要知道如何使用WMI干活。它能写“Hello World”吗?WMI没那么无聊,它一上来就会问你“你想要什么?”或者“你想要更改什么?”。。。 WMI工具   Windows本身提供了几个WMI工具供用户使用,包括WMIC.exe、WBEMT

  • 本文向大家介绍PowerShell入门教程之访问.Net程序集、COM和WMI实例,包括了PowerShell入门教程之访问.Net程序集、COM和WMI实例的使用技巧和注意事项,需要的朋友参考一下 PowerShell可以设计的大而全,重新实现一切;也可以像现在一样设计成胶水语言,利用现有的资源。特别是,与.Net、COM和WMI三大豪门的联姻,使得PowerShell必将在Windows世界里

  • WMI

    前言 Wmi无疑是目前Windows攻击中用的最多的工具, 他强大的管理功能为我们带来了极大的便利, 而Powershell可以轻松的操作并利用它, 我们会用较大的篇幅来详细了解powershell与wmi的魅力。那么WMI我们简单介绍一些常识即可,主要还是介绍Powershell利用之。 本节分上下节, 上节主要讲解WMI的相关知识,下节主要讲解powershell利用WMI来进行一些攻击行为等

  • 问题内容: 我喜欢整个WMI概念,并且可以在Linux(在某些脚本中)中真正使用它。Linux系统有类似的东西吗? 问题答案: 并不是的。您是否正在使用WMI获取系统参数,查询过程,更改配置或监视系统事件,等等? 内核通过和文件系统公开了许多信息和可调旋钮。没有查询语言,只有目录和文件的组织层次结构。其中一些文件是只读,读写或只写的。其中一些人有能力。 有些服务可能具有动态自定义客户查询和更新配置

  • 问题内容: 我想从Go运行WMI查询。有几种方法可以从Go 调用DLL函数。我的理解是,在某个地方必须有一些DLL,通过正确的调用,它将返回一些我可以解析和使用的数据。我宁愿避免调用C或C ++,尤其是因为我猜想它们是Windows API本身的包装。 我检查了的输出,以下条目看起来很有希望: 但是我不确定从这里做什么。此函数采用什么参数?它返回什么?搜索没有帮助。并且该名称仅出现在的注释中,但没