Compartilhar via


Funções definidas por provedores de impressão

Warning

A partir do Windows 10, as APIs que dão suporte a provedores de impressão de terceiros são preteridas. A Microsoft não recomenda nenhum investimento em provedores de impressão de terceiros. Além disso, no Windows 8 e em produtos mais recentes em que o modelo de driver de impressão v4 está disponível, os provedores de impressão de terceiros podem não criar ou gerenciar filas que usam drivers de impressão v4.

Este tópico lista todas as funções que um provedor de impressão pode fornecer. A maioria dessas funções é descrita na documentação do SDK do Microsoft Windows. Se a função for descrita no WDK (Windows Driver Kit), o nome da função fornecerá um link para a página de referência associada.

Todos os provedores de impressão devem fornecer ponteiros para todas as funções listadas. No entanto, a maioria dos provedores de impressão fornecidos pelo fornecedor são "provedores parciais" que não precisam dar suporte a muitas das operações definidas pelas funções. Therefore, many of the function pointers can be NULL. Para obter mais informações sobre provedores de impressão parciais, consulte Escrever um provedor de impressão de rede.

Nas listas de funções a seguir, as funções que devem ter suporte são rotuladas como "Obrigatório".

All print providers must export the initialization function, InitializePrintProvidor. Pointers to all the other functions must be supplied in a PRINTPROVIDOR structure. (Observe que esses dois nomes estão escritos incorretamente, mas são consistentes com os nomes que aparecem no arquivo de cabeçalho, Winsplp.h.)

As funções são divididas em grupos e apresentadas nas seguintes seções:

  • Initialization function

  • Imprimir funções de gerenciamento de fila

  • Funções de gerenciamento de driver de impressora

  • Imprimir funções de criação de trabalho

  • Imprimir funções de agendamento de trabalho

  • Funções de gerenciamento de formulários

  • Imprimir funções de gerenciamento de processador

  • Imprimir funções de gerenciamento do monitor

  • Funções de gerenciamento de porta

  • Funções de gerenciamento do Registro

  • Other functions

Initialization function

Function Description
InitializePrintProvidor (Required) Inicializa o provedor de impressão e retorna ponteiros para funções fornecidas.
Function Description
AddPrinter Adiciona uma fila de impressão à lista daqueles gerenciados pelo provedor de impressão e associa um processador de impressão à fila de impressão.
AddPrinterConnection Cria uma conexão com a fila de impressão especificada.
ClosePrinter (Required) Desabilita o acesso do chamador a uma fila de impressão especificada.
DeletePrinter Exclui uma fila de impressão da lista daqueles gerenciados pelo provedor de impressão.
DeletePrinterConnection Remove uma conexão com a fila de impressão especificada.
EnumPrinters (Required) Enumera a lista de filas de impressão atualmente gerenciadas pelo provedor de impressão.
FindClosePrinterChangeNotification Disables printer change notifications that were enabled by FindFirstPrinterChangeNotification.
FindFirstPrinterChangeNotification Retorna um identificador para um objeto de espera que o chamador pode usar para aguardar eventos de impressora especificados.
GetPrinter (Required) Retorna valores de parâmetro atuais para uma fila de impressão especificada.
OpenPrinter (Required) Habilita o acesso de chamador a uma fila de impressão especificada.
RefreshPrinterChangeNotification Called by router if client calls FindNextPrinterChangeNotification with the PRINTER_NOTIFY_OPTIONS_REFRESH flag set.
ResetPrinter Modifies a print queue's data type or DEVMODEW structure.
SetPrinter (Required) Define parâmetros para uma fila de impressão especificada.
WaitForPrinterChange Obsolete.

Funções de gerenciamento de driver de impressora

