provider 类 (provider.h)

[Provider 类是 WMI 提供程序框架的一部分,现在视为处于最终状态,对于影响这些库的非安全性相关问题,将不会提供进一步的开发、增强或更新。 所有新开发均应使用 MI API。]

Provider 类是框架提供程序支持的一个或多个类的基类。 Provider 类封装 IWbemServices 方法的实现,并包含多个帮助程序函数。 框架提供程序会为其支持的每个功能替代 Provider 类的其中一个方法。 例如,支持查询处理的提供程序会替代 Provider::ExecQuery 方法。

为具有框架提供程序的每个 WMI 类创建 Provider 类的实例。

提供程序 具有以下类型的成员:

方法 说明
提交 将当前实例返回到 WMI。
CreateNewInstance 分配新的 CInstance 对象并返回指向它的指针。
DeleteInstance 删除实例。 由 WMI 调用。
EnumerateInstances 检索框架提供程序的 类的所有实例。 由 WMI 调用。
ExecMethod 对类或实例调用 方法。 由 WMI 调用。
ExecQuery 处理 WMI 查询语言 (WQL) 查询。 由 WMI 调用。
刷新 由提供程序框架调用,以删除提供程序使用的所有不必要的内存。
GetLocalComputerName CHString 格式返回对计算机名的常量引用。
GetLocalInstancePath 尝试生成指向指定实例的完整对象路径。
GetObject 检索类的实例。 由 WMI 调用。
GetProviderName 检索提供程序的名称。
MakeLocalPath 从相对路径生成完整的实例路径。
PutInstance 汇报实例。 由 WMI 调用。
SetCreationClassName 将给定实例的 CreationClassName 字符串属性设置为此提供程序的名称。
ValidateDeletionFlags 确定一组标志是否对删除操作有效。
ValidateEnumerationFlags 确定一组标志是否对枚举有效。
ValidateFlags 确定一组标志是否有效。
ValidateGetObjFlags 确定一组标志是否对实例检索操作有效。
ValidateMethodFlags 确定一组标志是否对执行方法操作有效。
ValidatePutInstanceFlags 确定一组标志是否对实例更新操作有效。
ValidateQueryFlags 确定一组标志是否对查询操作有效。

继承

Provider 类实现 CThreadBase。

方法

Provider 类具有这些方法。

 
Provider::~Provider

Provider::~Provider 函数是 Provider 类的析构函数。
Provider::Commit

Commit 方法用于将实例发送到 WMI。 此方法是一个帮助程序函数,不应重写。
Provider::CreateNewInstance

CreateNewInstance 方法分配新的 CInstance 对象并返回指向它的指针。
Provider::D eleteInstance

WMI 调用 DeleteInstance 方法以删除实例。 (重载 2/2)
Provider::D eleteInstance

WMI 调用 DeleteInstance 方法以删除实例。 (重载 1/2)
Provider::EnumerateInstances

WMI 调用 EnumerateInstances 方法以检索框架提供程序的 类的所有实例。
Provider::ExecMethod

WMI 调用 ExecMethod 方法以调用类或实例上的方法。 (重载 1/2)
Provider::ExecMethod

WMI 调用 ExecMethod 方法以调用类或实例上的方法。 (重载 2/2)
Provider::ExecQuery

WMI 调用 ExecQuery 方法来处理 WMI 查询语言 (WQL) 查询。
Provider::Flush

提供程序框架调用 Flush 方法以删除提供程序使用的所有不必要的内存。
Provider::GetLocalComputerName

GetLocalComputerName 方法以 CHString 格式返回对计算机名的常量引用。
Provider::GetLocalInstancePath

GetLocalInstancePath 方法尝试生成指定实例的完整对象路径。 此方法是一个帮助程序函数,不应重写。
Provider::GetNamespace

GetNamespace 方法以 CHString 格式返回对命名空间名称的常量引用。 返回的名称是最初提供给提供程序构造函数的第二个参数。
Provider::GetObject

WMI 调用 GetObject 方法以检索类的实例。 (重载 1/3)
Provider::GetObject

WMI 调用 GetObject 方法以检索类的实例。 (重载 2/3)
Provider::GetObject

WMI 调用 GetObject 方法以检索类的实例。 (重载 3/3)
Provider::GetProviderName

GetProviderName 方法检索提供程序构造函数中使用的类的名称。
Provider::MakeLocalPath

MakeLocalPath 方法从相对路径生成完整的实例路径。
Provider::P rovider

Provider 方法创建提供程序的实例。 此方法是 WMI 提供程序框架的一部分。
Provider::P utInstance

PutInstance 方法更新实例。 (重载 2/2)
Provider::P utInstance

PutInstance 方法更新实例。 (重载 1/2)
Provider::SetCreationClassName

SetCreationClassName 方法将给定实例的 CreationClassName 字符串属性(如果有)设置为此提供程序的名称。
Provider::ValidateDeletionFlags

ValidateDeletionFlags 方法确定一组标志是否对删除操作有效。
Provider::ValidateEnumerationFlags

ValidateEnumerationFlags 方法确定一组标志是否对枚举有效。
Provider::ValidateFlags

ValidateFlags 方法确定一组标志是否有效。
Provider::ValidateGetObjFlags

ValidateGetObjFlags 方法确定一组标志是否对实例检索操作有效。
Provider::ValidateMethodFlags

ValidateMethodFlags 方法确定一组标志是否对执行方法操作有效。
Provider::ValidatePutInstanceFlags

ValidatePutInstanceFlags 方法确定一组标志是否对实例更新操作有效。
Provider::ValidateQueryFlags

ValidateQueryFlags 方法确定一组标志是否对查询操作有效。

注解

此类的析构函数为 Provider::~Provider

要求

要求
最低受支持的客户端 Windows Vista
最低受支持的服务器 Windows Server 2008
目标平台 Windows
标头 provider.h (包括 FwCommon.h)