Metodo IEnumWbemClassObject::Clone (wbemcli.h)

Il metodo IEnumWbemClassObject::Clone esegue una copia logica dell'intero enumeratore, mantenendo la posizione corrente in un'enumerazione. Questo metodo esegue solo una copia "best effort". A causa della natura dinamica di molti oggetti CIM, è possibile che il nuovo enumeratore non enumera lo stesso set di oggetti dell'enumeratore di origine.

Nota  

Quando l'enumerazione viene inizializzata con il flag WBEM_FLAG_FORWARD_ONLY , IEnumWbemClassObject::Clone non è supportato.

Le consegne asincrone in sospeso avviate da NextAsync non vengono clonate.

 

Sintassi

HRESULT Clone(
  [out] IEnumWbemClassObject **ppEnum
);

Parametri

[out] ppEnum

Riceve un puntatore a un nuovo oggetto IEnumWbemClassObject . Il chiamante deve chiamare Release quando il puntatore dell'interfaccia non è più necessario. In caso di errore, non verrà restituito un nuovo oggetto.

Valore restituito

In caso di errore, è possibile chiamare la funzione COM GetErrorInfo per ottenere altre informazioni sull'errore. I codici di errore specifici di COM possono essere restituiti anche se i problemi di rete causano la perdita della connessione remota a Gestione Windows.

L'elenco seguente elenca il valore contenuto in un HRESULT.

Commenti

Poiché il callback al sink potrebbe non essere restituito allo stesso livello di autenticazione richiesto dal client, è consigliabile usare la comunicazione semisynchrono anziché asincrona. Se è necessaria la comunicazione asincrona, vedere Chiamata di un metodo.

Per altre informazioni sull'uso di metodi semisynchronously, vedere IEnumWbemClassObject e Chiamata di un metodo.

Esempio

Il codice seguente illustra come usare il metodo 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;
}

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione wbemcli.h (include Wbemidl.h)
Libreria Wbemuuid.lib
DLL Fastprox.dll