Compartilhar via


DrvEscape

Windows Mobile Not SupportedWindows Embedded CE Supported

9/8/2008

Essa função recupera informações de um dispositivo que não está disponível em um DDI device-independent. Essa função opera o mesmo como em área de trabalho Windows-Based plataformas, mas Windows Embedded CE não suporte a DrvDrawEscape função. DrvEscape é usada para recuperar informações de um dispositivo que não está disponível em uma interface driver de dispositivo device-independent; a consulta específica depende de como o valor da iEsc parâmetro.

Syntax

ULONG DrvEscape(
  DHPDEV dhpdev,
  SURFOBJ* pso,
  ULONG iEsc,
  ULONG cjIn,
  PVOID pvIn,
  ULONG cjOut,
  PVOID pvOut
);

Parameters

  • dhpdev
    [no] Identificador para o dispositivo que está recebendo o DrvEscape chamar.
  • pso
    [no] Ponteiro para um SURFOBJ estrutura que descreve a superfície aos quais o chamar é direcionada.
  • iEsc
    [no] Consulte. O significado dos outros parâmetros depende esse valor. QUERYESCSUPPORT é o valor predefinido somente; Ele consulta se o driver oferece suporte a uma função de escape específico. Neste maiúsculas e minúsculas, pvIn aponta para um número função escape; cjOut e pvOut são ignorados. Se a função especificada é com suporte, o valor de retorno é diferente de zero.
  • cjIn
    [no] Tamanho, em bytes, da reserva apontado pelo pvIn.
  • pvIn
    [no] Ponteiro para a entrada dados para o chamar. O formato da entrada de dados depende de como a consulta especificada pela iEsc parâmetro.
  • cjOut
    [no] Tamanho, em bytes, da reserva apontado pelo pvOut.
  • pvOut
    [out] Ponteiro para a reserva saída. O formato de dados de saída depende de como a consulta especificada pela iEsc parâmetro.

Return Value

O valor de retorno é dependente na consulta especificada pela iEsc parâmetro. Se a função especificada na consulta não for com suporte, o valor de retorno é zero.

Remarks

Desenho no dispositivo não é permitido nessa função.

GDI passa dados diretamente de um possivelmente mal-intencionado aplicativo cliente para o driver, o que significa que o DrvEscape função deve validar entrada todos os argumentos. A seguinte lista mostra que esta função deve verificar:

  • O iEsc valor do parâmetro representa um válido consulta.
  • O cjIn valor do parâmetro é válido para a consulta especificada.
  • O pvIn Conteúdo parâmetro é válido para a consulta especificada.
  • O cjOut Conteúdo parâmetro é válido para a consulta especificada.

Microsoft reserva o intervalo 0 to 0X10000 para seus códigos de escape. Terceiro-parte fornecedores são livre para escolher escape códigos para seu próprio uso acima esse intervalo. Códigos de escape específicos do driver pode estar em conflito com com aqueles usados em outros drivers exibir, portanto, é importante para um driver exibir para validar os parâmetros de escape antes processamento de escape. Uma maneira para fazer isso é validar a tamanho do bloco de entrada, saída bloco tamanho e a entrada Parâmetros bloco. Para aumentar a segurança, os drivers devem incluir um valor específico que deve ser definido de forma apropriada em cada entrada bloco para garantir que a entrada bloco é de um fonte confiável.

Requirements

Header winddi.h
Library Ddi_ati_lib.lib, Ddi_flat_lib.lib, Ddi_gx_lib.lib, Ddi_mq200_lib.lib, Ddi_nop_lib.lib, Ddi_rflat_lib.lib, Ddi_rgx_lib.lib, Ddi_tvia5_lib.lib
Windows Embedded CE Windows CE 1.0 and later

See Also

Other Resources

Display Drivers