IOCTL_STORAGE_SET_HOTPLUG_INFO IOCTL (ntddstor.h)

Define a configuração de hotplug do dispositivo especificado. Essa solicitação usa uma estrutura STORAGE_HOTPLUG_INFO como entrada. O membro DeviceHotplug da estrutura STORAGE_HOTPLUG_INFO determina qual ação é tomada. Se o valor desse membro for diferente de zero, o valor da política de remoção do dispositivo no registro será definido como ExpectSurpriseRemoval e todos os níveis de cache serão desabilitados. Se o valor de DeviceHotplug for zero, a política de remoção será definida como ExpectOrderlyRemoval e o cache poderá ser habilitado seletivamente.

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

O buffer de entrada.

Comprimento do buffer de entrada

Parameters.DeviceIoControl.InputBufferLength no local da pilha de E/S indica o tamanho, em bytes, do buffer de parâmetros, que deve ser maior ou igual a sizeof(STORAGE_HOTPLUG_INFO).

Buffer de saída

O driver retorna os dados de configuração de hotplug em uma estrutura STORAGE_HOTPLUG_INFO no buffer em Irp-AssociatedIrp.SystemBuffer>.

Comprimento do buffer de saída

O comprimento de uma estrutura STORAGE_HOTPLUG_INFO .

Bloco de status

O campo Status é definido como STATUS_SUCCESS ou possivelmente para STATUS_INFO_LENGTH_MISMATCH se o buffer de entrada for muito pequeno. Ele será definido como STATUS_INVALID_PARAMETER_1 se o membro Size de STORAGE_HOTPLUG_INFO não for o tamanho esperado pelo driver de classe para este dispositivo. Ele será definido como STATUS_INVALID_PARAMETER_2 se o membro MediaRemoveable tiver um valor diferente daquele mantido pelo driver de classe. Ele será definido como STATUS_INVALID_PARAMETER_3 se o membro MediaHotplug tiver um valor diferente daquele mantido pelo driver de classe e for definido como STATUS_INVALID_PARAMETER_5 se o membro WriteCacheEnableOverride tiver um valor diferente daquele mantido pelo driver de classe.

Requisitos

Requisito Valor
Cabeçalho ntddstor.h (inclua Ntddstor.h)

Confira também

IOCTL_STORAGE_GET_HOTPLUG_INFO

STORAGE_HOTPLUG_INFO