最近博主在研究用python控制打印机

这里整理下win32print的API介绍,官网地址http://timgolden.me.uk/pywin32-docs/win32print.html

OpenPrinter  打开指定的打印机,并获取打印机的句柄

GetPrinter  取得与指定打印机有关的信息

SetPrinter  对一台打印机的状态进行控制

ClosePrinter  关闭一个打开的打印机对象

AddPrinterConnection  连接指定的打印机

DeletePrinterConnection  删除与指定打印机的连接

EnumPrinters  枚举系统中安装的打印机

GetDefaultPrinter  取得默认打印机名称 <type 'str'>

GetDefaultPrinterW  取得默认打印机名称 <type 'unicode'>

SetDefaultPrinter  对一台打印机名称 <type 'str'> 设置成默认打印机

SetDefaultPrinterW  对一台打印机名称 <type 'unicode'> 设置成默认打印机

StartDocPrinter  在后台打印的级别启动一个新文档

EndDocPrinter  在后台打印程序的级别指定一个文档的结束

AbortPrinter  删除与一台打印机关联在一起的缓冲文件

StartPagePrinter  在打印作业中指定一个新页的开始

EndPagePrinter  指定一个页在打印作业中的结尾

StartDoc  开始一个打印作业

EndDoc  结束一个成功的打印作业

AbortDoc  取消一份文档的打印

StartPage  打印一个新页前要先调用这个函数

EndPage  用这个函数完成一个页面的打印,并准备设备场景,以便打印下一个页

WritePrinter  将发送目录中的数据写入打印机

EnumJobs  枚举打印队列中的作业

GetJob  获取与指定作业有关的信息

SetJob  对一个打印作业的状态进行控制

DocumentProperties  打印机配置控制函数

EnumPrintProcessors  枚举系统中可用的打印处理器

EnumPrintProcessorDatatypes  枚举由一个打印处理器支持的数据类型

EnumPrinterDrivers  枚举指定系统中已安装的打印机驱动程序

EnumForms  枚举一台打印机可用的表单

AddForm  为打印机的表单列表添加一个新表单

DeleteForm  从打印机可用表单列表中删除一个表单

GetForm  取得与指定表单有关的信息

SetForm 为指定的表单设置信息

AddJob  用于获取一个有效的路径名,以便用它为作业创建一个后台打印文件。它也会为作业分配一个作业编号

ScheduleJob  提交一个要打印的作业

DeviceCapabilities  利用这个函数可获得与一个设备的能力有关的信息

GetDeviceCaps  获取指定设备的参数设置

EnumMonitors  枚举可用的打印监视器

EnumPorts  枚举一个系统可用的端口

GetPrintProcessorDirectory  判断指定系统中包含了打印机处理器驱动程序及文件的目录

GetPrinterDriverDirectory  判断指定系统中包含了打印机驱动程序的目录是什么

AddPrinter  在系统中添加一台新打印机

DeletePrinter  将指定的打印机标志为从系统中删除

DeletePrinterDriver  从系统删除一个打印机驱动程序

DeletePrinterDriverEx  从系统删除一个打印机驱动程序和相关的文件

FlushPrinter  更新打印机,清楚错误状态的打印机

博主这边再通过help记录下一些有用的参数

