CWbemProviderGlue::GetAllInstancesAsynch 方法 (wbemglue.h)
[CWbemProviderGlue 类是 WMI 提供程序框架的一部分,现在视为处于最终状态,对于影响这些库的非安全性相关问题,将不会提供进一步的开发、增强或更新。 所有新开发均应使用 MI API。]
GetAllInstancesAsynch 方法检索特定类返回的实例列表。 此方法允许提供程序通过一次返回一个实例来异步响应。
语法
HRESULT GetAllInstancesAsynch(
LPCWSTR pszClassName,
Provider *pRequester,
LPProviderInstanceCallback pCallback,
LPCWSTR pszNamespace,
MethodContext *pMethodContext,
void *pUserData
);
参数
pszClassName
应为其返回实例列表的类的名称。
pRequester
pCallback 指向的回调函数的“This”指针。
pCallback
指向具有此原型的静态函数的指针:
static HRESULT WINAPI Classname::FunctionName(Provider *pProvider,
CInstance *pInstance,
MethodContext *pMethodContext,
void *pUserData );
其中,Classname 是派生自类 Provider 的类的名称。 它是此类的实例,它是 pRequester 定义的“this”指针。 调用此函数可返回 pszClassName 指定的提供程序支持的每个实例。
pszNamespace
pszClassName 指定的提供程序的命名空间。 此参数可以为 NULL ,以指示默认命名空间,即 root\cimv2。
pMethodContext
指向当前上下文的指针。 必须提供上下文以防止死锁。 使用 Provider::EnumerateInstances 或 Provider::ExecQuery 传递到提供程序的上下文,或使用 CInstance::GetMethodContext 从实例获取该上下文。 此参数不得为 NULL。
pUserData
指向传递给 pCallback 指向的函数的用户定义数据的指针。
返回值
如果操作成功,方法将返回WBEM_S_NO_ERROR,WBEM_E_OUT_OF_MEMORY如果操作因内存不足而失败,则返回任何其他 HRESULT 错误代码。
注解
GetAllInstancesAsynch 方法执行的功能与 GetAllInstances 几乎相同。 但是,每次从提供程序检索实例时,提供程序都会将实例传递给 pCallback 指定的函数,而不是返回任意较大的实例数组。 这允许提供程序使用更少的内存,并更快地开始将实例返回到客户端。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista |
最低受支持的服务器 | Windows Server 2008 |
目标平台 | Windows |
标头 | wbemglue.h (包括 FwCommon.h) |
Library | FrameDyn.lib |
DLL | FrameDynOS.dll;FrameDyn.dll |