WUDF_INTERRUPT_DISABLE função de retorno de chamada (wudfinterrupt.h)
Aviso
O UMDF 2 é a versão mais recente do UMDF e substitui o UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum recurso novo está sendo adicionado ao UMDF 1 e há suporte limitado para UMDF 1 em versões mais recentes do Windows 10. Os drivers universais do Windows devem usar o UMDF 2. Para obter mais informações, consulte Introdução aoUMDF.
A função de retorno de chamada de evento OnInterruptDisable do driver desabilita uma interrupção de hardware especificada.
Sintaxe
WUDF_INTERRUPT_DISABLE WudfInterruptDisable;
HRESULT WudfInterruptDisable(
[in] IWDFInterrupt *Interrupt,
[in] IWDFDevice *AssociatedDevice
)
{...}
Parâmetros
[in] Interrupt
Um ponteiro para a interface IWDFInterrupt.
[in] AssociatedDevice
Um ponteiro para a interface IWDFDevice que o driver usou para chamar CreateInterrupt.
Valor de retorno
OnInterruptDisable deverá retornar S_OK se a operação for bem-sucedida. Caso contrário, o retorno de chamada deverá retornar um dos códigos de erro definidos em Winerror.h.
Observações
Para registrar uma função de retorno de chamada OnInterruptDisable, o driver deve colocar o endereço da função de retorno de chamada em uma estrutura de WUDF_INTERRUPT_CONFIG antes de chamar IWDFDevice::CreateInterrupt.
A estrutura chama a função de retorno de chamada OnInterruptDisable do driver sempre que o dispositivo sair do estado de trabalho (D0). Além disso, um driver pode fazer com que a estrutura chame a função de retorno de chamada OnInterruptDisable chamando IWDFInterrupt::D isable.
Antes de chamar a função OnInterruptDisable de retorno de chamada, a estrutura chama o onD0ExitPreInterruptsDisabled do driver função de retorno de chamada de evento e adquire o bloqueio de interrupção do modo de usuário.
Para obter mais informações sobre como lidar com interrupções em drivers UMDF, consulte Acessando o hardware e tratando interrupções.
Exemplos
O tipo de função é declarado em Wudfinterrupt.h, da seguinte maneira.
typedef
__drv_functionClass(WUDF_INTERRUPT_DISABLE)
HRESULT
WUDF_INTERRUPT_DISABLE(
_In_
IWDFInterrupt* Interrupt,
_In_
IWDFDevice* AssociatedDevice
);
typedef WUDF_INTERRUPT_DISABLE *PFN_WUDF_INTERRUPT_DISABLE;
Para definir uma função de retorno de chamada OnInterruptDisable denominada MyInterruptDisable, primeiro você deve fornecer uma declaração de função que o SDV e outras ferramentas de verificação exigem, da seguinte maneira:
WUDF_INTERRUPT_DISABLE MyInterruptDisable;
Em seguida, implemente sua função de retorno de chamada da seguinte maneira:
HRESULT
MyInterruptDisable (
IN IWDFInterrupt* pInterrupt,
IN IWDFDevice* pAssociatedDevice
)
{…}
Requisitos
Requisito | Valor |
---|---|
fim do suporte | Indisponível no UMDF 2.0 e posterior. |
da Plataforma de Destino | Área de trabalho |
versão mínima do UMDF | 1.11 |
cabeçalho | wudfinterrupt.h |