DEF_PRIORITY = 1
DI_APPBANDING = 1
DI_ROPS_READ_DESTINATION = 2
DPD_DELETE_ALL_FILES = 4
DPD_DELETE_SPECIFIC_VERSION = 2
DPD_DELETE_UNUSED_FILES = 1
DSPRINT_PENDING = -2147483648
DSPRINT_PUBLISH = 1
DSPRINT_REPUBLISH = 8
DSPRINT_UNPUBLISH = 4
DSPRINT_UPDATE = 2
FORM_BUILTIN = 1
FORM_PRINTER = 2
FORM_USER = 0
JOB_ACCESS_ADMINISTER = 16
JOB_ACCESS_READ = 32
JOB_ALL_ACCESS = 983088
JOB_CONTROL_CANCEL = 3
JOB_CONTROL_DELETE = 5
JOB_CONTROL_LAST_PAGE_EJECTED = 7
JOB_CONTROL_PAUSE = 1
JOB_CONTROL_RESTART = 4
JOB_CONTROL_RESUME = 2
JOB_CONTROL_SENT_TO_PRINTER = 6
JOB_EXECUTE = 131088
JOB_INFO_1 = 1
JOB_POSITION_UNSPECIFIED = 0
JOB_READ = 131104
JOB_STATUS_BLOCKED_DEVQ = 512
JOB_STATUS_COMPLETE = 4096
JOB_STATUS_DELETED = 256
JOB_STATUS_DELETING = 4
JOB_STATUS_ERROR = 2
JOB_STATUS_OFFLINE = 32
JOB_STATUS_PAPEROUT = 64
JOB_STATUS_PAUSED = 1
JOB_STATUS_PRINTED = 128
JOB_STATUS_PRINTING = 16
JOB_STATUS_RESTART = 2048
JOB_STATUS_SPOOLING = 8
JOB_STATUS_USER_INTERVENTION = 1024
JOB_WRITE = 131088
MAX_PRIORITY = 99
MIN_PRIORITY = 1
PORT_STATUS_DOOR_OPEN = 7
PORT_STATUS_NO_TONER = 6
PORT_STATUS_OFFLINE = 1
PORT_STATUS_OUTPUT_BIN_FULL = 4
PORT_STATUS_OUT_OF_MEMORY = 9
PORT_STATUS_PAPER_JAM = 2
PORT_STATUS_PAPER_OUT = 3
PORT_STATUS_PAPER_PROBLEM = 5
PORT_STATUS_POWER_SAVE = 12
PORT_STATUS_TONER_LOW = 10
PORT_STATUS_TYPE_ERROR = 1
PORT_STATUS_TYPE_INFO = 3
PORT_STATUS_TYPE_WARNING = 2
PORT_STATUS_USER_INTERVENTION = 8
PORT_STATUS_WARMING_UP = 11
PORT_TYPE_NET_ATTACHED = 8
PORT_TYPE_READ = 2
PORT_TYPE_REDIRECTED = 4
PORT_TYPE_WRITE = 1
PRINTER_ACCESS_ADMINISTER = 4
PRINTER_ACCESS_USE = 8
PRINTER_ALL_ACCESS = 983052
PRINTER_ATTRIBUTE_DEFAULT = 4
PRINTER_ATTRIBUTE_DIRECT = 2
PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST = 512
PRINTER_ATTRIBUTE_ENABLE_BIDI = 2048
PRINTER_ATTRIBUTE_ENABLE_DEVQ = 128
PRINTER_ATTRIBUTE_FAX = 16384
PRINTER_ATTRIBUTE_HIDDEN = 32
PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS = 256
PRINTER_ATTRIBUTE_LOCAL = 64
PRINTER_ATTRIBUTE_NETWORK = 16
PRINTER_ATTRIBUTE_PUBLISHED = 8192
PRINTER_ATTRIBUTE_QUEUED = 1
PRINTER_ATTRIBUTE_RAW_ONLY = 4096
PRINTER_ATTRIBUTE_SHARED = 8
PRINTER_ATTRIBUTE_TS = 32768
PRINTER_ATTRIBUTE_WORK_OFFLINE = 1024
PRINTER_CONTROL_PAUSE = 1
PRINTER_CONTROL_PURGE = 3
PRINTER_CONTROL_RESUME = 2
PRINTER_CONTROL_SET_STATUS = 4
PRINTER_ENUM_CONNECTIONS = 4
PRINTER_ENUM_CONTAINER = 32768
PRINTER_ENUM_DEFAULT = 1
PRINTER_ENUM_EXPAND = 16384
PRINTER_ENUM_ICON1 = 65536
PRINTER_ENUM_ICON2 = 131072
PRINTER_ENUM_ICON3 = 262144
PRINTER_ENUM_ICON4 = 524288
PRINTER_ENUM_ICON5 = 1048576
PRINTER_ENUM_ICON6 = 2097152
PRINTER_ENUM_ICON7 = 4194304
PRINTER_ENUM_ICON8 = 8388608
PRINTER_ENUM_LOCAL = 2
PRINTER_ENUM_NAME = 8
PRINTER_ENUM_NETWORK = 64
PRINTER_ENUM_REMOTE = 16
PRINTER_ENUM_SHARED = 32
PRINTER_EXECUTE = 131080
PRINTER_INFO_1 = 1
PRINTER_READ = 131080
PRINTER_STATUS_BUSY = 512
PRINTER_STATUS_DOOR_OPEN = 4194304
PRINTER_STATUS_ERROR = 2
PRINTER_STATUS_INITIALIZING = 32768
PRINTER_STATUS_IO_ACTIVE = 256
PRINTER_STATUS_MANUAL_FEED = 32
PRINTER_STATUS_NOT_AVAILABLE = 4096
PRINTER_STATUS_NO_TONER = 262144
PRINTER_STATUS_OFFLINE = 128
PRINTER_STATUS_OUTPUT_BIN_FULL = 2048
PRINTER_STATUS_OUT_OF_MEMORY = 2097152
PRINTER_STATUS_PAGE_PUNT = 524288
PRINTER_STATUS_PAPER_JAM = 8
PRINTER_STATUS_PAPER_OUT = 16
PRINTER_STATUS_PAPER_PROBLEM = 64
PRINTER_STATUS_PAUSED = 1
PRINTER_STATUS_PENDING_DELETION = 4
PRINTER_STATUS_POWER_SAVE = 16777216
PRINTER_STATUS_PRINTING = 1024
PRINTER_STATUS_PROCESSING = 16384
PRINTER_STATUS_SERVER_UNKNOWN = 8388608
PRINTER_STATUS_TONER_LOW = 131072
PRINTER_STATUS_USER_INTERVENTION = 1048576
PRINTER_STATUS_WAITING = 8192
PRINTER_STATUS_WARMING_UP = 65536
PRINTER_WRITE = 131080
SERVER_ACCESS_ADMINISTER = 1
SERVER_ACCESS_ENUMERATE = 2
SERVER_ALL_ACCESS = 983043
SERVER_EXECUTE = 131074
SERVER_READ = 131074
SERVER_WRITE = 131075

