Funzione WdfPdoInitAssignRawDevice (wdfpdo.h)
[Si applica solo a KMDF]
Il metodo WdfPdoInitAssignRawDevice indica che il driver chiamante può supportare un dispositivo specificato in modalità non elaborata.
Sintassi
NTSTATUS WdfPdoInitAssignRawDevice(
[in] PWDFDEVICE_INIT DeviceInit,
[in] const GUID *DeviceClassGuid
);
Parametri
[in] DeviceInit
Puntatore a una struttura WDFDEVICE_INIT .
[in] DeviceClassGuid
Puntatore a un GUID che identifica una classe di installazione del dispositivo.
Nota È consigliabile specificare sempre un GUID di classe personalizzato. Non è consigliabile specificare un GUID di classe esistente. Se si specifica un GUID di classe esistente, altri driver che tentano di specificare che il GUID della classe esistente potrebbe non essere installato o potrebbe essere installato con impostazioni di sicurezza non corrette.
Per ulteriori informazioni, vedere la sezione Osservazioni successiva.
Valore restituito
Se l'operazione ha esito positivo, il metodo restituisce STATUS_SUCCESS. In caso contrario, restituisce STATUS_INVALID_PARAMETER.
Commenti
Il driver deve chiamare WdfPdoInitAssignRawDevice prima di chiamare WdfDeviceCreate. Per altre informazioni sulla chiamata a WdfDeviceCreate, vedere Creazione di un oggetto dispositivo Framework.
Il Registro di sistema può contenere valori che eseguono l'override dei valori specificati da un driver quando chiama WdfDeviceInitAssignSDDLString, WdfDeviceInitSetDeviceType, WdfDeviceInitSetCharacteristics e WdfDeviceInitSetExclusive. Il parametro DeviceClassGuid del metodo WdfPdoInitAssignRawDevice specifica un GUID che identifica la sezione del Registro di sistema che contiene i valori di override. Il parametro DeviceClassGuid identifica solo una sezione del Registro di sistema e non imposta effettivamente la classe di installazione del dispositivo per il dispositivo. La sezione VERSIONE INF nel file INF del dispositivo e del driver imposta la classe di installazione del dispositivo. In genere, il GUID del parametro DeviceClassGuid deve corrispondere al GUID specificato dalla sezione VERSIONE INF .
Per altre informazioni sull'uso del Registro di sistema, vedere Impostazione delle proprietà del Registro oggetti dispositivo dopo l'installazione.
Esempio
Il frammento di codice seguente dall'esempio di driver kmdf_enumswitches indica che un driver può supportare il dispositivo specificato in modalità non elaborata.
NTSTATUS status;
DEFINE_GUID(GUID_DEVCLASS_MYUNIQUEID,
0xf149fe88, 0x f6cc, 0x47e3, 0x85, 0x94, 0xe2, 0xaa, 0xb6, 0xe0, 0x3b, 0xdf);
status = WdfPdoInitAssignRawDevice(
pDeviceInit,
&GUID_DEVCLASS_MYUNIQUEID
);
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) |