WdfDeviceSetStaticStopRemove-Funktion (wdfdevice.h)
[Gilt für KMDF und UMDF]
Die WdfDeviceSetStaticStopRemove-Methode informiert das Framework darüber, ob ein Gerät angehalten und entfernt werden kann.
Syntax
void WdfDeviceSetStaticStopRemove(
[in] WDFDEVICE Device,
[in] BOOLEAN Stoppable
);
Parameter
[in] Device
Ein Handle für ein Framework-Geräteobjekt.
[in] Stoppable
Ein boolescher Wert, der angibt, ob das angegebene Gerät beendet und entfernt werden kann. True gibt an, dass das Gerät angehalten und entfernt werden kann. False gibt an, dass das Gerät nicht angehalten und entfernt werden kann.
Rückgabewert
Keine
Bemerkungen
Eine Fehlerüberprüfung tritt auf, wenn der Treiber ein ungültiges Objekthandle bereitstellt.
Standardmäßig kann ein Gerät angehalten und entfernt werden. Daher ruft ein Treiber in der Regel WdfDeviceSetStaticStopRemove nur auf, wenn er den Stoppable-Parameter vorübergehend auf FALSE festlegen muss. Beispielsweise kann ein Treiber, der einen DVD-Writer steuert, WdfDeviceSetStaticStopRemove aufrufen, wobei Stoppable auf FALSE festgelegt ist, bevor mit dem Brennen einer DVD begonnen wird. Nachdem der Treiber das Brennen der DVD abgeschlossen hat, wird WdfDeviceSetStaticStopRemove erneut aufgerufen, wobei Stoppable auf TRUE festgelegt ist.
Wenn das Gerät Ihres Treibers eine spezielle Datei unterstützt (siehe WdfDeviceSetSpecialFileSupport), lässt das Framework das Beenden oder Entfernen des Geräts nicht zu. In diesem Fall muss Ihr Treiber WdfDeviceSetStaticStopRemove nicht aufrufen.
Der Treiber muss mit jedem Aufruf von WdfDeviceSetStaticStopRemove übereinstimmen, wobei Stoppable auf FALSE festgelegt ist, wobei ein Aufruf von WdfDeviceSetStaticStopRemove mit Stoppable auf TRUE festgelegt ist.
Das Aufrufen von WdfDeviceSetStaticStopRemove mit Stoppable auf FALSE verhindert nicht, dass das Framework den Treiber benachrichtigt, wenn das Gerät unerwartet entfernt wird (überraschend entfernt).
Weitere Informationen dazu, wie Sie verhindern können, dass das Betriebssystem ein Gerät beendet, finden Sie unter Behandeln von Anforderungen zum Beenden eines Geräts.
Beispiele
Im folgenden Codebeispiel wird das Framework darüber informiert, dass das angegebene Gerät nicht angehalten und entfernt werden kann.
WdfDeviceSetStaticStopRemove(
device,
FALSE
);
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
KMDF-Mindestversion | 1.0 |
UMDF-Mindestversion | 2.0 |
Kopfzeile | wdfdevice.h (einschließen von Wdf.h) |
Bibliothek | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI-Complianceregeln | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |