Partilhar via


evento DBT_DEVICEREMOVECOMPLETE

O sistema transmite o evento do dispositivo DBT_DEVICEREMOVECOMPLETE quando um dispositivo ou parte da mídia foi fisicamente removido.

Para transmitir esse evento de dispositivo, o sistema usa a mensagem WM_DEVICECHANGE com wParam definido como DBT_DEVICEREMOVECOMPLETE e lParam definidos conforme descrito a seguir.

LRESULT CALLBACK WindowProc(
  HWND hwnd,       // handle to window
  UINT uMsg,       // WM_DEVICECHANGE
  WPARAM wParam,   // device-change event
  LPARAM lParam    // event-specific data
);

Parâmetros

hwnd

Um identificador para uma janela.

uMsg

O identificador de mensagem WM_DEVICECHANGE .

wParam

Definir como DBT_DEVICEREMOVECOMPLETE

lParam

Um ponteiro para uma estrutura que identifica o dispositivo removido. A estrutura consiste em um cabeçalho independente de evento, seguido por membros dependentes de eventos que descrevem o dispositivo. Para usar essa estrutura, trate a estrutura como uma estrutura DEV_BROADCAST_HDR e, em seguida, marcar seu membro dbch_devicetype para determinar o tipo de dispositivo.

Valor retornado

Retornar TRUE.

Comentários

O sistema pode transmitir uma mensagem DBT_DEVICEREMOVECOMPLETE sem enviar mensagens de DBT_DEVICEQUERYREMOVE e DBT_DEVICEREMOVEPENDING correspondentes. Nesses casos, os aplicativos e drivers devem se recuperar da perda do dispositivo da melhor maneira possível.

Se a mídia estiver sendo removida, o tipo de dispositivo que chega é um volume (o membro dbch_devicetype é DBT_DEVTYP_VOLUME) e a alteração afeta a mídia (o membro dbcv_flags é DBTF_MEDIA).

Exemplos

Para obter um exemplo, consulte Detectando inserção ou remoção de mídia ou processando uma solicitação para remover um dispositivo.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows XP
Servidor mínimo com suporte
Windows Server 2003
Cabeçalho
Dbt.h

Confira também

Eventos do dispositivo

Eventos de Gerenciamento de Dispositivos

DEV_BROADCAST_HDR

WM_DEVICECHANGE