enumeração CM_NOTIFY_ACTION (cfgmgr32.h)
Essa enumeração identifica Plug and Play tipos de evento de dispositivo.
Syntax
typedef enum _CM_NOTIFY_ACTION {
CM_NOTIFY_ACTION_DEVICEINTERFACEARRIVAL = 0,
CM_NOTIFY_ACTION_DEVICEINTERFACEREMOVAL,
CM_NOTIFY_ACTION_DEVICEQUERYREMOVE,
CM_NOTIFY_ACTION_DEVICEQUERYREMOVEFAILED,
CM_NOTIFY_ACTION_DEVICEREMOVEPENDING,
CM_NOTIFY_ACTION_DEVICEREMOVECOMPLETE,
CM_NOTIFY_ACTION_DEVICECUSTOMEVENT,
CM_NOTIFY_ACTION_DEVICEINSTANCEENUMERATED,
CM_NOTIFY_ACTION_DEVICEINSTANCESTARTED,
CM_NOTIFY_ACTION_DEVICEINSTANCEREMOVED,
CM_NOTIFY_ACTION_MAX
} CM_NOTIFY_ACTION, *PCM_NOTIFY_ACTION;
Constantes
CM_NOTIFY_ACTION_DEVICEINTERFACEARRIVAL Valor: 0 Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE. Essa ação indica que uma interface de dispositivo que atende aos critérios de filtro foi habilitada. |
CM_NOTIFY_ACTION_DEVICEINTERFACEREMOVAL Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEINTERFACE. Essa ação indica que uma interface de dispositivo que atende aos critérios de filtro foi desabilitada. |
CM_NOTIFY_ACTION_DEVICEQUERYREMOVE Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEHANDLE. Essa ação indica que o dispositivo está sendo removido da consulta. Para permitir que a remoção da consulta seja bem-sucedida, chame CloseHandle para fechar todos os identificadores abertos no dispositivo. Se você não fizer isso, o identificador aberto impedirá que a remoção de consulta deste dispositivo seja bem-sucedida. Consulte Registrando-se para notificação de chegada da interface do dispositivo e remoção de dispositivo para obter mais informações. Para vetar a remoção da consulta, retorne ERROR_CANCELLED. No entanto, é recomendável que você não vete a remoção da consulta e permita que ela aconteça fechando os identificadores abertos no dispositivo. |
CM_NOTIFY_ACTION_DEVICEQUERYREMOVEFAILED Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEHANDLE. Essa ação indica que a remoção de consulta de um dispositivo falhou. Se você fechou o identificador para este dispositivo durante uma notificação anterior de CM_NOTIFY_ACTION_DEVICEQUERYREMOVE, abra um novo identificador para o dispositivo para continuar enviando solicitações de E/S para ele. Consulte Registrando-se para notificação de chegada da interface do dispositivo e remoção de dispositivo para obter mais informações. |
CM_NOTIFY_ACTION_DEVICEREMOVEPENDING Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEHANDLE. O dispositivo será removido. Se você ainda tiver um identificador aberto para o dispositivo, chame CloseHandle para fechar o identificador do dispositivo. Consulte Registrando-se para notificação de chegada da interface do dispositivo e remoção de dispositivo para obter mais informações. O sistema pode enviar uma notificação CM_NOTIFY_ACTION_DEVICEREMOVEPENDING sem enviar uma mensagem de CM_NOTIFY_ACTION_DEVICEQUERYREMOVE correspondente. Nesses casos, os aplicativos e drivers devem se recuperar da perda do dispositivo da melhor maneira possível. |
CM_NOTIFY_ACTION_DEVICEREMOVECOMPLETE Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEHANDLE. O dispositivo foi removido. Se você ainda tiver um identificador aberto para o dispositivo, chame CloseHandle para fechar o identificador do dispositivo. Consulte Registrando-se para notificação de chegada da interface do dispositivo e remoção de dispositivo para obter mais informações. O sistema pode enviar uma notificação de CM_NOTIFY_ACTION_DEVICEREMOVECOMPLETE sem enviar mensagens de CM_NOTIFY_ACTION_DEVICEQUERYREMOVE ou CM_NOTIFY_ACTION_DEVICEREMOVEPENDING correspondentes. Nesses casos, os aplicativos e drivers devem se recuperar da perda do dispositivo da melhor maneira possível. |
CM_NOTIFY_ACTION_DEVICECUSTOMEVENT Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEHANDLE. Essa ação é enviada quando ocorre um evento personalizado definido pelo driver. |
CM_NOTIFY_ACTION_DEVICEINSTANCEENUMERATED Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE. Essa ação é enviada quando uma nova instância de dispositivo que atende aos critérios de filtro é enumerada. |
CM_NOTIFY_ACTION_DEVICEINSTANCESTARTED Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE. Essa ação é enviada quando uma instância de dispositivo que atende aos critérios de filtro é iniciada. |
CM_NOTIFY_ACTION_DEVICEINSTANCEREMOVED Para esse valor, defina o membro FilterType da estrutura CM_NOTIFY_FILTER para CM_NOTIFY_FILTER_TYPE_DEVICEINSTANCE. Essa ação é enviada quando uma instância de dispositivo que atende aos critérios de filtro não está mais presente. |
CM_NOTIFY_ACTION_MAX Não use. |
Comentários
Quando um driver chama a função CM_Register_Notification , o parâmetro pCallback contém um ponteiro para uma rotina a ser chamada quando ocorre um evento PnP especificado. O parâmetro Action da rotina de retorno de chamada é um valor da enumeração CM_NOTIFY_ACTION .
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | cfgmgr32.h |