描述
IWbemHiPerfProvider.CreateRefresher方法创建一个复习。随后的IWbemHiPerfProvider.CreateRefreshableEnumIWbemHiPerfProvider.CreateRefreshableObject和IWbemHiPerfProvider.StopRefreshing中的回访将被使用。
注意如果提供程序未实现此方法,则必须返回WBEM_E_PROVIDER_NOT_CAPABLE。提供者必须实施此方法来支持复习操作。
C++ 语法
HRESULT CreateRefresher( [in] IWbemServices *pNamespace, [in] long lFlags, [out] IWbemRefresher **ppRefresher ); |
PowerBASIC 语法
METHOD CreateRefresher ( _ BYVAL pNamespace AS IWbemServices, _ BYVAL lFlags AS LONG, _ BYREF ppRefresher AS IWbemRefresher _ ) AS LONG |
参数
pNamespace
指向Windows Management的IWbemServices指针,可以为提供商提供的任何请求提供服务。如果在执行过程中要调用Windows Management,则该提供程序应调用该指针的AddRef.
lFlags
保留。该参数必须为0(零)。
ppRefresher
指针,以保持对提供者实现IWbemRefresher接口的引用。
返回值
此方法返回一个HRESULT,表示方法调用的状态。下表列出了HRESULT中包含的值。
退货代码 |
描述 |
WBEM_S_NO_ERROR |
该方法成功。 |
WBEM_E_PROVIDER_NOT_CAPABLE |
提供程序无法检索特定实例,无论它是否识别路径。
在所有情况下返回此错误代码,除非您需要特定的返回码。 |
WBEM_E_FAILED |
即使操作有效,提供程序也在内部失败。 |
WBEM_E_REFRESHER_BUSY |
复习忙碌 |
示例代码
以下代码示例介绍如何实现CreateRefresher.
HRESULT CHiPerfProvider::CreateRefresher(
/* [in] */IWbemServices *pNamespace,
/* [in] */ long lFlags,
/* [out] */ IWbemRefresher** ppRefresher
)
{
// Allocate a new refresher
//For Example:
// CMyRefresher* pMyRefresher = new CMyRefresher();
// Return the refresher to the ppRefresher
// [out] parameter
/*return pMyRefresher->QueryInterface(
IID_IWbemRefresher, (void**) ppRefresher );*/
}
// Free memory resources.
// For Example:
//pNamespace->Release();
//ppRefresher->Release();
//delete[] pMyRefresher;
备注
提供者必须提供自己的IWbemRefresher接口的实现。它适用于WMI请求多个复习,每个复习将用于自己的刷新操作。
当您释放刷新时,提供程序应清理添加到复习器的任何可刷新对象或枚举器。
要求
客户 |
需要Windows Vista,Windows XP或Windows 2000 Professional。 |
服务器 |
需要Windows Server 2008,Windows Server 2003或Windows 2000 Server。 |
头 |
在Wbemprov.inc中声明。 |
DLL |
需要Wmiprvsd.dll。 |


