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