Udostępnij przez


CreateInstanceEnumWmi, funkcja

Zwraca moduł wyliczający, który zwraca wystąpienia określonej klasy spełniające określone kryteria wyboru.

Uwaga

Ten interfejs API jest przeznaczony tylko do użytku wewnętrznego. Nie jest ona przeznaczona do użycia z kodu dewelopera.

Składnia

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

Parametry

strFilter
[w] Nazwa klasy, dla której są wymagane wystąpienia. Ten parametr nie może być nullparametrem .

lFlags
[w] Kombinacja flag, które wpływają na zachowanie tej funkcji. Następujące wartości są zdefiniowane w pliku nagłówka WbemCli.h lub można je zdefiniować jako stałe w kodzie:

Stała Wartość Opis
WBEM_FLAG_USE_AMENDED_QUALIFIERS 0x20000 W przypadku ustawienia funkcja pobiera zmienione kwalifikatory przechowywane w zlokalizowanej przestrzeni nazw ustawień regionalnych bieżącego połączenia.
Jeśli nie zostanie ustawiona, funkcja pobiera tylko kwalifikatory przechowywane w bezpośredniej przestrzeni nazw.
WBEM_FLAG_DEEP 0 Wyliczenie obejmuje te i wszystkie podklasy w hierarchii.
WBEM_FLAG_SHALLOW 1 Wyliczenie obejmuje tylko czyste wystąpienia tej klasy i wyklucza wszystkie wystąpienia podklas, które dostarczają właściwości, których nie można odnaleźć w tej klasie.
WBEM_FLAG_RETURN_IMMEDIATELY 0x10 Flaga powoduje wywołanie półsynchroniczne.
WBEM_FLAG_FORWARD_ONLY 0x20 Funkcja zwraca moduł wyliczający tylko do przodu. Zazwyczaj moduły wyliczania tylko do przodu są szybsze i używają mniejszej ilości pamięci niż konwencjonalne moduły wyliczane, ale nie zezwalają na wywołania klonowania.
WBEM_FLAG_BIDIRECTIONAL 0 Usługa WMI zachowuje wskaźniki do obiektów w wyliczeń do momentu ich wydania.

Zalecane flagi to WBEM_FLAG_RETURN_IMMEDIATELY i WBEM_FLAG_FORWARD_ONLY w celu uzyskania najlepszej wydajności.

pCtx
[w] Zazwyczaj ta wartość to null. W przeciwnym razie jest to wskaźnik do wystąpienia IWbemContext , które może być używane przez dostawcę dostarczającego żądane wystąpienia.

ppEnum
[out] Odbiera wskaźnik do modułu wyliczającego.

authLevel
[w] Poziom autoryzacji.

impLevel
[w] Poziom personifikacji.

pCurrentNamespace
[w] Wskaźnik do obiektu IWbemServices , który reprezentuje bieżącą przestrzeń nazw.

strUser
[w] Nazwa użytkownika. Aby uzyskać więcej informacji, zobacz funkcję ConnectServerWmi .

strPassword
[w] Hasło. Aby uzyskać więcej informacji, zobacz funkcję ConnectServerWmi .

strAuthority
[w] Nazwa domeny użytkownika. Aby uzyskać więcej informacji, zobacz funkcję ConnectServerWmi .

Wartość zwracana

Następujące wartości zwracane przez tę funkcję są zdefiniowane w pliku nagłówka WbemCli.h lub można je zdefiniować jako stałe w kodzie:

Stała Wartość Opis
WBEM_E_ACCESS_DENIED 0x80041003 Użytkownik nie ma uprawnień do wyświetlania wystąpień określonej klasy.
WBEM_E_FAILED 0x80041001 Wystąpił nieokreślony błąd.
WBEM_E_INVALID_CLASS 0x80041010 strFilter nie istnieje.
WBEM_E_INVALID_PARAMETER 0x80041008 Parametr jest nieprawidłowy.
WBEM_E_OUT_OF_MEMORY 0x80041006 Za mało pamięci jest dostępna do ukończenia operacji.
WBEM_E_SHUTTING_DOWN 0x80041033 Prawdopodobnie usługa WMI została zatrzymana i uruchomiona ponownie. Ponownie wywołaj metodę ConnectServerWmi .
WBEM_E_TRANSPORT_FAILURE 0x80041015 Połączenie zdalnego wywołania procedury (RPC) między bieżącym procesem a usługą WMI nie powiodło się.
WBEM_S_NO_ERROR 0 Wywołanie funkcji zakończyło się pomyślnie.

Uwagi

Ta funkcja opakowuje wywołanie metody IWbemServices::CreateClassEnum .

Zwróć uwagę, że zwrócony moduł wyliczający może mieć zero elementów.

Jeśli wywołanie funkcji zakończy się niepowodzeniem, możesz uzyskać dodatkowe informacje o błędzie, wywołując funkcję GetErrorInfo .

Wymagania

Platformy: Zobacz Wymagania systemowe.

Nagłówka: WMINet_Utils.idl

.NET Framework wersje: dostępne od wersji 4.7.2

Zobacz też