Função AdvancedDocumentProperties

A função AdvancedDocumentProperties exibe uma caixa de diálogo de configuração de impressora para a impressora especificada, permitindo que o usuário configure essa impressora.

Essa função é um caso especial da função DocumentProperties . Para obter mais detalhes, consulte a seção Comentários.

Sintaxe

LONG AdvancedDocumentProperties(
  _In_  HWND     hWnd,
  _In_  HANDLE   hPrinter,
  _In_  LPTSTR   pDeviceName,
  _Out_ PDEVMODE pDevModeOutput,
  _In_  PDEVMODE pDevModeInput
);

Parâmetros

hWnd [in]

Um identificador para a janela pai da caixa de diálogo de configuração da impressora.

hPrinter [in]

Um identificador para um objeto de impressora. Use a função OpenPrinter ou AddPrinter para recuperar um identificador de impressora.

pDeviceName [in]

Um ponteiro para uma cadeia de caracteres terminada em nulo especificando o nome do dispositivo para o qual uma caixa de diálogo de configuração de impressora deve ser exibida.

pDevModeOutput [out]

Um ponteiro para uma estrutura DEVMODE que conterá os dados de configuração especificados pelo usuário.

pDevModeInput [in]

Um ponteiro para uma estrutura DEVMODE que contém os dados de configuração usados para inicializar os controles da caixa de diálogo de configuração da impressora.

Valor retornado

Se a função DocumentProperties com esses parâmetros for bem-sucedida, o valor retornado de AdvancedDocumentProperties será 1. Caso contrário, o valor retornado será zero.

Comentários

Observação

Essa é uma função de bloqueio ou síncrona e pode não retornar imediatamente. A rapidez com que essa função retorna depende de fatores de tempo de execução, como status de rede, configuração do servidor de impressão e fatores de implementação do driver de impressora que são difíceis de prever ao gravar um aplicativo. Chamar essa função de um thread que gerencia a interação com a interface do usuário pode fazer com que o aplicativo pareça não responder.

Essa função só pode exibir a caixa de diálogo de configuração da impressora para que um usuário possa configurá-la. Para obter mais controle, use DocumentProperties. Os parâmetros de entrada para essa função são passados diretamente para DocumentProperties e o valor fMode é definido como DM_IN_BUFFER | DM_IN_PROMPT | DM_OUT_BUFFER. Ao contrário de DocumentProperties, essa função retorna apenas 1 ou 0. Portanto, você não pode determinar o tamanho necessário de DEVMODE definindo pDevMode como zero.

Um aplicativo pode obter o nome apontado pelo parâmetro pDeviceName chamando a função GetPrinter e examinando o membro pPrinterName da estrutura PRINTER_INFO_2 .

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Winspool.h (inclua Windows.h)
Biblioteca
Winspool.lib
DLL
Winspool.drv
Nomes Unicode e ANSI
AdvancedDocumentPropertiesW (Unicode) e AdvancedDocumentPropertiesA (ANSI)

Confira também

Impressão

Funções da API do Spooler de impressão

AddPrinter

DEVMODE

Documentproperties

GetPrinter

OpenPrinter

PRINTER_INFO_2