IEnumWbemClassObject::Clone 方法 (wbemcli.h)
IEnumWbemClassObject::Clone 方法會建立整個列舉值的邏輯複本,並在列舉中保留其目前的位置。 這個方法只會製作「最佳」複本。 由於許多 CIM 物件的動態本質,新的列舉值可能不會列舉與來源列舉值相同的物件集合。
注意
使用 WBEM_FLAG_FORWARD_ONLY 旗標初始化列舉時,不支援 IEnumWbemClassObject::Clone 。
不會複製 NextAsync 所啟動的任何擱置異步傳遞。
語法
HRESULT Clone(
[out] IEnumWbemClassObject **ppEnum
);
參數
[out] ppEnum
接收新 IEnumWbemClassObject 物件的指標。 當不再需要介面指標時,呼叫端必須呼叫 Release 。 發生錯誤時,不會傳回新的物件。
傳回值
發生錯誤時,您可以呼叫 COM 函式 GetErrorInfo 以取得更多錯誤資訊。 如果網路問題造成您遺失與 Windows 管理的遠端連線,也可能傳回 COM 特定的錯誤碼。
下列清單列出 HRESULT 中包含的值。
備註
由於對接收的回呼可能不會在用戶端所需的相同驗證層級傳回,因此建議您使用半同步通訊,而不是異步。 如果您需要異步通訊,請參閱 呼叫方法。
如需以半同步方式使用方法的詳細資訊,請參閱 IEnumWbemClassObject 和 呼叫方法。
範例
下列程式代碼示範如何使用 IEnumWbemClassObject::Clone 方法。
BOOL CloneEnum(IEnumWbemClassObject *pSrc)
{
IEnumWbemClassObject *pCopy = 0;
HRESULT hRes = pSrc->Clone(&pCopy);
if (hRes != WBEM_S_NO_ERROR) // Failed to clone it.
return FALSE;
// Use the copy of the enumerator.
// ...
pCopy->Release();
return TRUE;
}
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | wbemcli.h (包含 Wbemidl.h) |
程式庫 | Wbemuuid.lib |
Dll | Fastprox.dll |