Compartilhar via


Função ConfigurePortUI (winsplp.h)

Uma função ConfigurePortUI da IU do monitor de porta obtém informações de configuração de porta do usuário e as envia para a DLL do servidor de monitor de porta.

Sintaxe

BOOL WINAPI pfnConfigurePortUI(
  _In_opt_ PCWSTR pszServer,
  _In_     HWND   hWnd,
  _In_     PCWSTR pszPortName
);

Parâmetros

[in, optional] pszServer

Ponteiro fornecido pelo chamador para uma cadeia de caracteres que representa um nome de servidor ou NULL se a impressora for local. (O monitor de porta pode ignorar esse parâmetro.)

[in] hWnd

Identificador fornecido pelo chamador da janela que deve ser usado como o pai para caixas de diálogo. Se NULL, nenhuma caixa de diálogo deverá ser exibida.

[in] pszPortName

Ponteiro fornecido pelo chamador para uma cadeia de caracteres que representa o nome da porta a ser configurada.

Valor de retorno

Se a operação for bem-sucedida, a função deverá retornar VERDADEIRO. Caso contrário, ele deverá retornar FALSE. Se a operação não tiver suporte ou for cancelada pelo usuário (selecionando CANCEL ou selecionando OK sem alterar parâmetros de configuração), a função deverá chamar SetLastError(ERROR_CANCELLED) e retornar FALSE.

Observações

As DLLs da interface do usuário do monitor de porta são necessárias para definir uma função ConfigurePortUI e incluir o endereço da função em uma estrutura de monitorUI.

O spooler do cliente chama ConfigurePortUI de dentro de sua função ConfigurePort (descrita na documentação do SDK do Microsoft Windows). Os argumentos recebidos por ConfigurePortUI são os argumentos recebidos pelo ConfigurePort.

A função deve executar as seguintes operações:

  1. Chame OpenPrinter, especificando um nome de impressora com o seguinte formato:
    \\ ServerName\,XcvPortPortName

    em que ServerName e PortName são os nomes de servidor e porta recebidos como argumentos de função configurePortUI.

    A chamada para OpenPrinter requer uma estrutura de PRINTER_DEFAULTS, que é descrita na documentação do SDK do Windows. O membro DesiredAccess da estrutura deve ser definido como SERVER_ACCESS_ADMINISTER. Seus membros pDatatype e pDevMode podem ser NULL.

    Essa chamada faz com que a função XcvOpenPort do servidor de impressão seja chamada.

  2. Obtenha parâmetros de configuração de porta do usuário exibindo uma caixa de diálogo.
  3. Chame XcvData uma ou mais vezes, especificando cadeias de caracteres de nome de dados personalizadas, para enviar cada parâmetro de configuração para a DLL do servidor. Cada chamada XcvData faz com que a função XcvDataPort do servidor seja chamada.
  4. Chame ClosePrinter, especificando o identificador recebido do OpenPrinter. Isso faz com que a função XcvClosePort do servidor seja chamada.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho winsplp.h (inclua Winsplp.h)
biblioteca NtosKrnl.exe

Consulte também

XcvOpenPort

XcvClosePort

XcvDataPort

XcvData