Função KsDeviceSetBusData (ks.h)
A função KsDeviceSetBusData grava dados no barramento no qual reside o dispositivo AVStream especificado.
Sintaxe
KSDDKAPI ULONG KsDeviceSetBusData(
[in] PKSDEVICE Device,
[in] ULONG DataType,
[in] PVOID Buffer,
[in] ULONG Offset,
[in] ULONG Length
);
Parâmetros
[in] Device
Um ponteiro para uma estrutura de KSDEVICE. Essa rotina tenta gravar dados no barramento no qual esse dispositivo reside.
[in] DataType
Esse parâmetro indica o tipo de dados de barramento a serem gravados. Zero corresponde ao espaço de configuração. Para obter mais informações, consulte a discussão de do WhichSpace na página de referência do IRP_MN_READ_CONFIG.
[in] Buffer
Um ponteiro para um buffer que contém os dados a serem gravados no barramento. O número de bytes no buffer deve ser igual ou maior que Comprimento.
[in] Offset
Esse parâmetro contém o deslocamento de bytes para o espaço especificado por DataType em que os dados são gravados.
[in] Length
Esse parâmetro especifica o número de bytes de dados a serem gravados no barramento de Buffer.
Valor de retorno
KsDeviceSetBusData retorna o número de bytes realmente gravados no barramento. No caso de um erro, a rotina retorna zero. Veja os detalhes abaixo na seção Comentários.
Observações
Essa função é executada de forma diferente dependendo do driver do ônibus no qual o dispositivo especificado reside. Se o driver de ônibus der suporte ao padrão de interface do barramento (geralmente PCI), chame essa função em IRQL = PASSIVE_LEVEL ou DISPATCH_LEVEL. Após essa chamada, KsDeviceSetBusData retorna o número real de bytes gravados no espaço solicitado.
Se o motorista do ônibus não der suporte ao padrão de interface de barramento, o AVStream se comunicará com o motorista do ônibus usando IoCallDriver. Nesse caso, chame KsDeviceSetBusData em IRQL = PASSIVE_LEVEL. O valor retornado é zero, no caso de falha ou igual a Length se os dados tiverem sido gravados com êxito.
Os drivers em execução no Windows 2000 e posterior podem fazer essa chamada em IRQL = DISPATCH_LEVEL. No entanto, para garantir a compatibilidade, os gravadores de minidriver podem querer restringir o uso de KsDeviceSetBusData para IRQL = PASSIVE_LEVEL.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível no Microsoft Windows XP e em sistemas operacionais posteriores e no DirectX 8.0 e versões posteriores do DirectX. |
da Plataforma de Destino | Universal |
cabeçalho | ks.h (incluir Ks.h) |
biblioteca | Ks.lib |
IRQL | Consulte a seção Comentários. |