python学习笔记(win32print API介绍)的更多相关文章

  1. Python学习笔记之基础篇(-)python介绍与安装

    Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...

  2. python学习笔记(二)、字符串操作

    该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...

  3. VS2013中Python学习笔记[Django Web的第一个网页]

    前言 前面我简单介绍了Python的Hello World.看到有人问我搞搞Python的Web,一时兴起,就来试试看. 第一篇 VS2013中Python学习笔记[环境搭建] 简单介绍Python环 ...

  4. OpenCV之Python学习笔记

    OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...

  5. 【Python学习笔记之二】浅谈Python的yield用法

    在上篇[Python学习笔记之一]Python关键字及其总结中我提到了yield,本篇文章我将会重点说明yield的用法 在介绍yield前有必要先说明下Python中的迭代器(iterator)和生 ...

  6. Python学习笔记(十一)

    Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...

  7. Python学习笔记,day5

    Python学习笔记,day5 一.time & datetime模块 import本质为将要导入的模块,先解释一遍 #_*_coding:utf-8_*_ __author__ = 'Ale ...

  8. Deep learning with Python 学习笔记(10)

    生成式深度学习 机器学习模型能够对图像.音乐和故事的统计潜在空间(latent space)进行学习,然后从这个空间中采样(sample),创造出与模型在训练数据中所见到的艺术作品具有相似特征的新作品 ...

  9. Deep learning with Python 学习笔记(9)

    神经网络模型的优化 使用 Keras 回调函数 使用 model.fit()或 model.fit_generator() 在一个大型数据集上启动数十轮的训练,有点类似于扔一架纸飞机,一开始给它一点推 ...

  10. Deep learning with Python 学习笔记(8)

    Keras 函数式编程 利用 Keras 函数式 API,你可以构建类图(graph-like)模型.在不同的输入之间共享某一层,并且还可以像使用 Python 函数一样使用 Keras 模型.Ker ...

随机推荐

  1. Js获取当前日期时间

    Js获取当前日期时间 var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4 ...

  2. 根据不同的分辨率调用不同的css

    var Other1600 = "css_1600.css"; var Other1440 = "css_1440.css"; var Other1366 = ...

  3. LeetCode "Longest Substring with At Most K Distinct Characters"

    A simple variation to "Longest Substring with At Most Two Distinct Characters". A typical ...

  4. 【Oracle学习笔记-4】内连接和外连接的区别

    参考链接(非常棒) 摘要 下面主要以两个例子进行说明: 例子1: 表A结构如下: select * from A | 表B结构如下: select * from B 两个表要做连接,就必须有个连接字段 ...

  5. Tortoise SVN Clean up失败的解决方法

    step1: 到 sqlite官网 (http://www.sqlite.org/download.html) 下载 sqlite3.exe (找到 Precompiled Binaries for ...

  6. SVN:通过Client端打tag

    教你如何使用svnClient打tag~给公司人用的! 1.进入代码主目录 2.右击空白处“TortoiseSVN”—->“Branch/tag” 3.点地址栏右侧的 (选择tags存放目录) ...

  7. 技巧分享——如何去除多余的CSS代码?

    有时候,当你的CSS代码过多的时候,而且已经明确知道有部分CSS代码是多余的: 这时候,有什么较快的办法可以去除多余的CSS呢?? 下面分享一个实用技巧: 1.使用谷歌浏览器:Chrome .下载 2 ...

  8. 最简单的ioc容器代码(低仿Spring )

    Spring 的一大核心就是IOC,控制反转(依赖注入). 对象交由容器去控制,降低耦合性. Spring 的ioc实现原理其实很简单,容器启动后读取并解析配置文件,根据配置文件中<bean&g ...

  9. SOA_环境安装系列3_Oracle Weblogic安装和环境搭建(案例)

    2014-01-03 Created By BaoXinjian

  10. codeforces 285 D. Permutation Sum 状压 dfs打表

    题意: 如果有2个排列a,b,定义序列c为: c[i] = (a[i] + b[i] - 2) % n + 1 但是,明显c不一定是一个排列 现在,给出排列的长度n (1 <= n <= ...