描述
PRINTER_INFO_2结构指定详细的打印机信息。
C++ 语法
typedef struct _PRINTER_INFO_2 { LPTSTR pServerName; LPTSTR pPrinterName; LPTSTR pShareName; LPTSTR pPortName; LPTSTR pDriverName; LPTSTR pComment; LPTSTR pLocation; LPDEVMODE pDevMode; LPTSTR pSepFile; LPTSTR pPrintProcessor; LPTSTR pDatatype; LPTSTR pParameters; PSECURITY_DESCRIPTOR pSecurityDescriptor; DWORD Attributes; DWORD Priority; DWORD DefaultPriority; DWORD StartTime; DWORD UntilTime; DWORD Status; DWORD cJobs; DWORD AveragePPM; } PRINTER_INFO_2, *PPRINTER_INFO_2; |
PowerBASIC 语法
TYPE PRINTER_INFO_2A pServerName AS ASCIIZ PTR pPrinterName AS ASCIIZ PTR pShareName AS ASCIIZ PTR pPortName AS ASCIIZ PTR pDriverName AS ASCIIZ PTR pComment AS ASCIIZ PTR pLocation AS ASCIIZ PTR pDevMode AS DEVMODEA PTR pSepFile AS ASCIIZ PTR pPrintProcessor AS ASCIIZ PTR pDatatype AS ASCIIZ PTR pParameters AS ASCIIZ PTR pSecurityDescriptor AS SECURITY_DESCRIPTOR PTR Attributes AS DWORD Priority AS DWORD DefaultPriority AS DWORD StartTime AS DWORD UntilTime AS DWORD Status AS DWORD cJobs AS DWORD AveragePPM AS DWORD END TYPE |
Unicode版本:
TYPE PRINTER_INFO_2W pServerName AS WSTRINGZ PTR pPrinterName AS WSTRINGZ PTR pShareName AS WSTRINGZ PTR pPortName AS WSTRINGZ PTR pDriverName AS WSTRINGZ PTR pComment AS WSTRINGZ PTR pLocation AS WSTRINGZ PTR pDevMode AS DEVMODEW PTR pSepFile AS WSTRINGZ PTR pPrintProcessor AS WSTRINGZ PTR pDatatype AS WSTRINGZ PTR pParameters AS WSTRINGZ PTR pSecurityDescriptor AS SECURITY_DESCRIPTOR PTR Attributes AS DWORD Priority AS DWORD DefaultPriority AS DWORD StartTime AS DWORD UntilTime AS DWORD Status AS DWORD cJobs AS DWORD AveragePPM AS DWORD END TYPE |
成员
pServerName
指向以空字符结尾的字符串,指明控制打印机的服务器。如果此字符串为NULL,则打印机在本地进行控制。
pPrinterName
指向指定打印机名称的以null结尾的字符串的指针。
pShareName
指向以空字符结尾的字符串,指示打印机的共享点。(仅当为属性成员设置了PRINTER_ATTRIBUTE_SHARED常数时,才使用此字符串。)
pPortName
指向以空值终止的字符串的指针,用于标识用于向打印机传输数据的端口。如果打印机连接到多个端口,每个端口的名称必须用逗号分隔(例如“LPT1:,LPT2:,LPT3:”)。
Windows 95/98 / Me:该成员只能指定一个端口,因为不支持每个打印机的多个端口。
pDriverName
指向指定打印机驱动程序名称的以空值终止的字符串的指针。
pComment
指向以空字符结尾的字符串,指示打印机的简要说明。
pLocation
指向指定打印机物理位置的空终止字符串的指针(例如,“Bldg。38,Room 1164“)。
pDevMode
指向定义默认打印机数据(例如纸张方向和分辨率)的DEVMODE结构。
pSepFile
指向以空值终止的字符串,指定用于创建分隔页的文件的名称。此页面用于分离发送到打印机的打印作业。
pPrintProcessor
指向以空字符结尾的字符串,指定打印机使用的打印处理器的名称。您可以使用EnumPrintProcessors功能获取安装在服务器上的打印处理器列表。
pDatatype
指向指定用于记录打印作业的数据类型的以空值终止的字符串。您可以使用EnumPrintProcessorDatatypes功能获取特定打印处理器支持的数据类型列表。
pParameters
指向指定默认打印处理器参数的以空值终止的字符串的指针。
pSecurityDescriptor
指向打印机的SECURITY_DESCRIPTOR结构。该成员可能为NULL。
Windows 95/98 / Me:该成员被忽略。
Attributes
指定打印机属性。该成员可以是以下值的任何合理组合。
值 |
含义 |
PRINTER_ATTRIBUTE_ALLOW_EMF |
Windows Vista:表示打印机可以接受增强型图元文件(EMF)数据。 |
PRINTER_ATTRIBUTE_DEFAULT |
Windows 95/98 / Me:表示打印机是系统中的默认打印机。 |
PRINTER_ATTRIBUTE_DIRECT |
作业直接发送到打印机(它不是假脱机的)。 |
PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST |
如果设置和打印机设置为打印时的假脱机,则任何已完成假脱机的作业都计划在没有完成假脱机的作业之前进行打印。 |
PRINTER_ATTRIBUTE_ENABLE_BIDI |
Windows 95/98 / Me:指示是否为打印机启用了双向通信。 |
PRINTER_ATTRIBUTE_ENABLE_DEVQ |
如果设置,DevQueryPrint被调用。如果文档和打印机设置不匹配,DevQueryPrint可能会失败。设置此标志会导致不匹配的文档被保留在队列中。 |
PRINTER_ATTRIBUTE_FAX |
Windows XP:如果设置,打印机是传真打印机。这只能由AddPrinter设置,但可以通过EnumPrinters和GetPrinter检索。 |
PRINTER_ATTRIBUTE_FRIENDLY_NAME |
Windows Vista:计算机已连接到此打印机并给它一个友好的名称。 |
PRINTER_ATTRIBUTE_HIDDEN |
保留。 |
PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS |
如果设置,作业在打印后保留。如果未设置,则删除作业。 |
PRINTER_ATTRIBUTE_LOCAL |
打印机是本地打印机。 |
PRINTER_ATTRIBUTE_MACHINE |
Windows Vista:打印机是每机器连接。 |
PRINTER_ATTRIBUTE_NETWORK |
打印机是网络打印机连接。 |
PRINTER_ATTRIBUTE_PUBLISHED |
Windows 2000 / XP / Vista / Windows 7:表示打印机是否在目录服务中发布。 |
PRINTER_ATTRIBUTE_PUSHED_USER |
于Windows Vista / Windows 7的:使用“推送打印机连接”用户策略安装了打印机。 |
PRINTER_ATTRIBUTE_PUSHED_MACHINE |
Windows Vista:使用推送打印机连接计算机策略安装打印机。 |
PRINTER_ATTRIBUTE_QUEUED |
如果设置,打印机将在最后一页假脱机后进行线轴并开始打印。如果未设置并且PRINTER_ATTRIBUTE_DIRECT未设置,打印机将在假脱机时进行线轴和打印。 |
PRINTER_ATTRIBUTE_RAW_ONLY |
表示只能打印原始数据类型的打印作业。 |
PRINTER_ATTRIBUTE_SHARED |
打印机是共享的。 |
PRINTER_ATTRIBUTE_TS |
Windows Server 2003:表示打印机当前通过终端服务器连接。 |
PRINTER_ATTRIBUTE_WORK_OFFLINE |
Windows 95/98 / Me:表示打印机当前是否连接。如果打印机当前未连接,则打印作业将继续卷轴。 |
Priority
指定假脱机程序用于路由打印作业的优先级值。
DefaultPriority
指定分配给每个打印作业的默认优先级值。
StartTime
指定打印机打印作业的最早时间。该值表示为格林尼治标准时间(格林威治标准时间)上午12:00以后的分钟数。
UntilTime
指定打印机打印作业的最新时间。该值表示为格林尼治标准时间(格林威治标准时间)上午12:00以后的分钟数。
Status
指定打印机状态。该成员可以是以下值的任何合理组合。
值 |
含义 |
PRINTER_STATUS_BUSY |
打印机正忙 |
PRINTER_STATUS_DOOR_OPE |
打印机门打开。 |
PRINTER_STATUS_ERROR |
打印机处于错误状态。 |
PRINTER_STATUS_INITIALIZING |
打印机正在初始化。 |
PRINTER_STATUS_IO_ACTIVE |
打印机处于活动输入/输出状态 |
PRINTER_STATUS_MANUAL_FEED |
打印机处于手动进纸状态。 |
PRINTER_STATUS_NO_TONER |
打印机墨粉不足。 |
PRINTER_STATUS_NOT_AVAILABLE |
打印机不可用于打印。 |
PRINTER_STATUS_OFFLINE |
打印机离线。 |
PRINTER_STATUS_OUT_OF_MEMORY |
打印机内存不足。 |
PRINTER_STATUS_OUTPUT_BIN_FULL |
打印机的出纸槽已满。 |
PRINTER_STATUS_PAGE_PUNT |
打印机无法打印当前页面。
Windows 95/98 / Me:表示页面正在“打印”(即未打印),因为打印机打印过于复杂。 |
PRINTER_STATUS_PAPER_JAM |
纸张卡在打印机中 |
PRINTER_STATUS_PAPER_OUT |
打印机缺纸。 |
PRINTER_STATUS_PAPER_PROBLEM |
打印机有纸问题。 |
PRINTER_STATUS_PAUSED |
打印机已暂停。 |
PRINTER_STATUS_PENDING_DELETION |
打印机正在删除。 |
PRINTER_STATUS_POWER_SAVE |
打印机处于省电模式。 |
PRINTER_STATUS_PRINTING |
打印机正在打印。 |
PRINTER_STATUS_PROCESSING |
打印机正在处理打印作业。 |
PRINTER_STATUS_SERVER_UNKNOWN |
打印机状态未知。 |
PRINTER_STATUS_TONER_LOW |
打印机墨粉不足。 |
PRINTER_STATUS_USER_INTERVENTION |
打印机有一个错误,需要用户做某事。 |
PRINTER_STATUS_WAITING |
打印机正在等待。 |
PRINTER_STATUS_WARMING_UP |
打印机正在升温。 |
cJobs
指定打印机排队的打印作业数。
AveragePPM
指定打印机上打印的每分钟平均页数。
引用文件 #INCLUDE Once
WinSpool.inc(包括Windows.inc)


