Função BdaGetChangeState (bdasup.h)
A função BdaGetChangeState retorna o estado de alteração atual da topologia do BDA.
Sintaxe
NTSTATUS BdaGetChangeState(
[in] PIRP pIrp,
[out, optional] PBDA_CHANGE_STATE pChangeState
);
Parâmetros
[in] pIrp
Aponta para o IRP para a solicitação para obter o estado de alteração atual. O minidriver BDA recebe esse IRP com a solicitação KSMETHOD_BDA_GET_CHANGE_STATE.
[out, optional] pChangeState
Aponta para uma variável que recebe o estado de alteração atual da topologia do BDA. O estado de alteração do BDA pode ser um dos seguintes valores do tipo enumerado BDA_CHANGE_STATE:
Valor | Descrição |
---|---|
BDA_CHANGES_COMPLETE | As alterações de topologia do BDA estão concluídas. |
BDA_CHANGES_PENDING | As alterações de topologia do BDA estão pendentes. |
Valor de retorno
Retorna STATUS_SUCCESS ou um código de erro apropriado.
Observações
Um minidriver BDA chama a função BdaGetChangeState para recuperar o estado de alteração atual da topologia BDA depois que o minidriver recebe uma solicitação KSMETHOD_BDA_GET_CHANGE_STATE do método KSMETHODSETID_BdaChangeSync definido do provedor de rede. Os minidrivers BDA definem tabelas de expedição e de automação de filtro para que esses minidrivers enviem a função BdaGetChangeState diretamente ou interceptem essa solicitação usando um método interno (KStrMethodHandler), que chama a função BdaGetChangeState. Por exemplo, os minidrivers BDA que interceptam essa solicitação podem obter um ponteiro para o filtro BDA do IRP passado para que eles possam:
Não apenas verifique se há alterações de topologia pendentes, mas também se há alterações pendentes no filtro.
Retorne o estado de alteração atual para a topologia BDA e o filtro BDA.
Consulte Definindo tabelas de automação e alterando as propriedades de filtro do BDA para obter mais informações.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | bdasup.h (inclua Bdasup.h) |
biblioteca | Bdasup.lib |
IRQL | PASSIVE_LEVEL |