DevCreateObjectQueryFromIdEx-Funktion (devquery.h)
Erstellt eine Geräteabfrage zum Abrufen von Eigenschaften basierend auf den angegebenen Abfrageparametern, erweiterten Parametern und Objekt-ID.
Syntax
HRESULT DevCreateObjectQueryFromIdEx(
[in] DEV_OBJECT_TYPE ObjectType,
[in] PCWSTR pszObjectId,
[in] ULONG QueryFlags,
[in] ULONG cRequestedProperties,
[in, optional] const DEVPROPCOMPKEY *pRequestedProperties,
[in] ULONG cFilterExpressionCount,
[in, optional] const DEVPROP_FILTER_EXPRESSION *pFilter,
[in] ULONG cExtendedParameterCount,
[in, optional] const DEV_QUERY_PARAMETER *pExtendedParameters,
[in] PDEV_QUERY_RESULT_CALLBACK pCallback,
[in, optional] PVOID pContext,
[out] PHDEVQUERY phDevQuery
);
Parameter
[in] ObjectType
Ein Wert aus der DEV_OBJECT_TYPE-Aufzählung, der den Objekttyp bestimmt, für den diese Abfrage ausgeführt werden soll.
[in] pszObjectId
Der Zeichenfolgenbezeichner für das bestimmte Objekt, für das die Abfrage ausgeführt werden soll.
[in] QueryFlags
Eine Kombination aus DEV_QUERY_FLAGS Werten, die mithilfe eines bitweisen OR-Vorgangs kombiniert werden.
[in] cRequestedProperties
Die Anzahl der DEVPROPCOMPKEY- Strukturen, die in pRequestedPropertiesbereitgestellt werden. Wenn DevQueryFlagAllProperties- angegeben ist, muss dies auf 0 festgelegt werden.
[in, optional] pRequestedProperties
Stellt optional ein Array von DEVPROPCOMPKEY- Strukturen bereit, die die Eigenschaften angeben, die für Objekte im Resultset der Abfrage abgerufen werden sollen, wenn pCallback- aufgerufen wird, um die Abfrage über das Hinzufügen eines Objekts zu seinem Resultset zu benachrichtigen.
Wenn DevQueryFlagUpdateResults- in QueryFlags-angegeben wurde, wird die Abfrage benachrichtigt, wenn sich der Wert dieser Eigenschaften für ein Objekt im Resultset der Abfrage ändert.
Das LocaleName- Feld der DEVPROPCOMPKEY- Struktur wird ignoriert und muss auf NULL festgelegt werden.
Wenn cRequestedProperties 0 ist, muss dies NULL sein.
[in] cFilterExpressionCount
Die Anzahl der in pFilterbereitgestellten DEVPROP_FILTER_EXPRESSION Strukturen.
[in, optional] pFilter
Stellt optional ein Array von DEVPROP_FILTER_EXPRESSION Strukturen bereit, die Filterkriterien für die Objekte angeben, die Teil des Resultsets der Abfrage sein sollen. Wenn cFilterExpressionCount 0 ist, muss dies NULL sein.
[in] cExtendedParameterCount
Reserviert für die Systemverwendung. Muss auf 0 festgelegt sein.
[in, optional] pExtendedParameters
Reserviert für die Systemverwendung. Muss auf NULL festgelegt werden.
[in] pCallback
Eine PDEV_QUERY_RESULT_CALLBACK Rückruffunktion, an die Ergebnisse für diese Abfrage gesendet werden sollen.
[in, optional] pContext
Vom Aufrufer bereitgestellter Kontext. Dieser Wert wird an die Rückruffunktion übergeben, die nicht geändert wurde.
[out] phDevQuery
Zeiger, der das Handle empfängt, das die Abfrage darstellt. Wenn DevQueryFlagsUpdateResults- angegeben ist, empfängt die Abfrage Updates, bis das Handle geschlossen ist. Rufen Sie DevCloseObjectQuery auf, um dieses Handle zu schließen, um die Abfrage zu beenden.
Rückgabewert
S_OK wird zurückgegeben, wenn eine Abfrage erfolgreich erstellt wurde; andernfalls ein entsprechender Fehlerwert.
Bemerkungen
Wenn ein Client Daten zu einem bestimmten Objekt anhand seiner Identität abrufen möchte, verwenden Sie diese Funktion anstelle DevCreateObjectQuery- mit einem Filter. Diese Funktion ist effizienter.
Weitere Informationen finden Sie im Abschnitt "Hinweise" DevCreateObjectQuery, der auch für diese Funktion gilt. Ein Beispiel zum Erstellen einer Geräteabfrage zum Abrufen von Eigenschaften basierend auf den angegebenen Abfrageparametern und der Objekt-ID finden Sie unter DevCreateObjectQueryFromId.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 10, Version 1809 |
mindestens unterstützte Server- | Windows Server 2019 |
Header- | devquery.h |
Library | Onecore.lib |
DLL- | Cfgmgr32.dll |