EnumPrinters

王朝百科·作者佚名  2010-03-07
窄屏简体版  字體: |||超大  

EnumPrinters

VB声明

Declare Function EnumPrinters Lib "winspool.drv" Alias "EnumPrintersA" (ByVal flags As Long, ByVal name As String, ByVal Level As Long, pPrinterEnum As Byte, ByVal cdBuf As Long, pcbNeeded As Long, pcReturned As Long) As Long

说明

枚举系统中安装的打印机

返回值

Long,非零表示成功,零表示失败。会设置GetLastError

参数表

参数 类型及说明

flags Long,一个或多个下述标志

PRINTER_ENUM_LOCAL 枚举本地打印机(包括Windows 95中的网络打印机)。名字会被忽略

PRINTER_ENUM_NAME 枚举由name参数指定的打印机。其中的名字可以是一个供应商、域或服务器。如name为NULL,则枚举出可用的打印机

PRINTER_ENUM_SHARE 枚举共享打印机(必须同其他常数组合使用)

PRINTER_ENUM_CONNECTIONS 枚举网络连接列表中的打印机(即使目前没有连接——仅适用于NT)

PRINTER_ENUM_NETWORK 枚举通过网络连接的打印机。级别(Level)必须为1。仅适用于NT

PRINTER_ENUM_REMOTE 枚举通过网络连接的打印机和打印服务器。级别必须为1。仅适用于NT

name String,vbNullString表示枚举同本机连接的打印机。否则由标志和级别决定

Level Long,1,2,4或5(4仅适用于NT;5仅适用于Win95和NT 4.0),指定欲枚举的结构的类型。如果是1,则name参数由标志设置决定。如果是2或5,那么name就代表欲对其打印机进行枚举的服务器的名字;或者为vbNullString。如果是4,那么只有PRINTER_ENUM_LOCAL和PRINTER_ENUM_CONNECTIONS才有效。名字必须是vbNullString

pPrinterEnum Byte,包含PRINTER_ENUM_x结构的缓冲区,其中的x代表级别(Level)

cbBuf Long,pPrinterEnum缓冲区中的字符数量

pcbNeeded Long,指向一个Long型变量的指针,该变量用于保存请求的缓冲区长度,或者实际读入的字节数量

pcReturned Long,载入缓冲区的结构数量(用于那些能返回多个结构的函数)

注解

第4和第5级将它们的结构建立在系统注册表的基础上,而且比第2级快得多。后者要求每台打印机都处于打开状态

请参考微软Win32手册,了解这个函数进一步的情况

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航