Freigeben über


WdfPdoInitAssignDeviceID-Funktion (wdfpdo.h)

[Gilt nur für KMDF]

Die WdfPdoInitAssignDeviceID Methode aktualisiert die Geräte-ID für ein untergeordnetes Gerät.

Syntax

NTSTATUS WdfPdoInitAssignDeviceID(
  [in] PWDFDEVICE_INIT  DeviceInit,
  [in] PCUNICODE_STRING DeviceID
);

Die Parameter

[in] DeviceInit

Ein Zeiger auf eine WDFDEVICE_INIT Struktur.

[in] DeviceID

Ein Zeiger auf eine UNICODE_STRING Struktur, die eine Geräte-ID-Zeichenfolge enthält. Der Treiber kann den Puffer der Zeichenfolge aus dem ausgelagerten Pool zuordnen.

Rückgabewert

Wenn der Vorgang erfolgreich ist, gibt die Methode STATUS_SUCCESS zurück. Weitere Rückgabewerte sind:

Rückgabecode BESCHREIBUNG
STATUS_INVALID_DEVICE_REQUEST
Der Treiber initialisiert einen FDO anstelle eines PDO.
STATUS_INSUFFICIENT_RESOURCES
Der Treiber konnte keinen Speicherplatz zuordnen, um die Geräte-ID-Zeichenfolge zu speichern.
 

Die Methode kann auch andere NTSTATUS-Wertezurückgeben.

Bemerkungen

Eine Geräte-ID ist in der Regel das erste Element in der Liste der Hardware-IDs, die ein Gerät meldet. Weitere Informationen zu Geräte-IDs und Hardware-IDs finden Sie unter Device Identification Strings und How Setup Selects Drivers.

Der Treiber muss WdfPdoInitAssignDeviceID- aufrufen, bevor WdfDeviceCreateaufgerufen wird. Weitere Informationen zum Aufrufen WdfDeviceCreatefinden Sie unter Creating a Framework Device Object.

Beispiele

Im folgenden Codebeispiel wird eine Geräte-ID gemeldet, die vom KbFiltr Beispieltreiber verwendet wird.

#define  KBFILTR_DEVICE_ID L"{A65C87F9-BE02-4ed9-92EC-012D416169FA}\\KeyboardFilter\0"
DECLARE_CONST_UNICODE_STRING(deviceId,KBFILTR_DEVICE_ID);

status = WdfPdoInitAssignDeviceID(
                                  pDeviceInit,
                                  &deviceId
                                  );

Anforderungen

Anforderung Wert
Zielplattform universell
Minimale KMDF-Version 1.0
Kopfzeile wdfpdo.h (include Wdf.h)
Bibliothek Wdf01000.sys (siehe Framework-Bibliotheksversionsverwaltung.)
IRQL PASSIVE_LEVEL
DDI-Complianceregeln ChildDeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf)

Siehe auch

WdfPdoInitAddCompatibleID-

WdfPdoInitAddHardwareID-

WdfPdoInitAssignInstanceID-