API函数详解:EnumPrinters函数

Windows API函数 Visual Basic 语法格式声明
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
Windows API函数功能说明
枚举系统中安装的打印机
Windows API函数出口返回值
Long,非零表示成功,零表示失败。会设置GetLastError
Windows API函数入口参数表
Windows API函数入口参数类型及说明
flagsLong,一个或多个下述标志
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
nameString,vbNullString表示枚举同本机连接的打印机。否则由标志和级别决定
LevelLong,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
pPrinterEnumByte,包含PRINTER_ENUM_x结构的缓冲区,其中的x代表级别(Level)
cbBufLong,pPrinterEnum缓冲区中的字符数量
pcbNeededLong,指向一个Long型变量的指针,该变量用于保存请求的缓冲区长度,或者实际读入的字节数量
pcReturnedLong,载入缓冲区的结构数量(用于那些能返回多个结构的函数)
注解
第4和第5级将它们的结构建立在系统注册表的基础上,而且比第2级快得多。后者要求每台打印机都处于打开状态
请参考微软Win32手册,了解这个函数进一步的情况

上页:API函数详解:XFORM函数 下页:API函数详解:AbortPath函数

Windows API函数大全

Windows API函数首页Windows API函数按字母排列
控件与消息函数硬件与系统函数
设备场景函数绘图函数
位图、图标和光栅运算函数菜单函数
文本和字体函数打印函数
文件处理函数进程和线程函数
Windows消息函数网络函数
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号