【发布时间】:2011-06-08 17:58:23
【问题描述】:
我想使用 WQL(基本上相当于 wbemtest.exe 中的“执行方法”按钮)通过 WMI 调用静态方法,但我找不到语法示例。
我有一个名为“HelloWmi”的自定义 WMI 提供程序,方法如下:
[ManagementTask]
public static string getVersion()
{
return "1.4.2";
}
在 wbemtest 中,我可以单击“执行方法”按钮,输入“HelloWmi”作为对象路径,然后我会看到一个要执行的方法组合框。同样,我可以在 windows 中运行以下命令:
C:\Windows\system32>wmic /namespace:\\root\Test path HelloWmi call getVersion
Executing (HelloWmi)->getVersion()
Method execution successful.
Out Parameters:
instance of __PARAMETERS
{
ReturnValue = "1.4.2";
};
但是,对于这个项目,我没有使用标准的 Windows WMIC 工具,而是通过 ubuntu 的 WMIC 包远程访问 WMI,它似乎不支持 Windows 的 WMIC 具有的别名。
有没有办法只使用 WQL 查询来调用 WMI 方法?
【问题讨论】: