Funzione CreateInstanceEnumWmi
Restituisce un enumeratore che restituisce le istanze di una classe specificata che soddisfa i criteri di selezione specificati.
Nota
Questa API è solo per uso interno. Non è destinata all'uso dal codice dello sviluppatore.
Sintassi
HRESULT CreateInstanceEnumWmi (
[in] BSTR strFilter,
[in] long lFlags,
[in] IWbemContext* pCtx,
[out] IEnumWbemClassObject** ppEnum,
[in] DWORD authLevel,
[in] DWORD impLevel,
[in] IWbemServices* pCurrentNamespace,
[in] BSTR strUser,
[in] BSTR strPassword,
[in] BSTR strAuthority
);
Parametri
strFilter
[in] Nome della classe per cui si desiderano le istanze. Questo parametro non può essere null
.
lFlags
[in] Combinazione di flag che influiscono sul comportamento di questa funzione. I valori seguenti sono definiti nel file di intestazione WbemCli.h oppure è possibile definirli come costanti nel codice:
Costante | Valore | Descrizione |
---|---|---|
WBEM_FLAG_USE_AMENDED_QUALIFIERS |
0x20000 | Se impostato, la funzione recupera i qualificatori modificati archiviati nello spazio dei nomi localizzato delle impostazioni locali della connessione corrente. Se non impostato, la funzione recupera solo i qualificatori archiviati nello spazio dei nomi immediato. |
WBEM_FLAG_DEEP |
0 | L'enumerazione include questa e tutte le sottoclassi nella gerarchia. |
WBEM_FLAG_SHALLOW |
1 | L'enumerazione include solo istanze pure di questa classe ed esclude tutte le istanze di sottoclassi che forniscono proprietà non trovate in questa classe. |
WBEM_FLAG_RETURN_IMMEDIATELY |
0x10 | Il flag causa una chiamata semisynchronous. |
WBEM_FLAG_FORWARD_ONLY |
0x20 | La funzione restituisce un enumeratore forward-only. In genere, gli enumeratori forward-only sono più veloci e usano meno memoria rispetto agli enumeratori convenzionali, ma non consentono chiamate a Clone. |
WBEM_FLAG_BIDIRECTIONAL |
0 | WMI mantiene i puntatori agli oggetti nell'enumerazione fino a quando non vengono rilasciati. |
I flag consigliati sono WBEM_FLAG_RETURN_IMMEDIATELY
e WBEM_FLAG_FORWARD_ONLY
per ottenere prestazioni ottimali.
pCtx
[in] In genere, questo valore è null
. In caso contrario, si tratta di un puntatore a un'istanza IWbemContext che può essere usata dal provider che fornisce le istanze richieste.
ppEnum
[out] Riceve il puntatore all'enumeratore.
authLevel
[in] Livello di autorizzazione.
impLevel
[in] Livello di rappresentazione.
pCurrentNamespace
[in] Puntatore a un oggetto IWbemServices che rappresenta lo spazio dei nomi corrente.
strUser
[in] Nome utente. Per altre informazioni, vedere la funzione ConnectServerWmi .
strPassword
[in] Password. Per altre informazioni, vedere la funzione ConnectServerWmi .
strAuthority
[in] Nome di dominio dell'utente. Per altre informazioni, vedere la funzione ConnectServerWmi .
Valore restituito
I valori seguenti restituiti da questa funzione sono definiti nel file di intestazione WbemCli.h oppure è possibile definirli come costanti nel codice:
Costante | Valore | Descrizione |
---|---|---|
WBEM_E_ACCESS_DENIED |
0x80041003 | L'utente non dispone dell'autorizzazione per visualizzare le istanze della classe specificata. |
WBEM_E_FAILED |
0x80041001 | Si è verificato un errore non specificato. |
WBEM_E_INVALID_CLASS |
0x80041010 | strFilter non esiste. |
WBEM_E_INVALID_PARAMETER |
0x80041008 | Un parametro non è valido. |
WBEM_E_OUT_OF_MEMORY |
0x80041006 | Memoria insufficiente per completare l’operazione. |
WBEM_E_SHUTTING_DOWN |
0x80041033 | WMI è stato probabilmente arrestato e riavviato. Chiamare di nuovo ConnectServerWmi . |
WBEM_E_TRANSPORT_FAILURE |
0x80041015 | Il collegamento RPC (Remote Procedure Call) tra il processo corrente e WMI non è riuscito. |
WBEM_S_NO_ERROR |
0 | La chiamata di funzione ha avuto esito positivo. |
Commenti
Questa funzione esegue il wrapping di una chiamata al metodo IWbemServices::CreateClassEnum .
Si noti che l'enumeratore restituito può avere zero elementi.
Se la chiamata di funzione ha esito negativo, è possibile ottenere informazioni aggiuntive sull'errore chiamando la funzione GetErrorInfo .
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: WMINet_Utils.idl
Versioni di .NET Framework: Disponibile dalla versione 4.7.2