Funzione WdfDeviceSetStaticStopRemove (wdfdevice.h)
[Si applica a KMDF e UMDF]
Il metodo WdfDeviceSetStaticStopRemove informa il framework se un dispositivo può essere arrestato e rimosso.
Sintassi
void WdfDeviceSetStaticStopRemove(
[in] WDFDEVICE Device,
[in] BOOLEAN Stoppable
);
Parametri
[in] Device
Handle per un oggetto dispositivo framework.
[in] Stoppable
Valore booleano che indica se il dispositivo specificato può essere arrestato e rimosso. Se TRUE, il dispositivo può essere arrestato e rimosso. Se FALSE, il dispositivo non può essere arrestato e rimosso.
Valore restituito
Nessuno
Osservazioni:
Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.
Per impostazione predefinita, un dispositivo può essere arrestato e rimosso. Pertanto, un driver chiama in genere WdfDeviceSetStaticStopRemove solo se deve impostare temporaneamente il parametro Stoppable su FALSE. Ad esempio, un driver che controlla un writer DVD potrebbe chiamare WdfDeviceSetStaticStopRemove con Stoppable impostato su FALSE prima di iniziare a masterizzare un DVD. Al termine della masterizzazione del DVD, il driver chiamerebbe di nuovo WdfDeviceSetStaticStopRemove con Stoppable impostato su TRUE.
Se il dispositivo del driver supporta un file speciale (vedere WdfDeviceSetSpecialFileSupport), il framework non consentirà l'arresto o la rimozione del dispositivo. In questo caso, il driver non deve chiamare WdfDeviceSetStaticStopRemove .
Il driver deve corrispondere a ogni chiamata a WdfDeviceSetStaticStopRemove con Stoppable impostato su FALSE con una chiamata a WdfDeviceSetStaticStopRemove con Stoppable impostato su TRUE.
Chiamando WdfDeviceSetStaticStopRemove con Stoppable impostato su FALSE non impedisce al framework di notificare al driver se il dispositivo viene rimosso in modo imprevisto (rimosso a sorpresa).
Per altre informazioni su come impedire al sistema operativo di arrestare un dispositivo, vedere gestione delle richieste per arrestare un dispositivo.
Esempi
L'esempio di codice seguente informa il framework che il dispositivo specificato non può essere arrestato e rimosso.
WdfDeviceSetStaticStopRemove(
device,
FALSE
);
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
versione minima di KMDF | 1.0 |
versione minima di UMDF | 2.0 |
intestazione | wdfdevice.h (include Wdf.h) |
Biblioteca | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
regole di conformità DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |