Condividi tramite


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)

Vedi anche

WdfDeviceInitAssignSDDLString

WdfDeviceInitSetCharacteristics

WdfDeviceInitSetDeviceType

WdfDeviceInitSetExclusive