打印系统、打印方法、打印服务器以及控制方法

文档序号:6434664阅读:236来源:国知局
专利名称:打印系统、打印方法、打印服务器以及控制方法
技术领域
本发明涉及用于执行拉式打印(pull print)控制的打印系统、打印方法、打印服务器以及控制方法。
背景技术
传统上,已经提出了所谓的“拉式打印”打印系统,该打印系统能够在用户针对临时存储在服务器中的打印数据向打印设备发出打印请求时,从打印设备输出打印数据(例如,参见日本专利第4033857号公报)。在从应用程序打印时,用户可以不从特定打印设备而从他选择的打印设备输出打印数据。作为针对用户不希望的打印输出的再打印方法,提供了以下系统(例如,参见日本特开第2007-304881号公报)。更具体地说,在打印设备的面板上显示在客户端PC上运行的打印机驱动程序的UI (用户界面)。用户操作UI来指定再打印设置和再打印。对于该传统的方法,难以在用户从打印设备针对临时存储在服务器中的打印数据发出打印请求时,指定打印设置信息的改变。临时存储在服务器中的打印数据具有依赖于打印设备的PDL(页面描述语言)格式。因此,PDL数据必须根据打印设置信息改变指令来编辑。例如,假定用户在从打印设备针对临时存储在服务器中的打印数据发出打印请求时, 指定了将4页拼版在1页上(称为“4合1”)的打印设置。此时,临时存储在服务器中的 PDL打印数据需要改变为与“4合1”相匹配。如果PDL是依赖于打印设备的分辨率的光栅格式,则光栅图像被缩小以实现“4合1”,这引起了各种质量劣化问题,如细线丢失。由于 PDL具有多种规范,应对这些PDL规范需要大量工作。首先,如果PDL规范不对公众开放,则不能改变PDL。作为一种由用户从打印设备指定打印设置信息的改变的方法,在打印设备的面板上显示在客户端PC上运行的打印机驱动程序的UI。然而,难以将这种方法应用于拉式打印系统。在用户指定在客户端PC上打印以执行拉式打印时,尚未最终确定进行输出的打印设备。供使用的打印机驱动程序UI的功能必须是不依赖于打印设备的通用功能。只有在用户走到打印设备跟前并操作打印设备的面板后,才最终确定进行输出的打印设备。在打印设备的面板上显示的拉式打印打印机驱动程序UI的功能仅是通用的。换言之,不能使用打印设备特有的功能,从而限制了打印可设置功能。

发明内容
根据本发明的一个方面,提供了一种打印系统,该打印系统包括信息处理设备、打印服务器以及打印设备,该信息处理设备包括生成中间格式的打印作业的虚拟打印机驱动程序,该打印服务器管理所述打印作业,所述打印服务器包括存储单元,其被配置为存储从所述信息处理设备接收的所述中间格式的打印作业;设置改变接收单元,其被配置为从所述打印设备接收针对所述存储单元中存储的所述中间格式的打印作业的打印设置信息改变指令;更新单元,其被配置为根据所述打印设置信息改变指令来更新所述打印作业的打印设置信息;打印请求接收单元,其被配置为从所述打印设备接收打印请求;以及作业发送单元,其被配置为根据所述打印请求,基于所述中间格式的打印作业和所述更新单元更新的打印设置信息来生成所述打印设备可打印的格式的打印作业,并将所生成的打印作业发送给所述打印设备,所述打印设备包括选择单元,其被配置为选择打印作业;设置改变发送单元,其被配置为发送针对由所述选择单元选择的打印作业的打印设置信息改变指令;打印请求发送单元,其被配置为向所述打印服务器发送针对所述打印作业的打印请求; 以及打印单元,其被配置为打印由所述作业发送单元发送的打印作业。根据本发明的另一个方面,提供了一种打印系统中的打印方法,该打印系统包括信息处理设备、打印服务器以及打印设备,该信息处理设备包括生成中间格式的打印作业的虚拟打印机驱动程序,该打印服务器管理所述打印作业,所述打印方法包括在该打印服务器中执行的如下步骤存储步骤,将从所述信息处理设备接收的所述中间格式的打印作业存储在存储单元中;设置改变接收步骤,从所述打印设备接收针对所述存储单元中存储的所述中间格式的打印作业的打印设置信息改变指令;更新步骤,根据所述打印设置信息改变指令来更新所述打印作业的打印设置信息;打印请求接收步骤,从所述打印设备接收打印请求;以及作业发送步骤,根据所述打印请求,基于所述中间格式的打印作业和在所述更新步骤中更新的打印设置信息来生成所述打印设备可打印的格式的打印作业,并将所生成的打印作业发送给所述打印设备,并且,所述打印方法包括在所述打印设备中执行的如下步骤选择步骤,选择打印作业;设置改变发送步骤,发送针对在所述选择步骤中选择的打印作业的打印设置信息改变指令;打印请求发送步骤,向所述打印服务器发送针对所述打印作业的打印请求;以及打印步骤,打印在所述作业发送步骤中发送的打印作业。根据本发明的另一个方面,提供了一种打印服务器,该打印服务器与信息处理设备和打印设备通信,该信息处理设备包括生成中间格式的打印作业的虚拟打印机驱动程序,该打印服务器包括存储单元,其被配置为存储从所述信息处理设备接收的所述中间格式的打印作业;设置改变接收单元,其被配置为从所述打印设备接收针对所述存储单元中存储的所述中间格式的打印作业的打印设置信息改变指令;更新单元,其被配置为根据所述打印设置信息改变指令来更新所述打印作业的打印设置信息;打印请求接收单元,其被配置为从所述打印设备接收打印请求;以及作业发送单元,该作业发送单元被配置为根据所述打印请求,基于所述中间格式的打印作业和所述更新单元更新的打印设置信息来生成所述打印设备可打印的格式的打印作业,并将所生成的打印作业发送给所述打印设备。根据本发明的另一个方面,提供了一种打印服务器的控制方法,该打印服务器与信息处理设备和打印设备通信,该信息处理设备包括生成中间格式的打印作业的虚拟打印机驱动程序,该控制方法包括存储步骤,将从所述信息处理设备接收的所述中间格式的打印作业存储在存储单元中;设置改变接收步骤,从所述打印设备接收针对所述存储单元中存储的所述中间格式的打印作业的打印设置信息改变指令;更新步骤,根据所述打印设置信息改变指令来更新所述打印作业的打印设置信息;打印请求接收步骤,从所述打印设备接收打印请求;以及作业发送步骤,根据所述打印请求,基于所述中间格式的打印作业和在所述更新步骤中更新的打印设置信息来生成所述打印设备可打印的格式的打印作业,并将所生成的打印作业发送给所述打印设备。根据本发明,当用户从打印设备针对临时存储在服务器中的打印数据发出打印请求时,他可以指定打印设置的改变。在打印设备上运行且指定打印设置改变的程序不是请求客户端PC,而是请求服务器中的适合于打印设备的打印机驱动程序,来改变打印设置。因此,可以合适地改变打印设置。通过以下(参照附图)对示例性实施方式的描述,本发明的其他特征将变得清楚。


