다음을 통해 공유


인쇄 공급자가 정의한 함수

Warning

Windows 10부터 타사 인쇄 공급자를 지원하는 API는 더 이상 사용되지 않습니다. Microsoft는 타사 인쇄 공급자에 대한 투자를 권장하지 않습니다. 또한 v4 인쇄 드라이버 모델을 사용할 수 있는 Windows 8 및 최신 제품에서는 타사 인쇄 공급자가 v4 인쇄 드라이버를 사용하는 큐를 만들거나 관리할 수 없습니다.

이 항목에서는 인쇄 공급자가 제공할 수 있는 모든 함수를 나열합니다. 이러한 함수의 대부분은 Microsoft Windows SDK 설명서에 설명되어 있습니다. 함수가 WDK(Windows 드라이버 키트)에 설명된 경우 함수 이름은 연결된 참조 페이지에 대한 링크를 제공합니다.

모든 인쇄 공급자는 나열된 모든 함수에 대한 포인터를 제공해야 합니다. 그러나 대부분의 공급업체에서 제공하는 인쇄 공급자는 함수에서 정의한 많은 작업을 지원할 필요가 없는 "부분 공급자"입니다. Therefore, many of the function pointers can be NULL. 부분 인쇄 공급자에 대한 자세한 내용은 네트워크 인쇄 공급자 작성을 참조하세요.

다음 함수 목록에서 지원되어야 하는 함수에는 "필수"라는 레이블이 지정됩니다.

All print providers must export the initialization function, InitializePrintProvidor. Pointers to all the other functions must be supplied in a PRINTPROVIDOR structure. (이 두 이름은 철자가 틀렸지만 헤더 파일 Winsplp.h에 표시되는 이름과 일치합니다.)

함수는 그룹으로 나뉘며 다음 섹션에 표시됩니다.

  • Initialization function

  • 큐 관리 함수 인쇄

  • 프린터 드라이버 관리 기능

  • 작업 만들기 함수 인쇄

  • 작업 예약 함수 인쇄

  • 양식 관리 함수

  • 프로세서 관리 함수 인쇄

  • 모니터 관리 함수 인쇄

  • 포트 관리 함수

  • 레지스트리 관리 함수

  • Other functions

Initialization function

Function Description
InitializePrintProvidor (Required) 인쇄 공급자를 초기화하고 제공된 함수에 대한 포인터를 반환합니다.
Function Description
AddPrinter 인쇄 공급자가 관리하는 인쇄 큐 목록에 인쇄 큐를 추가하고 인쇄 프로세서를 인쇄 큐와 연결합니다.
AddPrinterConnection 지정된 인쇄 큐에 대한 연결을 만듭니다.
ClosePrinter (Required) 지정된 인쇄 큐에 대한 호출자 액세스를 사용하지 않도록 설정합니다.
DeletePrinter 인쇄 공급자가 관리하는 인쇄 큐 목록에서 인쇄 큐를 삭제합니다.
DeletePrinterConnection 지정된 인쇄 큐에 대한 연결을 제거합니다.
EnumPrinters (Required) 현재 인쇄 공급자가 관리하는 인쇄 큐 목록을 열거합니다.
FindClosePrinterChangeNotification Disables printer change notifications that were enabled by FindFirstPrinterChangeNotification.
FindFirstPrinterChangeNotification 호출자가 지정된 프린터 이벤트를 기다리는 데 사용할 수 있는 대기 개체에 대한 핸들을 반환합니다.
GetPrinter (Required) 지정된 인쇄 큐에 대한 현재 매개 변수 값을 반환합니다.
OpenPrinter (Required) 호출자가 지정된 인쇄 큐에 액세스할 수 있도록 합니다.
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) 지정된 인쇄 큐에 대한 매개 변수를 설정합니다.
WaitForPrinterChange Obsolete.

프린터 드라이버 관리 기능

