What's New for Printing in Windows Vista
Lists the printing application programming interfaces (APIs) introduced in Windows Vista.
The following functions and enumerations are used to manage print tickets.
Function | Description | Header | Library |
---|---|---|---|
PTConvertPrintTicketToDevMode | Converts a print ticket to a DEVMODE structure. | Prntvpt.h | Prntvpt.lib |
PTConvertDevModeToPrintTicket | Converts a DEVMODE to a print ticket. | Prntvpt.h | Prntvpt.lib |
PTReleaseMemory | Releases buffers created by certain print ticket management functions. | Prntvpt.h | Prntvpt.lib |
PTMergeAndValidatePrintTicket | Validates and merges two print tickets into a viable print ticket. | Prntvpt.h | Prntvpt.lib |
PTGetPrintCapabilities | Gets an account of the printer's capabilities. | Prntvpt.h | Prntvpt.lib |
PTOpenProvider | Opens a print ticket provider. | Prntvpt.h | Prntvpt.lib |
PTOpenProviderEx | Opens a print ticket provider, even if it does not support the preferred version of the Print Schema. | Prntvpt.h | Prntvpt.lib |
PTCloseProvider | Closes a print ticket provider. | Prntvpt.h | Prntvpt.lib |
PTQuerySchemaVersionSupport | Gets the latest version of the Print Schema that a specified printer supports. | Prntvpt.h | Prntvpt.lib |
Enumeration | Description | Header |
---|---|---|
EDefaultDevmodeType | Enables callers to specify which DEVMODE is used as the source of default values when a print ticket does not specify all the settings that might be in a DEVMODE. | Prntvpt.h |
EPrintTicketScope | Specifies the scope of a print ticket. | Prntvpt.h |
The following functions are used to install printer drivers.
Function | Description | Header | Library |
---|---|---|---|
CorePrinterDriverInstalled | Reports whether a core printer driver with a specified GUID, date, and version is installed. | Winspool.h | Winspool.lib |
DeletePrinterDriverPackage | Deletes a printer driver package from the driver store. | Winspool.h | Winspool.lib |
GetCorePrinterDrivers | Gets the GUID, version, and date of the specified core printer drivers and the path to their packages. | Winspool.h | Winspool.lib |
GetPrinterDriverPackagePath | Gets the path to the specified printer driver package on a print server. | Winspool.h | Winspool.lib |
InstallPrinterDriverFromPackage | Installs a printer driver from a driver package in the print server's driver store. | Winspool.h | Winspool.lib |
UploadPrinterDriverPackage | Uploads a printer driver to the driver store of a print server so that it can be installed with InstallPrinterDriverFromPackage. | Winspool.h | Winspool.lib |
The following functions, enumerations, and structures are used for printing and to manage printers and printer connections.
Function | Description | Header | Library |
---|---|---|---|
AddPrinterConnection2 | Adds a connection to the specified printer for the current user. | Winspool.h | Winspool.lib |
OpenPrinter2 | Retrieves a handle to the specified printer or print server or other types of handles in the print subsystem, while setting some of the printer options. | Winspool.h | Winspool.lib |
Enumeration | Description | Header |
---|---|---|
PRINTER_OPTION_FLAGS | Specifies the caching of a handle for a printer opened with OpenPrinter2. | Winspool.h |
Structure | Description | Header |
---|---|---|
CORE_PRINTER_DRIVER | Represents a printer driver on which other printer drivers are dependent. | Winspool.h |
DRIVER_INFO_8 | Represents a printer driver. | Winspool.h |
FORM_INFO_2 | Represents information about a localizable print form. | Winspool.h |
JOB_INFO_4 | Represents a full set of values associated with a job and supports 64 bit spool files. | Winspool.h |
PRINTER_CONNECTION_INFO_1 | Represents information about a connection to a printer. | Winspool.h |
PRINTER_OPTIONS | Represents printer options. | Winspool.h |
PRINTPROCESSOR_CAPS_2 | Represents printer capability information. | Winspool.h |
The following functions, enumerations, and interfaces are used to implement a new asynchronous printing notification system.
Function | Description | Header | Library |
---|---|---|---|
CreatePrintAsyncNotifyChannel | Creates a communication channel between the spooler-hosted printing component, such as a print driver or port monitor, and an application that needs to receive notifications from the component. | Prnasnot.h | Winspool.lib |
RegisterForPrintAsyncNotifications | Registers an application to receive notifications from spooler-hosted components such as printer drivers, print processors, and port monitors. | Prnasnot.h | Winspool.lib |
UnRegisterForPrintAsyncNotifications | Enables an application that has registered to receive notifications from spooler-hosted printing components to end its subscription to the notifications. | Prnasnot.h | Winspool.lib |
Enumeration | Description | Header |
---|---|---|
PrintAsyncNotifyConversationStyle | Specifies whether communication between applications and Print Spooler-hosted components, such as printer drivers, print processors, and port monitors, is bidirectional or unidirectional. | Prnasnot.h |
PrintAsyncNotifyError | Specifies an error in an asynchronous notification transaction. | Prnasnot.h |
PrintAsyncNotifyUserFilter | Specifies whether notifications will go only to listening applications that are associated with the same user as the Print Spooler-hosted sender or whether they will go to a broader set of listening applications. | Prnasnot.h |
Interface and method | Description | Header | Library |
---|---|---|---|
IPrintAsyncNotifyCallback::ChannelClosed | Used by one member of a communication channel to advise the other member that the channel is being closed. | Prnasnot.h | Winspool.lib |
IPrintAsyncNotifyCallback::OnEventNotify | Called by the Print Spooler to alert a listener that a notification is available on a specified channel. | Prnasnot.h | Winspool.lib |
IPrintAsyncNotifyChannel::CloseChannel | Closes a communication channel. | Prnasnot.h | Winspool.lib |
IPrintAsyncNotifyChannel::SendNotification | Sends a notification from a Print Spooler-hosted component to one or more listening applications or sends a response from an application back to a component. | Prnasnot.h | Winspool.lib |
IPrintAsyncNotifyDataObject::AcquireData | Points listening applications to the notification data as well as the data's size and type. | Prnasnot.h | Winspool.lib |
IPrintAsyncNotifyDataObject::ReleaseData | Releases the memory used by the data encapsulated in the IPrintAsyncNotifyDataObject. | Prnasnot.h | Winspool.lib |
The following enumeration and structures are used for invoking the Microsoft XPS Document Converter (MXDC) which writes XML Paper Specification (XPS) documents to a device or file.
Enumeration | Description | Header |
---|---|---|
MxdcS0PageEnums | Specifies types of resources, such as fonts or images, on an XPS page. | Mxdc.h |
Structure | Description | Header |
---|---|---|
MxdcEscapeHeader | Represents an instruction to the MXDC. | Mxdc.h |
MxdcGetFileNameData | Represents the full path and name for an MXDC output file. | Mxdc.h |
MxdcPrintTicketEscape | Represents a combination of MxdcEscapeHeader and MxdcPrintTicketPassthrough. | Mxdc.h |
MxdcPrintTicketPassthrough | Represents a print ticket that will be associated with an XPS document. | Mxdc.h |
MxdcS0PageData | Represents an XPS-formatted page to be passed to the MXDC output file without any processing. | Mxdc.h |
MxdcS0PagePassthroughEscape | Represents a combination of MxdcEscapeHeader and MxdcS0PageData. | Mxdc.h |
MxdcS0PageResourceEscape | Represents a combination of MxdcEscapeHeader and MxdcS0PageResource. | Mxdc.h |
MxdcS0PageResource | Represents a resource, such as a font or image, that is included on an XPS page by the MXDC. | Mxdc.h |