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.
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
Umwandeln eines Instanzanbieters in einen Hochleistungsanbieter