Freigeben über


WdfIoTargetAllocAndQueryTargetProperty-Funktion (wdfiotarget.h)

[Gilt nur für KMDF]

Die WdfIoTargetAllocAndQueryTargetProperty--Methode weist einen Puffer zu und ruft eine angegebene Geräteeigenschaft für ein angegebenes E/A-Ziel ab.

Syntax

NTSTATUS WdfIoTargetAllocAndQueryTargetProperty(
  [in]           WDFIOTARGET              IoTarget,
  [in]           DEVICE_REGISTRY_PROPERTY DeviceProperty,
  [in]           POOL_TYPE                PoolType,
  [in, optional] PWDF_OBJECT_ATTRIBUTES   PropertyMemoryAttributes,
  [out]          WDFMEMORY                *PropertyMemory
);

Die Parameter

[in] IoTarget

Ein Handle für ein lokales oder Remote-E/A-Zielobjekt, das von einem vorherigen Aufruf an WdfDeviceGetIoTarget oder WdfIoTargetCreate oder von einer Methode abgerufen wurde, die ein spezialisiertes E/A-Ziel bereitstellt.

[in] DeviceProperty

Ein DEVICE_REGISTRY_PROPERTY-typed-Wert, der die abzurufende Geräteeigenschaft identifiziert.

[in] PoolType

Ein POOL_TYPE-typed-Wert, der den Speichertyp angibt, der zugewiesen werden soll.

[in, optional] PropertyMemoryAttributes

Ein Zeiger auf eine vom Aufrufer zugewiesene WDF_OBJECT_ATTRIBUTES Struktur, die Objektattribute für das Speicherobjekt beschreibt, das die Funktion zuweist. Dieser Parameter ist optional und kann WDF_NO_OBJECT_ATTRIBUTES werden.

[out] PropertyMemory

Ein Zeiger auf einen WDFMEMORY-typierten Speicherort, der ein Handle für ein Framework-Speicherobjekt empfängt.

Rückgabewert

WdfIoTargetAllocAndQueryTargetProperty gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt diese Methode möglicherweise einen der folgenden Werte zurück:

Rückgabecode BESCHREIBUNG
STATUS_INVALID_PARAMETER oder STATUS_INVALID_PARAMETER_2
Der wert, den der DeviceProperty parameter angegeben hat, war ungültig.
STATUS_INVALID_DEVICE_REQUEST
Die Treiber des Geräts haben die Eigenschaften des Geräts noch nicht gemeldet.
 

Diese Methode kann auch andere NTSTATUS-Wertezurückgeben.

Wenn der Treiber ein ungültiges Objekthandle bereitstellt, tritt eine Fehlerüberprüfung auf.

Bemerkungen

Die WdfIoTargetAllocAndQueryTargetProperty Methode bestimmt die Menge des Arbeitsspeichers, der zum Speichern der angeforderten Geräteeigenschaft erforderlich ist. Diese Methode weist genügend Arbeitsspeicher zu, um die Daten zu speichern, und gibt ein Handle zu einem Framework-Speicherobjekt zurück, das den zugewiesenen Arbeitsspeicher beschreibt. Um auf die Daten zuzugreifen, kann Ihr Treiber WdfMemoryGetBuffer-aufrufen.

Weitere Informationen zu WdfIoTargetAllocAndQueryTargetPropertyfinden Sie unter Abrufen von Informationen zu einem allgemeinen E/A-Ziel-.

Weitere Informationen zu E/A-Zielen finden Sie unter Using I/O Targets.

Beispiele

Im folgenden Codebeispiel wird WdfIoTargetAllocAndQueryTargetProperty- aufgerufen, um die DevicePropertyFriendlyName-Eigenschaft abzurufen. Nachdem WdfIoTargetAllocAndQueryTargetProperty zurückgegeben wurde, kann der Treiber WdfMemoryGetBuffer- aufrufen, um einen Zeiger auf den Puffer abzurufen, der die Namenszeichenfolge enthält.

WDFMEMORY  targetName;
NTSTATUS  status;

status = WdfIoTargetAllocAndQueryTargetProperty(
                                                Target,
                                                DevicePropertyFriendlyName,
                                                NonPagedPool,
                                                WDF_NO_OBJECT_ATTRIBUTES,
                                                &targetName
                                                );

Anforderungen

Anforderung Wert
Zielplattform universell
Minimale KMDF-Version 1.0
Kopfzeile wdfiotarget.h (include Wdf.h)
Bibliothek Wdf01000.sys (siehe Framework-Bibliotheksversionsverwaltung.)
IRQL PASSIVE_LEVEL
DDI-Complianceregeln DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Siehe auch

DEVICE_REGISTRY_PROPERTY

POOL_TYPE

WDF_OBJECT_ATTRIBUTES

WdfDeviceAllocAndQueryProperty

WdfDeviceGetIoTarget-

WdfIoTargetCreate

WdfIoTargetQueryTargetProperty

WdfMemoryGetBuffer-