Compartilhar via


Função AddMonitor

A função AddMonitor instala um monitor de porta local e vincula a configuração, os dados e os arquivos de monitoramento.

Sintaxe

BOOL AddMonitor(
  _In_ LPTSTR pName,
  _In_ DWORD  Level,
  _In_ LPBYTE pMonitors
);

Parâmetros

pName [in]

Um ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome do servidor no qual o monitor deve ser instalado. Para sistemas que dão suporte apenas à instalação local de monitores, essa cadeia de caracteres deve ser NULL.

Nível [in]

A versão da estrutura para a qual pMonitors aponta. Esse valor deve ser 2.

pMonitors [in]

Um ponteiro para uma estrutura MONITOR_INFO_2 . Se o membro pEnvironment da estrutura pMonitors for NULL, o ambiente atual do chamador (cliente), não do destino (servidor), será usado.

Observe que a chamada falhará se o ambiente não corresponder ao ambiente do servidor, ou seja, você só poderá adicionar um monitor que foi gravado para a arquitetura do servidor.

Valor retornado

Se a função for bem-sucedida, o valor retornado será um valor diferente de zero.

Se a função falhar, 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 de driver de impressora que são difíceis de prever ao escrever 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.

O chamador deve ter o SeLoadDriverPrivilege.

Antes que um aplicativo chame a função AddMonitor , todos os arquivos exigidos pelo monitor devem ser copiados para o diretório SYSTEM32.

Para determinar os monitores de porta instalados no momento, chame a função EnumMonitors .

Para remover um monitor adicionado por AddMonitor, chame a função DeleteMonitor .

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
AddMonitorW (Unicode) e AddMonitorA (ANSI)

Confira também

Impressão

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

DeleteMonitor

EnumMonitors

MONITOR_INFO_2