Função VideoPortDDCMonitorHelper (video.h)
Consulta um monitor para informações do EDID usando o protocolo DDC.
Sintaxe
VIDEOPORT_DEPRECATED VIDEOPORT_API BOOLEAN VideoPortDDCMonitorHelper(
[in] IN PVOID HwDeviceExtension,
[in] IN PVOID DDCControl,
[in, out] IN OUT PUCHAR EdidBuffer,
[in] IN ULONG EdidBufferSize
);
Parâmetros
[in] HwDeviceExtension
Um ponteiro para a extensão do dispositivo do driver de miniport.
[in] DDCControl
Um ponteiro para uma estrutura DDC_CONTROL.
[in, out] EdidBuffer
Um ponteiro para um buffer no qual o driver de porta de vídeo retorna a estrutura de EDID. Para dispositivos ACPI, os quatro primeiros bytes são predefinidos pelo driver de porta de vídeo para indicar uma tentativa de ler o EDID.
[in] EdidBufferSize
O tamanho em bytes do buffer ao qual edidBuffer pontos.
Valor de retorno
VideoPortDDCMonitorHelper retorna TRUE se bem-sucedido.
Observações
Essa função existia antes da versão do Windows XP, mas foi alterada.
A função HwVidGetVideoChildDescriptor do driver de vídeo pode chamar VideoPortDDCMonitorHelper para obter assistência na leitura da estrutura de EDID de um monitor compatível com DDC2. VideoPortDDCMonitorHelper implementa os detalhes da leitura da estrutura EDID de acordo com a especificação do I²C, mas deve chamar de volta para o driver de miniporto de vídeo para ler e gravar bits de dados individuais no relógio serial E linhas de dados do I²C.
As quatro funções, implementadas pelo driver de miniporto de vídeo, que leem e gravam bits individuais no relógio I²C e linhas de dados são ReadClockLine, ReadDataLine, WriteClockLinee WriteDataLine. Quando o driver de miniporto de vídeo chama VideoPortDDCMonitorHelper, ele fornece ponteiros para essas quatro funções em DDCControl ->I2CCallbacks.
O EDID pode ser obtido usando o método ACPI_METHOD_OUTPUT_DDC cujo alias é definido em Dispmprt.h. Esse método é necessário para LCDs integrados que não têm outro mecanismo padrão para retornar dados EDID.
Em um buffer de 256 bytes, um chamador dessa função pode receber:
- Um EDID de 128 bytes
- Dois EDIDs de 128 bytes
- Um EDID de 256 bytes (da exibição P&D)
- Sem EDID
O chamador sempre deve solicitar os 256 bytes completos, pois é impossível ler apenas o segundo bloco de 128 bytes do segmento.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível no Windows 2000 e versões posteriores dos sistemas operacionais Windows. |
da Plataforma de Destino | Área de trabalho |
cabeçalho | video.h (inclua Video.h) |
biblioteca | Videoprt.lib |
de DLL | Videoprt.sys |
IRQL | PASSIVE_LEVEL |