VB声明 | ||
Declare Function SetPrinter Lib "winspool.drv" Alias "SetPrinterA" (ByVal hPrinter As Long, ByVal Level As Long, pPrinter As Byte, ByVal Command As Long) As Long | ||
说明 | ||
对一台打印机的状态进行控制 | ||
返回值 | ||
Long,非零表示成功,零表示失败。会设置GetLastError | ||
参数表 | ||
参数 | 类型及说明 | |
hPrinter | Long,指定一个已打开的打印机的句柄(用OpenPrinter取得) | |
Level | Long,0,2或3(4或5用于windows95,5或6用于NT 4.0)。如Command不是零,则这个参数必须是零 | |
pPrinter | Byte,包含一个PRINTER_INFO_x的结构的缓冲区,其中的x代表级别的设定(Level)。假如级别为零,并且Command设为PRINTER_CONTROL_SET_STATUS,那缓冲区就包含了一个PRINTER_CONTROL_STATUS结构。否则,如级别为零,就设为NULL(要把声明变成ByVal As Long,以便传递零值) | |
Command | Long,下述值之一: | |
零 | 根据PRINTER_INFO_x结构改变打印机 | |
PRINTER_CONTROL_PAUSE | 暂停打印机 | |
PRINTER_CONTROL_PURGE | 删除打印机的所有作业 | |
PRINTER_CONTROL_RESUME | 恢复一台暂停的打印机 | |
PRINTER_CONTROL_SET_STATUS | 载入打印机的PRINTER_CONTROL_STATUS结构(不可在NT 3.51下使用) | |
注解 | ||
在PRINTER_INFO_2结构的基础上设置打印机状态时,pServerName,AveragePPM,Status和cJobs字段都会被忽略 |