Funzione WdfPdoInitAssignDeviceID (wdfpdo.h)

[Si applica solo a KMDF]

Il metodo WdfPdoInitAssignDeviceID aggiorna l'ID dispositivo per un dispositivo figlio.

Sintassi

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

Parametri

[in] DeviceInit

Puntatore a una struttura WDFDEVICE_INIT .

[in] DeviceID

Puntatore a una struttura UNICODE_STRING contenente una stringa ID dispositivo. Il driver può allocare il buffer della stringa dal pool con pagine.

Valore restituito

Se l'operazione ha esito positivo, il metodo restituisce STATUS_SUCCESS. I valori restituiti aggiuntivi includono:

Codice restituito Descrizione
STATUS_INVALID_DEVICE_REQUEST
Il driver inizializza un oggetto FDO anziché un oggetto PDO.
STATUS_INSUFFICIENT_RESOURCES
Impossibile allocare spazio al driver per archiviare la stringa ID dispositivo.
 

Il metodo potrebbe restituire anche altri valori NTSTATUS.

Commenti

Un ID dispositivo è in genere il primo elemento nell'elenco degli ID hardware segnalati da un dispositivo. Per altre informazioni sugli ID dispositivo e sugli ID hardware, vedere Stringhe di identificazione del dispositivo e Modalità di selezione dei driver.

Il driver deve chiamare WdfPdoInitAssignDeviceID prima di chiamare WdfDeviceCreate. Per altre informazioni sulla chiamata a WdfDeviceCreate, vedere Creazione di un oggetto dispositivo Framework.

Esempio

Nell'esempio di codice seguente viene segnalato un ID dispositivo usato dal driver di esempio KbFiltr .

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

status = WdfPdoInitAssignDeviceID(
                                  pDeviceInit,
                                  &deviceId
                                  );

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1.0
Intestazione wdfpdo.h (includere Wdf.h)
Libreria Wdf01000.sys (vedere Framework Library Versioning).
IRQL PASSIVE_LEVEL
Regole di conformità DDI ChildDeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf)

Vedi anche

WdfPdoInitAddCompatibleID

WdfPdoInitAddHardwareID

WdfPdoInitAssignInstanceID