图1是例示打印系统的构成的图;图2是示出各设备的硬件构成的框图;图3是例示多功能外围设备的控制器单元的构成的框图;图4是用于解释打印系统中的总体拉式打印序列的示意图;图5A和5B是示出各数据序列的详情的表;图6是例示应用程序的打印窗口的示意图;图7A和7B是例示打印系统中的第一控制处理的流程图;图8A和8B是例示打印系统中的第二控制处理的流程图;图9A和9B是例示打印系统中的第三控制处理的流程图;图10是在打印系统中生成逻辑打印机的流程图;图11是例示打印系统中的第四控制处理的流程图;图12是例示打印系统中的第五控制处理的流程图;图13A、13B和13C是示出数据详情的图;图14A和14B是示出数据详情的图;图15A、15B和15C是分别示出在多功能外围设备的操作单元的显示单元上显示的窗口的示意图;图16A、16B和16C是分别示出在多功能外围设备的操作单元的显示单元上显示的窗口的示意图;图17是示出数据详情的图;以及图18是示出在多功能外围设备的操作单元的显示单元上显示的窗口的示意图。
具体实施例方式[系统构成]下面,参照附图描述本发明的实施方式。图1是例示可以应用根据本发明的信息处理设备、打印服务器、地址管理服务器以及打印设备的打印系统的构成的图。如同图1中的“商业办公室A”,本实施方式的打印系统通过将一个或多个客户端PC 100、一个或多个打印服务器101、一个或多个多功能外围设备102、地址管理服务器103、一个或多个登录服务PC 104、以及目录服务服务器105经由局域网(LAN) 106相连接而构成。在客户端PC 100中安装有虚拟打印机驱动程序。虚拟打印机驱动程序基于从客户端应用程序接收的数据,生成不依赖于特定多功能外围设备的中间格式的打印作业,并将该打印作业发送给打印服务器101。注意,中间格式的打印作业是指格式具有对公众开放的公共格式规范且便于重新编辑的打印数据。示例有EMFSP00L(增强元文件假脱机格式) 和XPS (XML文章规范)。本实施方式将采用EMFSP00L格式,但是,也可以采用其他中间格式(如XPS或PDF)的打印数据。打印服务器101将接收到的打印作业存储在预定存储位置处。打印服务器101包括作业管理数据库(称为“作业管理DB”),并将关于打印作业的元数据存储在作业管理DB 中。打印服务器101根据存储在作业管理DB中的元数据生成打印作业列表信息(打印作业列表数据),并将它传送给多功能外围设备102。打印服务器101使用存储在作业管理DB 中的元数据和从多功能外围设备102接收的打印设置信息来更新打印设置信息。打印服务器101将更新后的打印设置信息传送给多功能外围设备102。打印服务器101根据在预定存储位置处保存的打印作业和在作业管理DB中记录并管理的元数据,生成PDL (页面描述语言)。打印服务器101将生成的PDL数据传送给多功能外围设备102。地址管理服务器103包括地址管理数据库(称为“地址管理DB”)。当在本实施方式中执行“拉式打印”处理时,地址管理服务器103将管理打印作业的打印服务器101的地址信息(称为“地址”)和用户标识符存储在地址管理DB中。响应于来自多功能外围设备 102的打印作业列表请求,地址管理服务器103向多功能外围设备102发送与从多功能外围设备102接收的用户标识符对应的打印服务器101的地址。作为针对多功能外围设备102的登录服务,登录服务PC 104基于在目录服务服务器105中存储的客户端PC 100的登录用户名和密码(例如,Microsoft Windows 的登录用户名和密码)来执行认证处理。认证处理的一个示例是SSO (单登录,Single Sign-On) 0 登录服务PC 104的一个示例是安装有可从佳能公司获得的安全代理的个人计算机。目录服务服务器105存储关于网络上的硬件资源(如服务器、客户机以及打印机) 的信息,以及这些硬件资源的用户的属性、访问权限等(包括客户端PC 100的登录用户名和密码)。目录服务服务器105的一个示例是具有活动目录功能的服务器。在“商业办公室B”中,一个或多个客户端PC 100、一个或多个打印服务器101以及一个或多个多功能外围设备102经由LAN 106相连接。本实施方式的打印系统可以通过将具有以上构成的“商业办公室A”和一个或多个“商业办公室B”经由WAN 107相连接而构成。作为各个服务器的功能,一个设备可以实现多个服务器的功能,或者多个设备可以相互协作地实现一个功能。[信息处理设备]下面参照图2解释可应用于图1中所示的客户端PC 100、打印服务器101、地址管理服务器103、登录服务PC 104以及目录服务服务器105的信息处理设备的硬件构成。图 2是示出可应用于图1中所示的客户端PC 100、打印服务器101、地址管理服务器103、登录服务PC 104以及目录服务服务器105的信息处理设备的硬件构成的框图。参照图2,CPU 201总体控制与系统总线204相连接的各个装置和控制器。ROM 202 或外部存储器211存储用作CPU 201的控制程序的BIOS (基本输入/输出系统)和操作系统程序(称为“0S”)、以及实现要由各服务器或各PC执行的功能所需的各种程序等。RAM 203用作CPU 201的主存储器、工作区等。CPU 201从ROM 202或外部存储器211将执行处理所需的程序等加载到RAM 203中,并执行所加载的程序,实现各种操作。输入控制器205 控制来自键盘209、诸如鼠标(未示出)的指点装置等的输入。视频控制器206控制在监视器210上的显示。通常,监视器210是诸如液晶显示器或CRT的显示装置。根据需要,管理员使用这种显示装置。存储器控制器207控制对存储引导程序、各种应用程序、编辑文件、各种数据等的外部存储器211的存取,这些外部存储器211例如是硬盘(HD)、SSD(固态驱动器)或SD存储卡。通信I/F控制器208经由网络(例如,图1中所示的LAN 106)与外部装置连接/通信,并执行网络通信控制处理。例如,可以采用使用TCP/IP的通信。注意,CPU 201通过对RAM 203中的显示信息区域执行轮廓字体光栅化处理,来实现在监视器210上的显示。CPU 201在监视器210上用鼠标光标(未示出)实现用户指令。用于实现本发明的各种程序(稍后描述)记录在外部存储器211中,并且在需要时,加载到RAM 203中并由 CPU 201执行。外部存储器211附加存储用来执行这些程序的定义文件、各种信息表等,这些也将在下面详细描述。[控制器单元]下面参照图3解释对图1中所示的多功能外围设备102进行控制的控制器单元的硬件构成。图3是例示图1中所示的多功能外围设备102的控制器单元的硬件构成的框图。参照图3,控制器单元316连接到用作图像输入装置的扫描仪314和用作图像输出装置的打印机312。此外,控制器单元316连接到LAN(例如,图1中所示的LAN 106)和公共线路(WAN)(例如,PSTN或ISDN),以输入/输出图像数据和装置信息。在控制器单元316中, CPU 301是控制整个系统的处理器。RAM 302是CPU301运行所需的系统工作存储器,并且也是用于记录程序的程序存储器和用于临时记录图像数据的图像存储器。ROM 303存储用于系统的引导程序和各种控制程序。硬盘驱动器(HDD) 304存储用于控制系统的各种程序、 图像数据等。在本实施方式中,HDD或保存区域304保存PDL作业。操作单元接口(I/F) 307是与操作单元(UI) 308的接口,并且向操作单元308输出要在操作单元308上显示的图像数据。而且,操作单元I/F 307向CPU 301通知系统用户经由操作单元308输入的信息(例如,用户信息)。注意,操作单元308包括具有触摸板的显示单元。用户按压(用他的手指等触摸)在显示单元上显示的按钮,以输入各种指令。网络接口(I/F)305连接到网络(LAN)以输入/输出数据。调制解调器306连接到公共线路, 以执行数据输入/输出,如发传真/收传真。外部接口(I/F)318接收经由USB、IEEE1394、 打印机端口、RS-232C等的外部输入。在本实施方式中,读卡器319连接到外部I/F 318,以对认证所需的IC卡进行读取。CPU 301对读卡器319经由外部I/F 318从IC卡读取信息进行控制,并且可以获取从IC卡读取的信息。这些装置布置在系统总线309上。图像总线接口(I/F)320是连接系统总线309和用于高速传输图像数据的图像总线315的总线桥,并转换数据结构。图像总线315由PCI总线或IEEE1394总线构成。以下装置连接到图像总线315。光栅图像处理器(RIP) 310将诸如PDL代码的矢量数据光栅化为位像。打印机接口(I/F) 311连接打印机312和控制器单元316,并且执行图像数据的同步/异步转换。扫描仪接口(I/F) 313连接扫描仪314和控制器单元316,并且执行图像数据的同步/异步转换。图像处理单元317对输入图像数据执行修正、处理和编辑,并且对打印输出图像数据执行打印机修正、分辨率转换等。此外,图像处理单元317旋转图像数据,并且按照JPEG对多值图像数据进行压缩/解压缩,或者按照JBIG、MMR、MH等对二值图像数据执行压缩/解压缩。扫描仪314照亮原稿页上的图像,并用CCD线传感器扫描该图像,以将该图像转换为作为光栅图像数据的电信号。用户将原稿页放置在供稿器的托盘中,并从操作单元308 指定读取开始。随后,CPU 301向扫描仪314发出指令,供稿器逐页供应原稿页以读取原稿图像。打印机312将光栅化图像数据转换为纸张上的图像。打印机312的方法例如是使用感光鼓或感光带的电子照相方法,或者是从小喷嘴阵列排出墨以在纸张上直接打印图像的喷墨方法。设备的类型是任意的,只要可应用本发明即可。响应于来自CPU 301的指令,开始打印操作。注意,打印机312包括多个供纸台和对应的纸盒,从而可以选择不同纸张大小或不同取向。操作单元308包括IXD显示单元,并且触摸板片附贴到该IXD上。操作单元308显示系统操作窗口,并且在用户按压所显示的键时,经由操作单元I/F 307向CPU 301通知位置信息。操作单元308包括各种操作键,如开始键、停止键、ID键和重置键。操作单元308 的开始键用于例如开始原稿图像读取操作。在开始键的中央设置有绿色和红色两种颜色的 LED,这两种颜色表示开始键是否可用。操作单元308的停止键用于停止运行操作。操作单元308的ID键用于输入用户ID。重置键用于初始化来自操作单元的设置。读卡器319在CPU 301的控制下读取IC卡(例如,可从索尼公司获得的FeliCa )中存储的信息,并经由外部I/F 318向CPU 301通知所读取的信息。利用这种构成,多功能外围设备102可以将扫描仪314所扫描的图像数据发送到LAN 106,并且使用打印机312 来打印输出从LAN106接收的打印数据。而且,多功能外围设备102可以经由调制解调器 306将扫描仪314所扫描的图像数据传真发送到公共线路,并且使用打印机312来输出从公共线路传真接收的图像数据。[拉式打印处理序列]下面参照图4解释根据本实施方式的打印系统中的总体拉式打印序列。在此之前,首先解释本实施方式中执行拉式打印的先决条件。在打印服务器101中安装用于实现本实施方式的拉式打印的虚拟打印机驱动程序,作为共享打印机。虚拟打印机驱动程序具有基于指定打印或来自客户端应用程序400的绘制(render)指令的输出而生成打印数据的功能。而且,虚拟打印机驱动程序具有接收打印设置信息的设置以对打印机驱动程序和打印机的功能进行控制的功能(用户接口),并且具有将打印设置信息存储在针对各安装的逻辑打印机的外部存储装置中的功能。打印设置信息按可从美国微软公司获得的 Windows 的DEVM0DE结构存储。DEVM0DE结构由美国微软公司定义,以存储包括关于逻辑打印机的默认操作条件在内的各种设置,如可由打印机使用的功能、版式设置、整理设置、供纸/出纸设置以及打印质量设置。该信息存储在针对各安装的逻辑打印机的外部存储装置中。各客户端PC 100通过点击&打印等从打印服务器101下载虚拟打印机驱动程序,并且安装它,由此添加虚拟打印机驱动程序401的逻辑打印机。下面描述根据本实施方式的总体拉式打印序列。图4是用于解释根据本实施方式的打印系统的拉式打印 的总体序列的示意图。如图4所示,用户首先登录到客户端PC 100 中,并从由客户端PC 100执行的客户端应用程序400向对应于虚拟打印机驱动程序401的逻辑打印机输入打印指令(1-1)。此时,用户可以使用虚拟打印机驱动程序设置打印设置信息。注意,这里可设置的打印设置信息不是专用于特定打印设备的打印设置信息,而限于通用内容。例如,该打印设置信息是所有打印机可以处理的打印设置信息。根据打印指令,客户端PC 100的客户端应用程序400经由图形引擎向虚拟打印机驱动程序401发送数据。客户端PC 100的虚拟打印机驱动程序401基于经由图形引擎(未示出)从客户端应用程序接收的数据生成不依赖于装置的EMFSP00L打印作业。客户端PC100将所生成的EMFSP00L 打印作业发送给打印服务器101 (1-2)。在打印服务器101中,打印处理器402读取从虚拟打印机驱动程序401发送的 EMFSP00L打印作业,并生成打印作业的元数据。打印处理器402将元数据和打印作业发送给作业管理服务403 (1-3)。作业管理服务403将EMFSP00L打印作业保存在打印服务器101 中的预定存储位置处。此外,作业管理服务403将元数据登记在作业管理DB 404(内置在打印服务器101的外部存储装置中)中(1-4)。此时,打印服务器101仅将EMFSP00L打印作业保存在所述预定存储位置处,而不将该EMFSP00L打印作业发送给打印设备。此外,打印服务器101发送打印作业标识符和用户标识符以将它们登记在地址管理服务器103中的地址管理服务405中(1-5)。在从作业管理服务403接收到打印作业标识符和用户标识符时,地址管理服务 405将它们以及打印服务器101的地址登记在地址管理DB406中(1_6)。在本实施方式中, 地址管理DB 406内置于地址管理服务器103的外部存储装置中。注意,本实施方式使用IP 地址作为用于区分装置的地址。本实施方式使用⑶ID (全球唯一标识符)作为作业标识符。当多功能外围设备102检测到可由读卡器319读取的IC卡时,它读取IC卡中的个人认证信息,并将所读取的个人认证信息作为认证请求发送给认证服务器(未示出)。个人认证信息是用于认证的信息,并且可以是IC卡的序列号。个人认证信息不受具体限制, 只要它可以唯一标识用户即可。在从多功能外围设备102接收到个人认证信息后,认证服务器基于存储在该认证服务器的外部存储装置中的IC卡认证表执行对个人认证信息的认证处理,并将认证结果发送回多功能外围设备102。假定在认证处理成功时,认证服务器发送客户端PC 100的用户标识符,作为认证结果。具有这种功能的设备是任意的,只要能够实现认证服务器功能并且可以驻留于例如地址管理服务器103中即可。多功能外围设备102中的面板应用程序407接收指示认证成功的认证结果(客户端PC 100的登录用户标识符)。本实施方式使用用户名作为用户标识符。不用说,用于标识用户的方法可以是IC卡的序列号等。面板应用程序407请求打印服务器101的打印作业列表。在此之前,面板应用程序407执行用于获取打印服务器101的IP地址的预处理,以获取打印作业列表。首先,面板应用程序407将用户标识符发送给地址管理服务器103中的地址管理服务405 (2-1)。这实现了地址解析指令单元。地址管理服务405从地址管理DB 406获取与接收到的用户名对应的打印服务器101的地址(2- 。随后,地址管理服务405将打印服务器101的地址发送回面板应用程序407 (2-3)。通过接收该地址,面板应用程序407实现了地址接收单元。在从地址管理服务405接收到打印服务器101的地址后,面板应用程序407基于所获取的地址请求打印服务器101中的作业管理服务403的打印作业列表(2-4)。相应地, 面板应用程序407实现了列表请求发送单元。通过接收该打印作业列表请求,作业管理服务403实现了列表请求接收单元。作业管理服务403查寻作业管理DB 404Q-5),生成对应于用户名的打印作业列表,并将该打印作业列表发送回面板应用程序407 (2-6)。这实现了列表发送单元。通过接收该打印作业列表,面板应用程序407实现了列表接收单元。当从作业管理服务403接收到打印作业列表时,面板应用程序407在操作单元308的UI上显示打印作业列表。当用户选择打印作业并且发出打印设置信息改变指令和打印指令时,面板应用程序407将所选择的打印作业的打印设置信息发送给作业管理服务403(3-1)。这实现了设置改变发送单元。通过接收该打印设置信息的改变,作业管理服务403实现了设置改变接收单元。当从面板应用程序407接收到打印设置信息时,作业管理服务403查寻作业管理DB404(34)。作业管理服务403将在客户端PC中设置的通用打印设置信息改变为从面板应用程序407接收的打印设置信息,并将改变后的打印设置信息发送回面板应用程序 407 (3- 。这实现了设置发送单元。通过接收所发送的打印设置信息,面板应用程序407 实现了设置接收单元。面板应用程序407将所发送的打印设置信息与所接收的打印设置信息相比较,以确定是否已正确改变打印设置信息。如果尚未正确改变打印设置信息,则面板应用程序407在操作单元308的UI上显示反映该情况的消息。面板应用程序407再次向作业管理服务403发出打印请求(输出指令M4_l)。这实现了打印请求发送单元。通过接收该打印请求,作业管理服务403实现了打印请求接收单元。当从面板应用程序407接收到打印指令时,作业管理服务403查寻作业管理DB 404 并获取打印所需的信息G-2)。随后,作业管理服务403基于从作业管理DB 404获取的信息获取EMFSP00L打印作业,以基于打印指令执行打印处理。作业管理服务403向打印机驱动程序发出关于针对打印作业的PDL转换处理等的指令(4- 。在这种情况下,作业管理服务403向已发出打印请求的打印机的打印机驱动程序指示PDL转换处理。该规范假定在打印服务器中已提前安装了各装置的打印机驱动程序,但是本发明不限于此。此后,打印机驱动程序408将PDL作业发送给多功能外围设备102,从而多功能外围设备102进行打印0-4)。这实现了作业发送单元。注意,PDL作业是通过将EMFSP00L 打印作业转换为可打印PDL格式而获得的作业。转换为PDL格式的作业可以由多功能外围设备102输出。最后,当用户指定删除打印作业时,面板应用程序407指示作业管理服务403删除所指定的打印作业(5-1)。在从面板应用程序407接收到打印作业删除请求时,作业管理服务403指示地址管理服务405删除所登记的打印作业标识符(5-2)。在从作业管理服务403接收到打印作业标识符登记解除请求时,地址管理服务405从地址管理DB 406删除对应的记录(5-3)。作业管理服务403从作业管理DB删除对应的记录(5-4),并且也删除 EMFSP00L打印作业文件。已经描述了打印系统的总体序列。图5A和5B以表的形式示出了图4的打印系统中的数据详情。下面参照流程图详细描述处理。此时,将参照图5A和5B来完成该描述。[打印指令操作]下面解释在图1所示的客户端PC 100上运行的客户端应用程序400中的打印指令。图6是例示在图1所示的客户端PC 100上运行的客户端应用程序400的打印窗口的示意图。显示单元在客户端PC 100的CPU的控制下显示打印窗口。打印机选择栏610允许用户从在客户端PC 100中设置的逻辑打印机中选择执行打印的逻辑打印机。在打印机选择栏610中,“拉式打印”601是与本实施方式中的针对拉式打印设置的虚拟打印机驱动程序对应的逻辑打印机。此外,在打印机选择栏610中,“Cxxxx ix3250"602和“Cxxxx ix5051”603是对应于标准打印机驱动程序的逻辑打印机。用户在打印机选择栏610中选择一个逻辑打印机,并且用指点装置(未示出)指定“确定1 钮605。 随后,客户端应用程序400经由图形引擎将打印数据发送给与在打印机选择栏610中选择的逻辑打印机对应的打印机驱动程序。下面解释当用户在打印机选择栏610中选择“拉式打印” 601并发出打印指令时的虚拟打印机驱动程序的操作。[第一控制处理]图7A和7B是例示根据本发明的打印系统中的第一控制处理序列的流程图。该序列对应于图4所示的从1-1到1-6的处理序列。在图7A和7B所示的流程图中,实线箭头表示处理的序列,而虚线箭头表示设备之间的数据发送/接收。步骤SA700到SA702对应于图4所示的虚拟打印机驱动程序401的打印作业输入处理。通过由图1中所示的客户端PC 100的CPU将存储在外部存储器中的程序加载到RAM 中并执行该程序,来实现这些流程图处理。步骤SB700到SB706对应于图4中所示的打印处理器402执行的元数据生成/发送处理和打印作业传输处理。通过由图1中所示的打印服务器101的CPU将存储在外部存储器中的程序加载到RAM中并执行该程序,来实现这些流程图处理。步骤SC700到SC709对应于图4中所示的作业管理服务403执行的元数据登记处理和打印作业保存处理。通过由图1中所示的打印服务器101的CPU将存储在外部存储器中的程序加载到RAM中并执行该程序,来实现这些流程图处理。步骤SD700到SD704对应于图4所示的地址管理服务405执行的打印作业标识符登记处理。通过由图1中所示的地址管理服务器103的CPU将存储在外部存储器中的程序加载到RAM中并执行该程序,来实现这些流程图处理。首先,下面解释客户端PC 100的虚拟打印机驱动程序401执行的打印作业输入处理。在步骤SA700中,开始虚拟打印机驱动程序401的处理。在步骤SA701中,虚拟打印机驱动程序401将从图4中的客户端应用程序400输入的数据输出为EMFSP00L打印作业。这对应于图4中的1-1和1-2。对于可从美国微软公司获得的Windows ,通过称为DDI (设备驱动程序接口)的OS(操作系统)的函数调用来执行对打印机驱动程序的输入。虚拟打印机驱动程序401解释在与DDI调用同时传输的参数,生成EMFSP00L打印作业,并将所生成的作业输出到由OS管理的假脱机程序(spooler)中。通常,打印机驱动程序的作用是生成并输出依赖于输出装置的打印作业。在本实施方式中,重要的是生成并输出不依赖于多功能外围设备102的中间格式的打印作业。因此,即使多功能外围设备102的构成发生改变,在本发明的打印系统中,虚拟打印机驱动程序401的构成也不会变化。艮口, 在该拉式打印系统中能够容易地使用多功能外围设备独有的功能。在步骤SA702中,处理结束。接下来,将解释打印服务器101的打印处理器402的元数据生成/发送处理和打印作业传输处理。对于可从美国微软公司获得的Windows ,下面描述在OS请求打印处理器处理打印作业时调用的“I^rintDocumentOrJrintProcessor”函数的内部处理。在步骤 SB700,打印处理器402开始在打印服务器101上的处理。在步骤SB701,打印处理器402获取关于已从虚拟打印机驱动程序401输出并由OS管理的打印作业的格式的信息。打印处理器402确定输出到OS的假脱机程序中的作业类型是否是原始(RAW)格式。原始格式指示从打印机驱动程序输出的打印作业。因为虚拟打印机驱动程序401在步骤SA701中输出了打印作业,所以确定作业类型是原始格式,并且处理进行到步骤SB702。如果确定作业类型不是原始格式,则处理进行到步骤SB706并且结束。在步骤SB702,打印处理器402生成元数据。元数据包括图5A和5B的“1_3”行、“发送数据”列上的⑶ID (全局唯一标识符)、 作业名、用户名、DEVM0DE以及虚拟打印机驱动程序的逻辑打印机名。更具体地说,如图13A 所示,元数据表示为XML格式。JoWnfo元素的Guid属性描述在本发明的打印系统中唯一的打印作业标识符。JoWnfo元素的JobName属性描述在图4的处理1_1中指定的作业的名称。JoWnfo元素的^erName属性描述在图4的处理1_1中进行了打印的用户的名称。 JobInfo元素的PrintQueueName属性描述在图4的处理1_1中使用的逻辑打印机的名称。 DocumentSettings元素的DEVMODESnapshot属性描述在图4的处理1_1中指定的首页的打印设置信息(DEVM0DE)。注意,DEVM0DE是二进制格式,并且由Base64方法转换为文本,以按XML描述数据。在步骤SB703中,打印处理器402将在步骤SB702中生成的元数据发送给作业管理服务403。对于从美国微软公司获得的Windows ,可以高效地使用命名管道作为传输协议。即使对于用户令牌(token)的获取(稍后描述),命名管道的使用也是便利的。在步骤SB704中,打印处理器402从OS的假脱机程序中加载假脱机数据。假脱机数据对应于从虚拟打印机驱动程序401输出的EMFSP00L打印作业。在步骤SB705中,打印处理器402将所加载的假脱机数据发送给作业管理服务403。在步骤SB706,处理结束。下面将描述作业管理服务403的元数据登记处理和打印作业保存处理。在步骤 SC700,作业管理服务403开始在打印服务器101上的处理。在步骤SC701,作业管理服务 403用作命名管道服务器,并且接收在步骤SB703从打印处理器402发送的如图13A所示的XML格式的元数据。当建立与打印处理器402的连接时,作业管理服务403获取命名管道客户端(即,打印处理器40 的用户令牌(步骤SC7(^)。稍后将描述用户令牌的使用。在步骤SC703中,作业管理服务403确定用于保存打印作业的文件路径。在步骤 SC704中,作业管理服务403接收在步骤SB705中从打印处理器402发送的EMFSP00L打印作业。在步骤SC705中,作业管理服务403用在步骤SC703中确定的文件名保存所接收的 EMFSP00L打印作业。在步骤SC706中,作业管理服务403生成当前日期&时间,作为打印作业输入时间。在步骤SC707,作业管理服务403将在步骤SC701接收的元数据、在步骤SC702获取的用户令牌、在步骤SC703确定的文件名以及在步骤SC706生成的日期&时间登记为图4 的作业管理DB 404中的新记录。在步骤SC708,作业管理服务403向地址管理服务405发送打印作业标识符登记命令。此时,作业管理服务403甚至还发送在步骤SC701中接收的元数据中包含的⑶ID和用户名。在步骤SC709,处理结束。接下来,将解释地址管理服务405的打印作业标识符登记处理。在步骤SD700,地址管理服务405开始在地址管理服务器103上的处理。在步骤SD701,地址管理服务405接收在步骤SC708从作业管理服务403发送的⑶ID和用户名。当建立了与作业管理服务403 的连接时,地址管理服务405获取打印服务器101的IP地址(步骤SD7(^)。在步骤SD703, 地址管理服务405将在步骤SD701接收的⑶ID和用户名以及在步骤SD702获取的IP地址登记为图4的地址管理DB406中的新记录。在步骤SD704,处理结束。
[第二控制处理]图8A和8B是例示根据本发明的打印系统中的第二控制处理序列的流程图。该序列对应于图4所示的从2-1到2-6的处理序列。在图8A和8B所示的流程图中,实线箭头表示处理的序列,而虚线箭头表示设备之间的数据发送/接收。步骤SE800到SE813对应于图4所示的面板应用程序407执行的打印作业列表显示处理。通过由图1中所示的多功能外围设备102的CPU将存储在外部存储器中的程序加载到RAM中并执行该程序,来实现这些流程图处理。步骤SD800到SD807对应于图4所示的地址管理服务405执行的地址解析处理。 通过由图1中所示的地址管理服务器103的CPU将存储在外部存储器中的程序加载到RAM 中并执行该程序,来实现这些流程图处理。步骤SC800到SC810对应于图4所示的作业管理服务403执行的打印作业列表生成处理。通过由图1中所示的打印服务器101的CPU将存储在外部存储器中的程序加载到 RAM中并执行该程序,来实现这些流程图处理。首先,将解释面板应用程序407的打印作业列表显示处理。在步骤SE800,开始面板应用程序407的处理。在步骤SE801,面板应用程序407进行控制,以在操作单元308上显示登录显示窗口(图15A)。在步骤SE802,面板应用程序407基于IC卡等执行用户认证。在本实施方式中,用户认证不是重要的处理,因此,将省略对认证卡检测方法、IC卡识别ID获取方法以及认证服务器的认证处理的详细描述。在步骤SE803,面板应用程序407确定认证结果。如果在步骤SE803中认证结果指示认证错误,则面板应用程序407在步骤SE804中进行控制,以在操作单元308的显示单元上显示错误显示窗口(图15B)。如果面板应用程序407在错误显示窗口上接收到对“确认”按钮的按压,则它返回到步骤SE801,并进行控制以再次显示登录显示窗口。如果面板显示应用程序407在步骤SE803确定认证成功,则处理进行到步骤SE805。在步骤SE805, 面板应用程序407获取已被成功认证的用户的名称。在步骤SE806,面板应用程序407将用户名发送给地址管理服务405。在步骤SE807,面板应用程序407从地址管理服务405接收打印服务器101的IP地址列表。更具体地说,面板应用程序407请求地址管理服务405基于用户名缩窄目标打印作业,并发回保存打印作业的作业管理服务的IP地址。接下来的步骤SE808到SE811是从IP地址列表列出IP地址的循环处理。在步骤 SE808,面板应用程序407从IP地址列表提取IP地址。在步骤SE809,面板应用程序407确定是否已提取了 IP地址。如果已提取了 IP地址,则处理进行到步骤SE810,并且面板应用程序407将打印作业列表请求命令发送给作业管理服务403。此时,还发送了用户名。在步骤SE811,面板应用程序407从作业管理服务403接收打印作业列表。打印作业列表包括图5A和5B中“2-6”行、“发送数据”列上的⑶ID、作业名、份数、单/双面(duplexing)、色彩模式、每张纸的页面数以及日期&时间。更具体地说,打印作业列表表示为如图14A和14B所示的XML格式的打印作业列表信息。JobList元素按照作业个数保存JobInfo子元素。JoWnfo元素的Guid属性与参照图13A描述的Guid相同。 JobInfo元素的JobName属性与参照图13A描述的JobName相同。然而,Documentkttings 元素保存的各种属性与图13A中保存的大大不同。份数属性指定复制份数。单/双面属性指定使用单面打印和双面打印中的哪一种。更具体地说,描述“单面”指定单面打印。描述“双面长边”指定双面(长边装订)。描述“双面短边”指定双面(短边装订)。输出色彩属性指定关于色彩的输出方法。描述“彩色”指定彩色。描述“单色”指定单色。“每张纸页面数”属性指定可以选择在纸张的一面上打印的页面数。“日期时间”属性指定作业输入时间。在面板应用程序407结束了在步骤SE808到SE811从IP地址列表中提取IP地址之后,处理进行到步骤SE812。在步骤SE812,面板应用程序407进行控制,以在操作单元 308的显示单元上显示打印作业列表显示窗口(图15C)。在步骤SE813,处理结束。接下来,将解释地址管理服务405的地址解析处理。在步骤SD800,开始地址管理服务405的处理。在步骤SD801,地址管理服务405接收在步骤SE806从面板应用程序407 发送的用户名。在步骤SD802,地址管理服务405在图4中的地址管理DB 406中搜索与在步骤SD801接收的用户名匹配的记录。在步骤SD803,地址管理服务405从检测到的记录中提取一个记录。在步骤SD804,地址管理服务405确定是否已提取了记录。如果已提取了记录,则处理进行到步骤SD805,并且地址管理服务405从该记录提取作业管理服务403在其中运行的打印服务器101的IP地址。在结束了在步骤SD803到SD805从所有检测到记录中提取IP地址之后,处理进行到步骤SD806,并且地址管理服务405将IP地址列表发回到面板应用程序407。在步骤SD807,处理结束。下面将解释作业管理服务403的打印作业列表生成处理。在步骤SC800,开始作业管理服务403的处理。在步骤SC801,作业管理服务403接收在步骤SE810从面板应用程序 407发送的打印作业列表请求。此时,作业管理服务403也接收用户名。在步骤SC802,作业管理服务403在图4中的作业管理DB 406中搜索与在步骤SC801接收的用户名匹配的记录。在步骤SC803,作业管理服务403从检测到的记录中提取一个记录。在步骤SC804,作业管理服务403确定是否已提取了记录。如果已提取了记录,则处理进行到步骤SC805,并且作业管理服务403从该记录中提取⑶ID、作业名、DEVM0DE、虚拟打印机驱动程序的逻辑打印机名、用户令牌以及日期&时间。在步骤SC806,作业管理服务403使用在步骤SC805提取的用户令牌来“伪装”它的线程。尽管线程被伪装,它是在使用图4中的客户端应用程序400进行打印的用户的安全上下文中执行的。即,“伪装”指示使用用户的安全上下文以用户身份执行线程。“线程”指示在打印设置信息改变时生成的线程。在步骤SC807,作业管理服务403从在步骤SC805提取的DEVM0DE中提取多条信息,如色彩模式、单/双面、每张纸页面数以及份数。DEVM0DE是由打印机驱动程序管理的打印机驱动程序特有数据格式。为了从DEVM0DE提取信息项,需要对已生成DEVM0DE的打印机驱动程序进行查询。因为在步骤SC807已获取了虚拟打印机驱动程序的逻辑打印机名, 所以使用逻辑打印机从DEVM0DE提取信息项。通常,经由设置在打印机驱动程序中以操作DEVM0DE的原始扩展接口来从 DEVM0DE提取信息项。近来,有一种使用美国微软公司定义的称为打印票的XML打印设置存储格式的方法。如果打印机驱动程序支持打印票,还可以将DEVM0DE转换为打印票,并从打印票中提取信息项。在步骤SC808,作业管理服务403解除线程的伪装。在结束了在步骤SC803到 SC808从所有检测到的记录中提取打印设置信息项之后,处理进行到步骤SC809,并且作业管理服务403生成打印作业列表(图14A和14B)。作业管理服务403将打印作业列表发送回给面板应用程序407。在步骤SC810,处理结束。[第三控制处理]图9A和9B是例示根据本发明的打印系统中的第三控制处理序列的流程图。该序列对应于图4所示的从3-1到3-3的处理序列。在图9A和9B所示的流程图中,实线箭头表示处理的序列,而虚线箭头表示设备之间的数据发送/接收。步骤SE900到SE913对应于图4中所示的面板应用程序407的打印设置信息改变确认和打印指令处理。通过由图1中所示的多功能外围设备102的CPU将存储在外部存储器中的程序加载到RAM中并执行该程序,来实现这些流程图处理。步骤SC900到SC911对应于图4所示的作业管理服务403执行的打印设置信息改变处理。通过由图1中所示的打印服务器101的CPU将存储在外部存储器中的程序加载到 RAM中并执行该程序,来实现这些流程图处理。首先,解释面板应用程序407的打印设置信息改变确认和打印指令处理。在步骤 SE900中,开始面板应用程序407的处理。在图8B的步骤SE812,面板应用程序407进行控制,以在操作单元308的显示单元上显示打印作业列表显示窗口(图15C)。在步骤SE901中,面板应用程序407从用户接收对打印作业的选择和对打印按钮 1422的按压。在步骤SE902,面板应用程序407进行控制,以在操作单元308的显示单元上显示打印设置信息改变窗口(图16A)。图16A中的设置1431指示对色彩模式的指定,并且允许用户选择单色或彩色。图16A中的设置1432指示对双面/单面的指定,并且允许用户从单面、双面(长边装订)以及双面(短边装订)中选择一种拼版(imposition)。图16A 中的设置1433指示对每张纸页面数的指定,并且允许用户选择1合1、2合1、4合1、6合1、 8合1、9合1以及16合1中的一种。图16A中的设置1434指示对份数的指定,并且允许用户指定1到9999中的值。图16A例示了在接收到对文件名为图15C中的“账户说明”的打印作业的选择和对打印按钮1422的按压时打印设置信息的改变。在步骤SE903,面板应用程序407从用户接收到打印设置信息的改变。假定用户在图16A的设置1432处已将单面/双面指定从单面改变为双面(长边装订)。在步骤SE904, 面板应用程序407确定是否已经改变了打印设置信息。如果尚未改变打印设置信息,则处理跳过随后的打印设置信息改变确认处理,并进行到步骤SE911。如果已经改变了打印设置信息,则处理进行到步骤SE905。在步骤SE905,面板应用程序407将打印设置信息发送给作业管理服务403。打印设置信息包括在图5B的“3-1”行、“发送数据”列的⑶ID、份数、单 /双面、色彩模式、每张纸页面数以及多功能外围设备的型号名。更具体地说,打印设置信息表示为如图1 所示的XML格式。JoWnfo元素的Guid 属性与参照图13A描述的Guid相同。JoWnfo元素的DeviceModelName描述图1中的多功能外围设备102的型号名。DocumentSettings元素保存的各种属性与参照图14A和14B描述的属性相同。然而,在步骤SE903中已将单面改变为双面(长边装订),因此,双面属性变为“双面长边”。在步骤SE906,面板应用程序407从作业管理服务403接收打印设置信息, 该打印设置信息反映打印设置信息改变指令。打印设置信息包括在图5B的“3-3”行、“发送数据”列的⑶ID、份数、单/双面、色彩模式以及每张纸页面数。更具体地说,打印设置信息表示为如图13C所示的XML格式。这些内容与图13B中的基本相同,从而不再重复对它的说明。在步骤SE907,面板应用程序407将在步骤SE905发送的打印设置信息与在步骤 SE906接收的打印设置信息进行比较。如上所述,在步骤SE905中发送的打印设置信息中的单/双面属性指定“双面长边”。然而,假定在步骤SE906中接收的打印设置信息中的单 /双面属性是“单面”。原则上,这种在发送的设置与接收的设置之间的不匹配很可能出现。在步骤SE903中未改变的设置信息例如是纸张大小。假定纸张大小在图4的1_1 中是“明信片”。作为打印设置信息禁止条件,假定双面/单面指定允许针对纸张“明信片” 仅选择单面。此外,应用禁止条件的优先顺序对于纸张大小指定比对于双面/单面指定高。 因此,单/双面属性必须始终是“单面”。如果在面板应用程序407中实现了与打印机驱动程序相同的高级禁止处理,则在图16A中的设置改变输入中可以禁止单/双面指定的改变。 然而,这使面板应用程序的实现大大复杂化了。因此,像本实施方式一样,每当打印设置信息改变时向打印机驱动程序查询是否可能改变,而不用执行面板应用程序407的打印设置信息禁止处理是容易且通用的。如果作为比较的结果,在步骤SE905发送的打印设置信息和在步骤SE906接收的打印设置信息是相同的,则处理进行到步骤SE911。如果它们不同,则处理进行到步骤 SE908,并且面板应用程序407进行控制,以在操作单元308的显示单元上显示错误显示窗口(图16B)。因为在步骤SE906接收的打印设置信息的单/双面属性是“单面”,所以在图 16B中的错误显示表示从“单面”到“双面(长边装订)”的改变已经失败。在步骤SE909, 面板应用程序407接收打印继续指令的输入。在步骤SE910,面板应用程序407接收“确定” 按钮1442的按压,并且处理进行到步骤SE911。稍后描述步骤SE911中的打印指令处理。 此后,处理进行到步骤SE912。如果面板应用程序407经由图16B中的错误显示窗口接收到对“取消”按钮1441的按压,则处理进行到步骤SE912,并且面板应用程序407关闭图16B 中的错误显示窗口和图16A中的打印设置信息改变窗口。在步骤SE913,处理结束。接下来,将解释作业管理服务403的打印设置信息改变处理。在步骤SC900,开始作业管理服务403的处理。在步骤SC901,作业管理服务403接收在步骤SE905从面板应用程序407发送的如图1 所示的XML格式的打印设置信息。在步骤SC902,作业管理服务 403创建逻辑打印机以改变打印设置信息。稍后参照图10描述该处理的详情。在步骤SC903,作业管理服务403在图4中的作业管理DB 404中搜索与在步骤 SC901接收的⑶ID匹配的记录。在步骤SC904,作业管理服务403从检测到的记录中获取 DEVM0DE和用户令牌。在步骤SC905,作业管理服务403使用在步骤SC904获取的用户令牌来“伪装”它的线程。尽管线程被伪装,它是在使用图4中的客户端应用程序400进行打印的用户的安全上下文中执行的。在步骤SC906,作业管理服务403将在步骤SC901接收的打印设置信息项应用于在步骤SC904获取的DEVMODE。DEVM0DE是由打印机驱动程序管理的打印机驱动程序特有数据格式。为了将信息项应用于DEVM0DE,请求已生成DEVMODE的打印机驱动程序来更新DEVMODE。在图9A的步骤SC902中已生成了逻辑打印机,并且该逻辑打印机可以用来将信息项应用于DEVMODE。通常,经由设置在打印机驱动程序中以操作DEVMODE的原始扩展接口来将信息项应用于DEVMODE。近来,有一种使用美国微软公司定义的称为打印票的XML打印设置存储格式的方法。如果打印机驱动程序支持打印票,则还可以将DEVMODE转换为打印票,将信息项应用于打印票,并将打印票转换为DEVM0DE。在步骤SC907中,作业管理服务403使用在步骤SC906中改变的DEVM0DE来更新在作业管理DB 404中保存的DEVM0DE。在步骤SC908,作业管理服务403从在步骤SC906 更新的DEVM0DE中提取多条信息,如色彩模式、单/双面、每张纸页面数以及份数。信息项的提取与在图8A的步骤SC807中的相同。在步骤SC909,作业管理服务403解除线程的伪装。在步骤SC910,作业管理服务403将已改变为图13C所示的XML格式的打印设置信息发送回面板应用程序407。在步骤SC911,处理结束。[逻辑打印机创建处理]图10是示出在图9A的步骤SC902中调用的逻辑打印机创建处理的流程图。在步骤SC 1000,开始作业管理服务403的处理。在步骤SC1001,作业管理服务403获取图1的多功能外围设备102的IP地址。当建立了与面板应用程序407的数据发送/接收连接时, 获取多功能外围设备102的IP地址。在步骤SC1002,作业管理服务403确定在打印服务器 101中是否已安装了支持图1中的多功能外围设备102的型号名的打印机驱动程序。如果尚未安装这种打印机驱动程序,则处理进行到步骤SC1003,并且作业管理服务403在打印服务器101中安装支持图1中的多功能外围设备102的型号名的打印机驱动程序。结果, 打印作业可以转换为可由具有该型号名的多功能外围设备输出的格式。处理随后进行到步骤SC1004。如果作业管理服务403在步骤SC1002确定已安装了这种打印机驱动程序,则处理进行到步骤SC1004。在此阶段,安装的打印机驱动程序是图4中的打印机驱动程序408。在步骤SC1004,作业管理服务403确定在打印服务器101中是否存在由所安装的打印机驱动程序构成且具有在步骤SC1001获取的IP地址作为输出端口的逻辑打印机。如果不存在这种逻辑打印机,则处理进行到步骤SC1005。在步骤SC1005,作业管理服务403 通过使用所安装的打印机驱动程序,创建具有在步骤SC1001获取的IP地址作为输出端口的逻辑打印机。处理随后进行到步骤SC1006。如果作业管理服务403在步骤SC1004确定存在这种逻辑打印机,则处理进行到步骤SC1006。在步骤SC1006,处理结束。[第四控制处理]图11是例示根据本发明的打印系统中的第四控制处理序列的流程图,也是示出在图9B的步骤SE911中调用的打印指令处理的流程图。该序列对应于图4所示的从4-1 到4-4的处理序列。在图11所示的流程图中,实线箭头表示处理的序列,虚线箭头表示设备之间的数据发送/接收。步骤SEl 100到SEl 107对应于图4所示的面板应用程序407执行的打印指令处理。 通过由图1中所示的多功能外围设备102的CPU将存储在外部存储器中的程序加载到RAM 中并执行该程序,来实现这些流程图处理。步骤SCllOO到SC1109对应于图4所示的作业管理服务403执行的打印处理。通过由图1中所示的打印服务器101的CPU将存储在外部存储器中的程序加载到RAM中并执行该程序,来实现这些流程图处理。首先,将解释面板应用程序407的打印指令处理。在步骤SE1100,开始面板应用程序407的处理。在步骤SE1101,面板应用程序向作业管理服务403发送打印指令请求命令、所选择的打印作业的GUID以及多功能外围设备102的型号名。在步骤SE1102,面板应用程序407从作业管理服务403接收打印执行结果(成功/失败)。在步骤SE1103,面板应用程序407确定打印的执行是否成功。如果打印的执行失败,则处理进行到步骤SE1104, 并且面板应用程序407进行控制,以在操作单元308的显示单元上显示错误显示窗口(图 16C)。处理随后进行到步骤SC1107。如果面板应用程序407在步骤SE1103确定打印的执行成功,则处理进行到步骤SE1105。在步骤SEl 105,面板应用程序407确定是否选中了图16A中的打印文档清除复选框1435。如果指定了在打印后删除,则处理进行到步骤SE1106,并且面板应用程序407删除打印作业。稍后参照图12描述该处理的详情。处理随后进行到步骤SE1107。在步骤 SE1107,处理结束。接下来,将解释作业管理服务403的打印处理。在步骤SC1100,开始作业管理服务403的处理。在步骤SCl 101,作业管理服务403接收在步骤SEllOl从面板应用程序407 发送的打印指令命令。此时,作业管理服务403还接收目标打印作业的⑶ID和多功能外围设备102的型号名。在步骤SC1102,作业管理服务403创建逻辑打印机以改变打印的执行。处理内容与图9A的步骤SC902中的相同。已参照图10描述了该处理的详情。在步骤SCl 103,作业管理服务403在图4中的作业管理DB 404中搜索与在步骤SCllOl接收的 ⑶ID匹配的记录。在步骤SC1104,作业管理服务403从检测到的记录中获取EMFSP00L文件名、DEVM0DE和用户令牌。注意,这里获取的DEVM0DE是使用图16A中的窗口设置的打印设置信息。在步骤SC1105,作业管理服务403使用在步骤SC1104获取的用户令牌来“伪装” 它的线程。尽管线程被伪装,它是在使用图4中的客户端应用程序400进行打印的用户的安全上下文中执行的。在步骤SC1106,作业管理服务403针对在步骤SC1102创建的逻辑打印机绘制在步骤SC1104获取的EMFSP00L和DEVM0DE,并且执行打印处理。在作业管理服务403中,形成逻辑打印机的打印机驱动程序生成PDL,并将该PDL发送给多功能外围设备102。在步骤SC1107,作业管理服务403解除线程的伪装。在步骤SC1108,作业管理服务403将打印执行结果(成功/失败)发送回给面板应用程序407。在步骤SC1109,处理结束。[第五控制处理]图12是例示根据本发明的打印系统中的第五控制处理序列的流程图。该序列对应于图4所示的从5-1到5-4的处理序列。在图12所示的流程图中,实线箭头表示处理的序列,虚线箭头表示设备之间的数据发送/接收。步骤SE1200到SE1203对应于图4所示的面板应用程序407执行的打印作业删除指令处理。通过由图1中所示的多功能外围设备102的CPU将存储在外部存储器中的程序加载到RAM中并执行该程序,来实现这些流程图处理。步骤SC1200到SC1207对应于图4所示的作业管理服务403执行的打印作业删除处理。通过由图1中所示的打印服务器101的CPU将存储在外部存储器中的程序加载到 RAM中并执行该程序,来实现这些流程图处理。步骤SD1200到SD1204对应于图4所示的地址管理服务405执行的打印作业标识符登记解除处理。通过由图1中所示的地址管理服务器103的CPU将存储在外部存储器中的程序加载到RAM中并执行该程序,来实现这些流程图处理。首先,将解释面板应用程序407的打印作业删除指令处理。在步骤SE1200中,开始面板应用程序407的处理。如上所述,在图11的步骤SE1106调用了步骤SE1200。在从用户接收到对图15C中的清除按钮1421的按压时,也调用了该步骤。在步骤SE1201,面板应用程序407获取要删除的打印作业的GUID。在步骤SE1202,面板应用程序407将打印作业删除指令命令发送给作业管理服务403。此时,面板应用程序407还发送在步骤SE1201 获取的⑶ID。在步骤SE1203,处理结束。接下来,将解释作业管理服务403的打印作业删除处理。在步骤SC1200,开始作业管理服务403的处理。在步骤SC1201,作业管理服务403接收在步骤SE1202从面板应用程序407发送的打印作业删除指令命令。此时,作业管理服务403还接收要删除的打印作业的⑶ID。在步骤SC1202,作业管理服务403向地址管理服务405发送打印作业标识符登记解除命令。此时,作业管理服务403还发送在步骤SC1201获取的⑶ID。在步骤SC 1203,作业管理服务403在图4中的作业管理DB 404中搜索与在步骤 SC1201接收的⑶ID匹配的记录。在步骤SC1204,作业管理服务403从检测到的记录中获取 EMFSP00L文件名。在步骤SC1205,作业管理服务403基于所获取的文件名删除EMFSP00L文件。在步骤SC1206,作业管理服务403从图4中的作业管理DB 404中删除在步骤SC1203 检测到的记录。在步骤SC1207,处理结束。下面将解释地址管理服务405的打印作业标识符登记解除处理。在步骤SD1200, 开始地址管理服务405的处理。在步骤SD1201,地址管理服务405接收在步骤SC1202已从作业管理服务403发送的打印作业标识符登记解除命令和用作目标打印作业标识符的 ⑶ID。在步骤SD1202,地址管理服务405在图4中的地址管理DB 406中搜索与在步骤 SD1201接收的⑶ID匹配的记录。在步骤SD1203,地址管理服务405从图4中的作业管理 DB 404中删除在步骤SD1202检测到的记录。在步骤SD1204,处理结束。[第六控制处理]在图9B的步骤SE902,在操作单元308的显示单元上显示打印设置改变窗口(图 16A)。下面描述当在用户做出的打印设置中出现错误时的控制处理。用户做出的打印设置是在图4中所示的虚拟打印机驱动程序401从用户接收到打印指令时他使用虚拟打印机驱动程序401提供的UI所做出的打印设置。用户经由客户端 PC 100指定打印,走到实际输出数据的多功能外围设备102跟前,并操作附接到多功能外围设备102的面板。随后,用户指定打印数据并输出该打印数据。此时,如果用户将不被实际输出数据的设备(多功能外围设备102)支持的功能指定为打印设置,则打印设置将变得矛盾。例如,当输出设备支持的纸张类型是“普通纸”和“彩色纸”且用户指定“回收纸” 作为打印设置时,不用这种纸张类型进行打印,打印设置变得矛盾。所生成的矛盾称为错误。下面将解释解决该错误的控制处理。首先,在从多功能外围设备102的面板应用程序407接收到打印指令时,打印服务器101的作业管理服务403从指定的元数据和打印作业提取打印设置。作业管理服务403 将打印设置传输给对应于输出设备的打印机驱动程序408。打印机驱动程序408接收该打印设置,并且如果在接收到的打印设置中存在矛盾打印项,则创建包含该项和针对该项的可打印设置值列表的打印错误数据。打印机驱动程序408调用所创建的打印错误数据,并将其发送回作业管理服务403。
注意,打印机驱动程序可以不与实际输出数据的设备的设备选项同步。因此,打印机驱动程序可以与设备通信,获取最新的设备选项信息,随后创建打印错误数据。当打印机驱动程序408不支持该处理时,作业管理服务403可以利用诸如Windows API的通用I/F 来创建打印错误数据。图17例示了详细的打印错误数据。然而,图17不限制打印错误数据描述方法。描述具有错误的打印项、设置值以及用于避免错误的选择列表就够了。作业管理服务403从打印机驱动程序408接收如图17所示的打印错误数据,随后将该打印错误数据发送给面板应用程序407。面板应用程序407在创建打印设置改变窗口 (图16A)时添加所接收的打印错误数据,并进行控制以在多功能外围设备102的操作单元 308上显示该打印错误数据。图18例示了在操作单元308上显示的添加了打印错误数据的打印设置改变窗口。 图18中的消息1801是向用户通知在用户事先做出的打印设置中存在具有错误的打印项的错误消息。图18中的设置1802显示实际具有错误的打印项(“纸张类型”)、不可打印设置值(“回收纸张”)以及能够避免该错误的设置值列表(“普通纸”)。设置1802处呈现的“普通纸”列允许用户选择设置值。在图17所示的打印错误数据示例中,用户可以选择 “普通纸”、“彩色纸”以及“未指定”这三个值中的一个。设置值“未指定”指示使打印设置的设置值(回收纸)无效。在[第三控制处理]中已经描述了显示图18所示的打印设置改变窗口的构建元素1431到1437的方法和控制处理,因此不再重复其描述。注意,图18的窗口布局仅是示例,而不限于该布局、显示形式等。根据本发明,当用户从打印设备针对临时存储在服务器中的打印数据发出打印请求时,他可以指定打印设置信息的改变。在打印设备上运行且指定打印设置信息改变的程序不是请求客户端PC,而是请求服务器中的适合于打印设备的打印机驱动程序,来改变打印设置信息。可以适当地改变打印设置信息。本发明的各个方面也可以通过读出并执行在存储器装置上记录的程序以执行上述实施方式的功能的系统或设备(或诸如CPU或MPU的装置)的计算机来实现,和通过一种方法来实现,该方法的步骤由系统或设备的计算机通过例如读出并执行在存储器装置上记录的程序以执行上述实施方式的功能来执行。为此,例如经由网络或者从用作存储器装置的各种类型的记录介质(例如,计算机可读介质)向计算机提供程序。尽管已参照示例性实施方式描述了本发明,但是应当理解,本发明不限于所公开的示例实施方式。所附权利要求的范围应被最宽泛地解释以涵盖所有这种变形例和等同结构和功能。
权利要求
1.一种打印系统,该打印系统包括信息处理设备、打印服务器以及打印设备,该信息处理设备包括生成中间格式的打印作业的虚拟打印机驱动程序,该打印服务器管理所述打印作业,所述打印服务器包括存储单元,其被配置为存储从所述信息处理设备接收的所述中间格式的打印作业; 设置改变接收单元,其被配置为从所述打印设备接收针对所述存储单元中存储的所述中间格式的打印作业的打印设置信息改变指令;更新单元,其被配置为根据所述打印设置信息改变指令来更新所述打印作业的打印设直fe息;打印请求接收单元,其被配置为从所述打印设备接收打印请求;以及作业发送单元,其被配置为根据所述打印请求,基于所述中间格式的打印作业和所述更新单元更新的打印设置信息来生成所述打印设备可打印的格式的打印作业,并将所生成的打印作业发送给所述打印设备, 所述打印设备包括 选择单元,其被配置为选择打印作业;设置改变发送单元,其被配置为发送针对由所述选择单元选择的打印作业的打印设置信息改变指令;打印请求发送单元,其被配置为向所述打印服务器发送针对所述打印作业的打印请求;以及打印单元,其被配置为打印由所述作业发送单元发送的打印作业。
2.根据权利要求1所述的打印系统,其中,所述打印服务器的所述更新单元利用从所述信息处理设备接收的用户令牌来改变设置。
3.根据权利要求1所述的打印系统,其中,所述打印设置信息改变指令包括份数、拼版、色彩模式以及每张纸页面数中的至少一者的改变。
4.根据权利要求1所述的打印系统,其中,当根据所述打印请求要将所述打印作业转换为预定打印设备可输出的格式,并且没有安装与所述预定打印设备对应且能够将所述打印作业转换为所述可输出的格式的打印机驱动程序时,所述打印服务器的所述作业发送单元重新安装与所述预定打印设备对应的打印机驱动程序。
5.一种打印系统中的打印方法,该打印系统包括信息处理设备、打印服务器以及打印设备,该信息处理设备包括生成中间格式的打印作业的虚拟打印机驱动程序,该打印服务器管理所述打印作业,所述打印方法包括在该打印服务器中执行的以下步骤存储步骤,将从所述信息处理设备接收的所述中间格式的打印作业存储在存储单元中;设置改变接收步骤,从所述打印设备接收针对所述存储单元中存储的所述中间格式的打印作业的打印设置信息改变指令;更新步骤,根据所述打印设置信息改变指令来更新所述打印作业的打印设置信息; 打印请求接收步骤,从所述打印设备接收打印请求;以及作业发送步骤,根据所述打印请求,基于所述中间格式的打印作业和在所述更新步骤中更新的打印设置信息来生成所述打印设备可打印的格式的打印作业,并将所生成的打印作业发送给所述打印设备,并且,所述打印方法包括在所述打印设备中执行的以下步骤 选择步骤,选择打印作业;设置改变发送步骤,发送针对在所述选择步骤中选择的打印作业的打印设置信息改变指令;打印请求发送步骤,向所述打印服务器发送针对所述打印作业的打印请求;以及打印步骤,打印在所述作业发送步骤中发送的打印作业。
6.一种打印服务器,该打印服务器与信息处理设备和打印设备通信,该信息处理设备包括生成中间格式的打印作业的虚拟打印机驱动程序,该打印服务器包括存储单元,其被配置为存储从所述信息处理设备接收的所述中间格式的打印作业; 设置改变接收单元,其被配置为从所述打印设备接收针对所述存储单元中存储的所述中间格式的打印作业的打印设置信息改变指令;更新单元,其被配置为根据所述打印设置信息改变指令来更新所述打印作业的打印设直fe息;打印请求接收单元,其被配置为从所述打印设备接收打印请求;以及作业发送单元,其被配置为根据所述打印请求,基于所述中间格式的打印作业和所述更新单元更新的打印设置信息来生成所述打印设备可打印的格式的打印作业,并将所生成的打印作业发送给所述打印设备。
7.—种打印服务器的控制方法,该打印服务器与信息处理设备和打印设备通信,该信息处理设备包括生成中间格式的打印作业的虚拟打印机驱动程序,该控制方法包括存储步骤,将从所述信息处理设备接收的所述中间格式的打印作业存储在存储单元中;设置改变接收步骤,从所述打印设备接收针对所述存储单元中存储的所述中间格式的打印作业的打印设置信息改变指令;更新步骤,根据所述打印设置信息改变指令来更新所述打印作业的打印设置信息; 打印请求接收步骤,从所述打印设备接收打印请求;以及作业发送步骤,根据所述打印请求,基于所述中间格式的打印作业和在所述更新步骤中更新的打印设置信息来生成所述打印设备可打印的格式的打印作业,并将所生成的打印作业发送给所述打印设备。
全文摘要
本发明提供一种打印系统、打印方法、打印服务器以及控制方法。该打印服务器包括存储单元,其被配置为存储从信息处理设备接收的中间格式的打印作业;设置改变接收单元,其被配置为从打印设备接收针对所述存储单元中存储的所述中间格式的打印作业的打印设置信息改变指令;更新单元,其被配置为根据所述打印设置信息改变指令来更新所述打印作业的打印设置信息;打印请求接收单元,其被配置为从所述打印设备接收打印请求;以及作业发送单元,其被配置为根据所述打印请求,基于所述中间格式的打印作业和更新的打印设置信息来生成所述打印设备可打印的格式的打印作业,并将所生成的打印作业发送给所述打印设备。
文档编号G06F3/12GK102446077SQ20111029839
公开日2012年5月9日 申请日期2011年9月28日 优先权日2010年9月30日
发明者中川雅司, 高木义博 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1