首先,我对 WMI 不是很熟悉,但我试图完成的是从 SAS 6/iR 的某些 wmi 类中提取 raid 状态。
我认为安装 Megaraid Storage Manager v2.90 应该包含一个 WMI 提供程序,根据服务显示它似乎也在运行。
但是我不知道要拉取哪个类才能获得所需的信息。有人知道该怎么做吗?我一直在尝试浏览这些类,希望能从这个提供商那里偶然发现一些东西,但到目前为止还没有运气。
任何建议将不胜感激 :-)
答案1
如果您找不到任何文档,您唯一的其他选择是 WMI 基本上是自文档化的。但要解决这个问题需要更多的 WMI 知识。虽然您可以找到 WMI 命名空间、类和属性;但如果没有文档,可能无法弄清楚值的含义。
首先,要查找系统上的所有 WMI 命名空间,请使用以下 PowerShell:
function RecureseWmiNamespaces {
param([string]$ns = "root")
Get-WmiObject -class "__NAMESPACE" -namespace $ns | Foreach-Object -process {
$n = "$ns\$($_.Name)"
$n
RecureseWmiNamespaces $n
}
}
RecureseWmiNamespaces
任何名称中带有“Dell”的命名空间都可能引起人们的兴趣。
编辑:有一些工具可以帮助探索,请查看此处的“WMI Explorer”http://www.primaltools.com/downloads/communitytools/。
答案2
我还会尝试搜索除标准文件之外的 MOF 文件(在 WBEM 目录中)。如果 Dell 包含 WMI 提供程序,则可能会附带 MOF 文件,您可以使用它们来找出已安装的命名空间和类。