Funzione WdfPdoInitAssignInstanceID (wdfpdo.h)
[Si applica solo a KMDF]
Il metodo WdfPdoInitAssignInstanceID aggiorna l'ID istanza per un dispositivo figlio.
Sintassi
NTSTATUS WdfPdoInitAssignInstanceID(
[in] PWDFDEVICE_INIT DeviceInit,
[in] PCUNICODE_STRING InstanceID
);
Parametri
[in] DeviceInit
Puntatore a una struttura WDFDEVICE_INIT .
[in] InstanceID
Puntatore a una struttura UNICODE_STRING che contiene una stringa ID istanza . Il driver può allocare il buffer della stringa dal pool di paging.
Valore restituito
Se l'operazione ha esito positivo, il metodo restituisce STATUS_SUCCESS. I valori restituiti aggiuntivi includono:
Codice restituito | Descrizione |
---|---|
|
Il driver sta inizializzando un fdO anziché un PDO. |
|
Impossibile allocare spazio al driver per archiviare la stringa ID istanza. |
Il metodo potrebbe anche restituire altri valori NTSTATUS.
Commenti
Per altre informazioni sugli ID istanza, vedere Stringhe di identificazione del dispositivo.
Il driver deve chiamare WdfPdoInitAssignInstanceID prima di chiamare WdfDeviceCreate. Per altre informazioni sulla chiamata a WdfDeviceCreate, vedere Creazione di un oggetto dispositivo framework.
Esempio
L'esempio di codice seguente converte il numero di serie di un dispositivo in una stringa Unicode e quindi registra la stringa Unicode come ID istanza del dispositivo.
DECLARE_UNICODE_STRING_SIZE(instanceID, INSTANCEID_LENGTH);
status = RtlIntegerToUnicodeString(
SerialNo,
BASE_DEC,
&instanceID
);
status = WdfPdoInitAssignInstanceID(
pDeviceInit,
&instanceID
);
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Versione KMDF minima | 1.0 |
Intestazione | wdfpdo.h (include Wdf.h) |
Libreria | Wdf01000.sys (vedere Controllo delle versioni della libreria framework). |
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) |