Function Description
AddPrinterDriver 지정된 서버에 지정된 프린터의 드라이버 파일을 추가합니다.
AddPrinterDriverEx Same as AddPrinterDriver, with additional parameters.
DeletePrinterDriver 지정된 서버에서 지정된 프린터의 드라이버 파일에 대한 액세스를 삭제합니다.
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. (반환된 정보는 일반적으로 INF 파일에서 가져옵니다.)
[GetPrinterDriverEx Same as GetPrinterDriver, with additional parameters.
GetPrinterDriverDirectory 서버의 프린터 드라이버 디렉터리의 이름을 반환합니다.
Function Description
AbortPrinter (Required) 지정된 인쇄 큐에서 현재 작업을 삭제하려고 시도합니다.
AddJob (Required) 작업 식별자 및 스풀 파일 경로를 반환합니다. The caller uses CreateFile and WriteFile to send data to the spool file.
EndDocPrinter (Required) 작업 완료 작업을 수행합니다.
EndPagePrinter 페이지 완성 작업을 수행합니다.
ReadPrinter 양방향 프린터에서 상태 정보를 가져옵니다.
ScheduleJob (Required) 지정된 작업을 예약할 수 있음을 공급자에게 알릴 수 있습니다. The job is specified by a job identifier previously returned by AddJob.
StartDocPrinter (Required) 인쇄 공급자가 인쇄 작업 스풀링을 시작할 수 있도록 준비합니다.
StartPagePrinter 인쇄 작업 페이지를 받을 인쇄 공급자를 준비합니다.
WritePrinter (Required) 인쇄 작업 데이터 스트림의 일부를 받습니다.

Note

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

Function Description
EnumJobs (Required) 예약된 인쇄 작업 목록을 반환합니다.
GetJob (Required) 작업 매개 변수를 반환합니다.
SetJob (Required) 인쇄 작업을 취소, 일시 중지, 다시 시작 또는 다시 시작하거나 작업 매개 변수를 설정합니다.

양식 관리 함수

Function Description
AddForm 지정된 프린터에 사용할 수 있는 양식 목록에 지정된 양식을 추가합니다.
DeleteForm 지정된 프린터에 사용할 수 있는 양식 목록에서 지정된 양식을 제거합니다.
EnumForms 지정된 프린터에 사용할 수 있는 양식 목록을 반환합니다.
GetForm 지정된 양식의 특성을 반환합니다.
SetForm 지정된 양식의 특성을 수정합니다.
Function Description
AddPrintProcessor 지정한 서버에 인쇄 프로세서를 설치하고 인쇄 공급자가 호출할 수 있는 인쇄 프로세서 목록에 추가합니다.
DeletePrintProcessor 인쇄 공급자가 호출할 수 있는 인쇄 프로세서 목록에서 인쇄 프로세서를 삭제합니다.
EnumPrintProcessorDataTypes 인쇄 공급자가 호출할 수 있는 인쇄 프로세서에서 지원하는 데이터 형식의 목록을 반환합니다.
EnumPrintProcessors 인쇄 공급자가 호출할 수 있는 인쇄 프로세서 목록을 반환합니다.
GetPrintProcessorDirectory 인쇄 프로세서 파일을 저장해야 하는 디렉터리 경로를 반환합니다.
Function Description
AddMonitor 인쇄 공급자가 호출할 수 있는 인쇄 모니터 목록에 인쇄 모니터를 추가합니다.
DeleteMonitor 인쇄 공급자가 호출할 수 있는 인쇄 모니터 목록에서 인쇄 모니터를 삭제합니다.
EnumMonitors 인쇄 공급자가 호출할 수 있는 인쇄 모니터 목록을 반환합니다.

포트 관리 함수

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) 사용 가능한 프린터 포트 목록을 반환합니다.
SetPort 지정된 프린터 포트에 대한 매개 변수를 설정합니다.

레지스트리 관리 함수

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 지정된 키 이름으로 레지스트리에 현재 포함된 하위 키 목록을 반환합니다.
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 포트 모니터 UI DLL과 포트 모니터 서버 DLL 간의 통신 경로를 제공합니다.