Funções definidas por provedores de impressão
Aviso
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, em Windows 8 e 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 (Kit de Driver do Windows), 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. Portanto, muitos dos ponteiros de função podem ser NULL. Para obter mais informações sobre provedores de impressão parcial, consulte Escrevendo 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".
Todos os provedores de impressão devem exportar a função de inicialização , InitializePrintProvidor. Os ponteiros para todas as outras funções devem ser fornecidos em uma estrutura PRINTPROVIDOR . (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:
Função de inicialização
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 do processador
Funções de gerenciamento do monitor de impressão
Funções de gerenciamento de porta
Funções de gerenciamento do Registro
Outras funções
Função de inicialização
Função | Descrição |
---|---|
InitializePrintProvidor (Obrigatório) | Inicializa o provedor de impressão e retorna ponteiros para funções fornecidas. |
Imprimir funções de gerenciamento de fila
Função | Descrição |
---|---|
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 (Obrigatório) | 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 (Obrigatório) | Enumera a lista de filas de impressão atualmente gerenciadas pelo provedor de impressão. |
FindClosePrinterChangeNotification | Desabilita as notificações de alteração da impressora que foram habilitadas por FindFirstPrinterChangeNotification. |
FindFirstPrinterChangeNotification | Retorna um identificador para um objeto de espera que o chamador pode usar para aguardar eventos de impressora especificados. |
GetPrinter (Obrigatório) | Retorna valores de parâmetro atuais para uma fila de impressão especificada. |
OpenPrinter (Obrigatório) | Habilita o acesso do chamador a uma fila de impressão especificada. |
RefreshPrinterChangeNotification | Chamado pelo roteador se o cliente chamar FindNextPrinterChangeNotification com o sinalizador PRINTER_NOTIFY_OPTIONS_REFRESH definido. |
ResetPrinter | Modifica o tipo de dados de uma fila de impressão ou a estrutura DEVMODEW . |
SetPrinter (Obrigatório) | Define parâmetros para uma fila de impressão especificada. |
WaitForPrinterChange | Obsoleto. |
Funções de gerenciamento de driver de impressora
Função | Descrição |
---|---|
AddPrinterDriver | Adiciona arquivos de driver de uma impressora especificada a um servidor especificado. |
AddPrinterDriverEx | O mesmo que AddPrinterDriver, com parâmetros adicionais. |
DeletePrinterDriver | Exclui o acesso aos arquivos de driver de uma impressora especificada, em um servidor especificado. |
DeletePrinterDriverEx | O mesmo que DeletePrinterDriver, com parâmetros adicionais. |
EnumPrinterDrivers | Retorna uma lista de drivers de impressora que foram adicionados a um servidor especificado chamando AddPrinterDriver ou AddPrinterDriverEx. |
GetPrinterDriver | Retorna informações sobre um driver de impressora, que o chamador pode passar para AddPrinterDriver. (Normalmente, as informações retornadas são obtidas de um arquivo INF.) |
[GetPrinterDriverEx | O mesmo que GetPrinterDriver, com parâmetros adicionais. |
GetPrinterDriverDirectory | Retorna o nome do diretório do driver de impressora do servidor. |
Imprimir funções de criação de trabalho
Função | Descrição |
---|---|
AbortPrinter (Obrigatório) | Tenta excluir o trabalho atual da fila de impressão especificada. |
AddJob (Obrigatório) | Retorna um identificador de trabalho e um caminho de arquivo de spool. O chamador usa CreateFile e WriteFile para enviar dados para o arquivo de spool. |
EndDocPrinter (Obrigatório) | Executa operações de conclusão de trabalho. |
EndPagePrinter | Executa operações de conclusão de página. |
ReadPrinter | Obtém status informações de uma impressora bidirecional. |
ScheduleJob (Obrigatório) | Informa ao provedor que um trabalho especificado pode ser agendado. O trabalho é especificado por um identificador de trabalho retornado anteriormente por AddJob. |
StartDocPrinter (Obrigatório) | Prepara o provedor de impressão para começar a fazer spool de um trabalho de impressão. |
StartPagePrinter | Prepara o provedor de impressão para receber uma página de trabalho de impressão. |
WritePrinter (Obrigatório) | Recebe uma parte do fluxo de dados do trabalho de impressão. |
Observação
O AddJob... A sequência ScheduleJob é uma alternativa ao StartDocPrinter... Sequência EndDocPrinter .
Imprimir funções de agendamento de trabalho
Função | Descrição |
---|---|
EnumJobs (Obrigatório) | Retorna uma lista de trabalhos de impressão agendados. |
GetJob (Obrigatório) | Retorna parâmetros de trabalho. |
SetJob (Obrigatório) | Cancela, pausa, retoma ou reinicia um trabalho de impressão ou define parâmetros de trabalho. |
Funções de gerenciamento de formulários
Função | Descrição |
---|---|
AddForm | Adiciona um formulário especificado à lista dos disponíveis para uma impressora especificada. |
DeleteForm | Remove um formulário especificado da lista dos 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 características de um formulário especificado. |
Imprimir funções de gerenciamento do processador
Função | Descrição |
---|---|
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. |
Funções de gerenciamento do monitor de impressão
Função | Descrição |
---|---|
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
Função | Descrição |
---|---|
AddPort | Adiciona uma porta de impressora à lista dos disponíveis, normalmente chamando a função AddPortUI do monitor de porta especificada. |
AddPortEx(/previous-versions/ff545025(v%3dvs.85)) | O mesmo que AddPort, com parâmetros adicionais. |
ConfigurePort (Obrigatório) | Configura uma porta de impressora, normalmente chamando a função ConfigurePortUI do monitor de porta especificada. |
DeletePort (Obrigatório) | Exclui uma porta de impressora da lista dos disponíveis, normalmente chamando a função DeletePortUI do monitor de porta especificada. |
EnumPorts (Obrigatório) | 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
Função | Descrição |
---|---|
DeletePrinterData | Exclui o valor atualmente atribuído a um nome de valor especificado, na chave PrinterDriverData da impressora especificada. |
DeletePrinterDataEx | O mesmo que DeletePrinterData, com parâmetros adicionais. |
DeletePrinterKey | Exclui uma chave especificada e suas subchaves, se elas estiverem armazenadas atualmente no registro sob a chave PrinterDriverData da impressora especificada. |
EnumPrinterData | Retorna cada um dos nomes de valor e valores atualmente atribuídos que são armazenados no registro sob a chave PrinterDriverData da impressora especificada. |
EnumPrinterDataEx | O mesmo que EnumPrinterData, com parâmetros adicionais. |
EnumPrinterKey | Retorna uma lista de subchaves atualmente contidas no registro sob um nome de chave especificado. |
GetPrinterData | Retorna o valor atualmente atribuído a um nome de valor especificado, que é armazenado no registro sob a chave PrinterDriverData da impressora especificada. |
GetPrinterDataEx | O mesmo que GetPrinterData, com parâmetros adicionais. |
SetPrinterData | Armazena um valor e um nome de valor especificados no registro, sob a chave PrinterDriverData da impressora especificada. |
SetPrinterDataEx | O mesmo que SetPrinterData, com parâmetros adicionais. |
Outras funções
Função | Descrição |
---|---|
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. |