Auf Englisch lesen

Freigeben über


IWDTFPNPActions2::EDTTryStopDeviceFailRestart-Methode (wdtfpnpaction.h)

Versucht, ein IRP_MN_STOP_DEVICE-Ereignis an das Zielgerät zu senden, und schlägt dann den nachfolgenden Geräteneustart fehl.

Syntax

HRESULT EDTTryStopDeviceFailRestart(
  [out, retval] VARIANT_BOOL *pbSuccess
);

Parameter

[out, retval] pbSuccess

True, wenn der Vorgang erfolgreich ist; Andernfalls false.

Rückgabewert

Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.

Hinweise

Hinweis Die IWDTFEnhancedDeviceTestSupportAction2::Enable-Methode muss für das Zielgerät aufgerufen werden, bevor diese Methode aufgerufen wird.
 
EDTTryStopDeviceFailRestart versucht, einen PnP-Ressourcenausgleich auszulösen (eine Abfragestopp-, Stopp-, Start-IRP-Sequenz), bei der das IRP_MN_START_DEVICE-Ereignis, das auf ein erfolgreiches Beenden und Beenden von Abfragen folgt, fehlschlägt. Die fehlgeschlagene Start-IRP führt wiederum dazu, dass das System das Gerät überraschend entfernt (IRP_MN_SURPRISE_REMOVAL).

Die Stop-IRP ist nicht garantiert. Bei anderen Treibern im Stapel kann ein IRP_MN_QUERY_STOP_DEVICE-Ereignis fehlschlagen, das dem Stopp-IRP vorangestellt ist (was zu IRP_MN_CANCEL_STOP_DEVICE führt). Außerdem kann das System optimieren, wenn es erkennt, dass das Zielgerät keine Hardwareressourcen (z. B. eine USB-Maus) verwendet, und stattdessen eine CancelStop-IRP sendet.

Wenn Ihr Gerät keine Hardwareressourcen nutzt, Sie aber trotzdem versuchen möchten, zu testen, wie die Treiber und Anwendungen den Ausgleich der PnP-Ressource bei einem fehlgeschlagenen Start behandeln, können Sie stattdessen die EDTTryStopDeviceFailRestart-Methode auf einem übergeordneten Gerät, einem Großelternteil usw. ausführen, das Hardwareressourcen verbraucht. Wenn Ihr Gerät beispielsweise eine USB-Maus ist, können Sie diese Methode stattdessen auf dem übergeordneten USB-Controller ausführen.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile wdtfpnpaction.h