Function Description
AddPrinterDriver Adiciona arquivos de driver de uma impressora especificada a um servidor especificado.
AddPrinterDriverEx Same as AddPrinterDriver, with additional parameters.
DeletePrinterDriver Exclui o acesso aos arquivos de driver de uma impressora especificada, em um servidor especificado.
DeletePrinterDriverEx Same as DeletePrinterDriver, with additional parameters.
EnumPrinterDrivers Returns a list of printer drivers that have been added to a specified server by calling AddPrinterDriver or AddPrinterDriverEx.
GetPrinterDriver Returns information about a printer driver, which the caller can then pass to AddPrinterDriver. (As informações retornadas normalmente são obtidas de um arquivo INF.)
[GetPrinterDriverEx Same as GetPrinterDriver, with additional parameters.
GetPrinterDriverDirectory Retorna o nome do diretório do driver de impressora do servidor.
Function Description
AbortPrinter (Required) Tenta excluir o trabalho atual da fila de impressão especificada.
AddJob (Required) Retorna um identificador de trabalho e um caminho de arquivo de spool. The caller uses CreateFile and WriteFile to send data to the spool file.
EndDocPrinter (Required) Executa operações de conclusão de trabalho.
EndPagePrinter Executa operações de conclusão de página.
ReadPrinter Obtém informações de status de uma impressora bidirecional.
ScheduleJob (Required) Informa ao provedor que um trabalho especificado pode ser agendado. The job is specified by a job identifier previously returned by AddJob.
StartDocPrinter (Required) Prepara o provedor de impressão para começar a usar um trabalho de impressão.
StartPagePrinter Prepara o provedor de impressão para receber uma página de trabalho de impressão.
WritePrinter (Required) Recebe uma parte do fluxo de dados do trabalho de impressão.

Note

The AddJob...ScheduleJob sequence is an alternative to the StartDocPrinter...EndDocPrinter sequence.

Function Description
EnumJobs (Required) Retorna uma lista de trabalhos de impressão agendados.
GetJob (Required) Retorna parâmetros de trabalho.
SetJob (Required) Cancela, pausa, retoma ou reinicia um trabalho de impressão ou define parâmetros de trabalho.

Funções de gerenciamento de formulários

Function Description
AddForm Adiciona um formulário especificado à lista daqueles disponíveis para uma impressora especificada.
DeleteForm Remove um formulário especificado da lista daqueles disponíveis para uma impressora especificada.
EnumForms Retorna uma lista de formulários disponíveis para uma impressora especificada.
GetForm Retorna características de um formulário especificado.
SetForm Modifica as características de um formulário especificado.
Function Description
AddPrintProcessor Instala um processador de impressão no servidor especificado e o adiciona à lista daqueles que o provedor de impressão pode chamar.
DeletePrintProcessor Exclui um processador de impressão da lista daqueles que o provedor de impressão pode chamar.
EnumPrintProcessorDataTypes Retorna uma lista dos tipos de dados compatíveis com os processadores de impressão que podem ser chamados pelo provedor de impressão.
EnumPrintProcessors Retorna a lista de processadores de impressão que o provedor de impressão pode chamar.
GetPrintProcessorDirectory Retorna o caminho do diretório no qual os arquivos do processador de impressão devem ser armazenados.
Function Description
AddMonitor Adiciona um monitor de impressão à lista daqueles que o provedor de impressão pode chamar.
DeleteMonitor Exclui um monitor de impressão da lista daqueles que o provedor de impressão pode chamar.
EnumMonitors Retorna a lista de monitores de impressão que o provedor de impressão pode chamar.

Funções de gerenciamento de porta

Function Description
AddPort Adds a printer port to the list of those available, typically by calling the specified port monitor's AddPortUI function.
AddPortEx(/previous-versions/ff545025(v%3dvs.85)) Same as AddPort, with additional parameters.
ConfigurePort (Required) Configures a printer port, typically by calling the specified port monitor's ConfigurePortUI function.
DeletePort (Required) Deletes a printer port from the list of those available, typically by calling the specified port monitor's DeletePortUI function.
EnumPorts (Required) Retorna uma lista de portas de impressora disponíveis.
SetPort Define parâmetros para uma porta de impressora especificada.

Funções de gerenciamento do Registro

Function Description
DeletePrinterData Deletes the value currently assigned to a specified value name, under the specified printer's PrinterDriverData key.
DeletePrinterDataEx Same as DeletePrinterData, with additional parameters.
DeletePrinterKey Deletes a specified key and its subkeys, if they are currently stored in the registry under the specified printer's PrinterDriverData key.
EnumPrinterData Returns each of the value names and currently assigned values that are stored in the registry under the specified printer's PrinterDriverData key.
EnumPrinterDataEx Same as EnumPrinterData, with additional parameters.
EnumPrinterKey Retorna uma lista de subchaves atualmente contidas no registro em um nome de chave especificado.
GetPrinterData Returns the value currently assigned to a specified value name, which is stored in the registry under the specified printer's PrinterDriverData key.
GetPrinterDataEx Same as GetPrinterData, with additional parameters.
SetPrinterData Stores a specified value name and value in the registry, under the specified printer's PrinterDriverData key.
SetPrinterDataEx Same as SetPrinterData, with additional parameters.

Other functions

Function Description
XcvData Fornece um caminho de comunicação entre uma DLL de interface do usuário do monitor de porta e uma DLL do servidor de monitor de porta.