Share via


IWbemHiPerfProvider::GetObjects-Methode (wbemprov.h)

Die IWbemHiPerfProvider::GetObjects-Methode fügt die Nichtschlüsseleigenschaften der Objekte in das bereitgestellte Array ein. WMI ruft GetObjects als Reaktion auf einen IWbemServices::GetObject-Aufruf auf . Wenn ein Anbieter GetObjects nicht implementiert, versucht WMI, eine GetObject-Anforderung mit einem Aufruf der IWbemHiPerfProvider::CreateRefreshableObject-Methode zu verarbeiten.

Hinweis Wenn ein Anbieter diese Methode nicht implementiert, muss er WBEM_E_PROVIDER_NOT_CAPABLE zurückgeben.
 

Syntax

HRESULT GetObjects(
  [in]      IWbemServices     *pNamespace,
  [in]      long              lNumObjects,
  [in, out] IWbemObjectAccess **apObj,
            long              lFlags,
            IWbemContext      *pContext
);

Parameter

[in] pNamespace

Ein IWbemServices-Zeiger zurück in die Windows-Verwaltung, die jede Anforderung des Anbieters verarbeiten kann. Der Anbieter sollte AddRef für diesen Zeiger aufrufen, wenn er während der Ausführung zurück in die Windows-Verwaltung ruft.

[in] lNumObjects

Ganze Zahl, die die Anzahl der abzurufenden Objekte enthält.

[in, out] apObj

Zeiger auf ein Array von IWbemObjectAccess-Objekten . Die GetObjects-Methode fügt die wichtigsten Eigenschaften jedes Objekts in dieses Array ein.

lFlags

Reserviert. Dieser Parameter muss 0 sein.

pContext

In der Regel NULL; Andernfalls ein Zeiger auf ein IWbemContext-Objekt , das von einem oder mehreren dynamischen Klassenanbietern benötigt wird. Die Werte im Kontextobjekt müssen in der spezifischen Anbieterdokumentation angegeben werden. Weitere Informationen zu diesem Parameter finden Sie unter Ausführen von Aufrufen von WMI.

Rückgabewert

Diese Methode gibt ein HRESULT zurück, das den Status des Methodenaufrufs angibt. In der folgenden Liste ist der in einem HRESULT enthaltene Wert aufgeführt.

Hinweise

Für die angeforderten Objekte werden die wichtigsten Eigenschaften ausgefüllt.

Beispiele

Im folgenden Codebeispiel wird beschrieben, wie GetObjects implementiert wird.

HRESULT CMyHiPerfProvider::GetObjects(
  /* [in] */IWbemServices *pNamespace,
  /* [in] */  long lNumObjects,
  /* [in,out] */IWbemObjectAccess **apObj,
  /* [in] */long lFlags,
  /* [in] */IWbemContext *pCtx
)
{

  for ( long i = 0; i < lNumObjects; i++ )
  {
      // Validate the instance (that is, ensure
      // the path is good); if it fails, return
      // the error.

      // For example, create a method that validates
      // the IWbemObjectAccess instance and returns
      // false if validation failed.
      /*if ( !ValidateInstance( apObj[i] ) )
          return WBEM_E_NOT_FOUND;*/

      // Fill out the instance.
      // For example, create a method that assigns
      // a value to the IWbemObjectAccess instance.
      /*FillInstance( apObj[i] );*/
  }

  return WBEM_S_NO_ERROR;
}

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Zielplattform Windows
Kopfzeile wbemprov.h (include Wbemidl.h)
Bibliothek Wbemuuid.lib
DLL Wmiprvsd.dll

Weitere Informationen

Entwickeln eines WMI-Anbieters

IWbemHiPerfProvider

Umwandeln eines Instanzanbieters in einen Hochleistungsanbieter

Leistungsindikator-Provider

Schreiben eines Instanzanbieters