Funzione WdfDeviceSetFailed (wdfdevice.h)
[Si applica a KMDF e UMDF]
Il metodo WdfDeviceSetFailed informa il framework che il driver ha rilevato un errore hardware o software associato a un dispositivo specificato.
Sintassi
void WdfDeviceSetFailed(
[in] WDFDEVICE Device,
[in] WDF_DEVICE_FAILED_ACTION FailedAction
);
Parametri
[in] Device
Handle per un oggetto dispositivo framework.
[in] FailedAction
Enumeratore WDF_DEVICE_FAILED_ACTIONtipizzato che indica se il framework deve tentare di ricaricare i driver del dispositivo specificati.
Valore restituito
Nessuno
Osservazioni
Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.
Se un driver rileva un errore hardware o software irreversibile, deve chiamare WdfDeviceSetFailed in modo che il sistema possa scaricare i driver del dispositivo.
A partire da UMDF versione 2.15, un driver UMDF può richiedere che il driver del bus sottostante lo enumera chiamando WdfDeviceSetFailed con FailedAction impostato su WdfDeviceFailedAttemptRestart. Il driver del bus deve supportare l'interfaccia GUID_REENUMERATE_SELF_INTERFACE_STANDARD.
In alternativa, un driver UMDF può impostare failedAction su WdfDeviceFailedNoRestart.
Per altre informazioni su WdfDeviceSetFailed, vedere Segnalazione di errori dei dispositivi.
Esempi
L'esempio di codice seguente informa il framework che si è verificato un errore. Se i driver del dispositivo specificati non supportano altri dispositivi, il framework scaricherà i driver e tenterà di ricaricarli.
WdfDeviceSetFailed(
device,
WdfDeviceFailedAttemptRestart
);
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Universale |
versione minima di KMDF | 1.0 |
versione minima di UMDF | 2.0 |
intestazione | wdfdevice.h (include Wdf.h) |
libreria | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
regole di conformità DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |