Função SpbControllerSetRequestAttributes (spbcx.h)
O método SpbControllerSetRequestAttributes define atributos de objeto que serão usados para todos os objetos SPBREQUEST que a extensão da estrutura SPB (SpbCx) fornece ao driver do controlador SPB.
Sintaxe
void SpbControllerSetRequestAttributes(
[in] WDFDEVICE FxDevice,
[in] PWDF_OBJECT_ATTRIBUTES RequestAttributes
);
Parâmetros
[in] FxDevice
Um identificador WDFDEVICE para o objeto do dispositivo que representa o controlador SPB.
[in] RequestAttributes
Um ponteiro para uma estrutura de WDF_OBJECT_ATTRIBUTES alocada por chamador que contém atributos para os objetos SPBREQUEST do controlador SPB.
Valor de retorno
Nenhum
Observações
Durante a inicialização do dispositivo, o driver do controlador SPB pode chamar esse método para definir os atributos padrão para objetos SPBREQUEST. Depois disso, o SpbCx atribui esses atributos a todas as solicitações de E/S que ele entrega (ou encaminha) para dispositivos de destino no barramento.
RequestAttributes aponta para uma estrutura de WDF_OBJECT_ATTRIBUTES. O chamador deve ter chamado anteriormente a função WDF_OBJECT_ATTRIBUTES_INIT para inicializar essa estrutura. Após essa chamada, mas antes da chamada para SpbControllerSetRequestAttributes, o chamador pode alterar os valores dos seguintes membros desta estrutura:
- EvtCleanupCallback
- EvtDestroyCallback
- ContextSizeOverride
- ContextTypeInfo
WDF_OBJECT_ATTRIBUTES_INIT inicializa o EvtCleanupCallback e membros do EvtDestroyCallback para NULL. Se você alterar esses valores padrão para registrar um EvtCleanupCallback ou EvtDestroyCallback função de retorno de chamada, essa função será chamada sempre que uma solicitação de E/S chegar na fila do controlador SPB, que é gerenciada pelo SpbCx. Essa solicitação de E/S faz com que a função EvtCleanupCallback ou EvtDestroyCallback seja chamada mesmo que o SpbCx nunca apresente a solicitação ao driver do controlador SPB (porque a solicitação é cancelada depois que ela chega à fila, mas antes de ser passada para o driver).
O driver do controlador SPB deve chamar SpbControllerSetRequestAttributes antes de confirma o objeto do dispositivo, ou seja, antes de retornar do EvtDriverDeviceAdd retorno de chamada ou adicionar o PDO à lista filho do controlador. A lista filho representa os dispositivos anexados ao barramento. Para obter mais informações, consulte Enumerando os dispositivos em um barramento.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows 8. |
da Plataforma de Destino | Universal |
cabeçalho | spbcx.h |
biblioteca | Spbcxstubs.lib |
IRQL | PASSIVE_LEVEL |