IOCTL_STORAGE_SET_HOTPLUG_INFO IOCTL (ntddstor.h)
Legt die Hotplug-Konfiguration des angegebenen Geräts fest. Diese Anforderung verwendet eine STORAGE_HOTPLUG_INFO-Struktur als Eingabe. Das DeviceHotplug-Element der STORAGE_HOTPLUG_INFO-Struktur bestimmt, welche Aktion ausgeführt wird. Wenn der Wert dieses Members ungleich null ist, wird der Wert für die Entfernungsrichtlinie des Geräts in der Registrierung auf ExpectSurpriseRemoval festgelegt, und alle Ebenen der Zwischenspeicherung sind deaktiviert. Wenn der Wert von DeviceHotplug null ist, wird die Entfernungsrichtlinie auf ExpectOrderlyRemoval festgelegt, und das Zwischenspeichern ist möglicherweise selektiv aktiviert.
Hauptcode
Eingabepuffer
Der Eingabepuffer.
Länge des Eingabepuffers
Parameters.DeviceIoControl.InputBufferLength in der E/A-Stapelposition gibt die Größe des Parameterpuffers in Bytes an, die größer oder gleich sizeof(STORAGE_HOTPLUG_INFO) sein muss.
Ausgabepuffer
Der Treiber gibt die Hotplug-Konfigurationsdaten in einer STORAGE_HOTPLUG_INFO-Struktur im Puffer unter Irp-AssociatedIrp.SystemBuffer> zurück.
Länge des Ausgabepuffers
Die Länge einer STORAGE_HOTPLUG_INFO-Struktur .
Statusblock
Das Feld Status ist auf STATUS_SUCCESS oder möglicherweise auf STATUS_INFO_LENGTH_MISMATCH festgelegt, wenn der Eingabepuffer zu klein ist. Es ist auf STATUS_INVALID_PARAMETER_1 festgelegt, wenn das Größe-Element von STORAGE_HOTPLUG_INFO nicht die Größe entspricht, die vom Klassentreiber für dieses Gerät erwartet wird. Sie wird auf STATUS_INVALID_PARAMETER_2 festgelegt, wenn das MediaRemoveable-Element einen anderen Wert als der Klassentreiber aufweist. Es wird auf STATUS_INVALID_PARAMETER_3 festgelegt, wenn das MediaHotplug-Element einen anderen Wert als der Klassentreiber aufweist, und er wird auf STATUS_INVALID_PARAMETER_5 festgelegt, wenn das WriteCacheEnableOverride-Element einen anderen Wert aufweist als der Klassentreiber.
Anforderungen
Anforderung | Wert |
---|---|
Header | ntddstor.h (einschließen von Ntddstor.h) |