Dela via


Funktionen CreateInstanceEnumWmi

Returnerar en uppräkning som returnerar instanserna av en angiven klass som uppfyller angivna urvalsvillkor.

Anteckning

Det här API:et är endast för internt bruk. Det är inte avsett för användning från utvecklarkod.

Syntax

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
);

Parametrar

strFilter
[i] Namnet på den klass som instanser önskas för. Den här parametern får inte vara null.

lFlags
[i] En kombination av flaggor som påverkar funktionens beteende. Följande värden definieras i wbemCli.h-huvudfilen , eller så kan du definiera dem som konstanter i koden:

Konstant Värde Beskrivning
WBEM_FLAG_USE_AMENDED_QUALIFIERS 0x20000 Om den anges hämtar funktionen de ändrade kvalificerare som lagras i det lokaliserade namnområdet för den aktuella anslutningens nationella inställningar.
Om den inte har angetts hämtar funktionen endast de kvalificerare som lagras i det omedelbara namnområdet.
WBEM_FLAG_DEEP 0 Uppräkningen innehåller detta och alla underklasser i hierarkin.
WBEM_FLAG_SHALLOW 1 Uppräkningen innehåller endast rena instanser av den här klassen och exkluderar alla instanser av underklasser som tillhandahåller egenskaper som inte finns i den här klassen.
WBEM_FLAG_RETURN_IMMEDIATELY 0x10 Flaggan orsakar ett semisynkront anrop.
WBEM_FLAG_FORWARD_ONLY 0x20 Funktionen returnerar en framåtriktad uppräkning. Normalt går det snabbare att endast vidarebefordra uppräknare och använder mindre minne än konventionella uppräknare, men de tillåter inte anrop till Klona.
WBEM_FLAG_BIDIRECTIONAL 0 WMI behåller pekare till objekt i uppräkningen tills de släpps.

De rekommenderade flaggorna är WBEM_FLAG_RETURN_IMMEDIATELY och WBEM_FLAG_FORWARD_ONLY för bästa prestanda.

pCtx
[i] Normalt är nulldet här värdet . Annars är det en pekare till en IWbemContext-instans som kan användas av providern som tillhandahåller de begärda instanserna.

ppEnum
[ut] Tar emot pekaren till uppräknaren.

authLevel
[i] Auktoriseringsnivån.

impLevel
[i] Personifieringsnivån.

pCurrentNamespace
[i] En pekare till ett IWbemServices-objekt som representerar det aktuella namnområdet.

strUser
[i] Användarnamnet. Mer information finns i funktionen ConnectServerWmi .

strPassword
[i] Lösenordet. Mer information finns i funktionen ConnectServerWmi .

strAuthority
[i] Användarens domännamn. Mer information finns i funktionen ConnectServerWmi .

Returvärde

Följande värden som returneras av den här funktionen definieras i wbemCli.h-huvudfilen , eller så kan du definiera dem som konstanter i koden:

Konstant Värde Beskrivning
WBEM_E_ACCESS_DENIED 0x80041003 Användaren har inte behörighet att visa instanser av den angivna klassen.
WBEM_E_FAILED 0x80041001 Ett ospecificerat fel har inträffat.
WBEM_E_INVALID_CLASS 0x80041010 strFilter finns inte.
WBEM_E_INVALID_PARAMETER 0x80041008 En parameter är inte giltig.
WBEM_E_OUT_OF_MEMORY 0x80041006 Det finns inte tillräckligt med minne för att slutföra åtgärden.
WBEM_E_SHUTTING_DOWN 0x80041033 WMI stoppades förmodligen och startades om. Anropa ConnectServerWmi igen.
WBEM_E_TRANSPORT_FAILURE 0x80041015 RPC-länken (Remote Procedure Call) mellan den aktuella processen och WMI misslyckades.
WBEM_S_NO_ERROR 0 Funktionsanropet lyckades.

Kommentarer

Den här funktionen omsluter ett anrop till metoden IWbemServices::CreateClassEnum .

Observera att den returnerade uppräknaren kan ha noll element.

Om funktionsanropet misslyckas kan du hämta ytterligare felinformation genom att anropa funktionen GetErrorInfo .

Krav

Plattformar: Se Systemkrav.

Huvudet: WMINet_Utils.idl

.NET Framework versioner: Tillgänglig sedan 4.7.2

Se även