信息处理装置及其控制方法、以及打印系统与流程

文档序号:12176295阅读:298来源:国知局
信息处理装置及其控制方法、以及打印系统与流程

本发明涉及一种信息处理装置及其控制方法、以及打印系统。



背景技术:

为了信息处理装置使用诸如图像形成装置等的外围设备,需要将与外围设备相对应的设备驱动器(例如,针对打印机的情况的打印机驱动器),嵌入到在信息处理装置上进行操作的操作系统(在下文中,被称为OS)中。此外,当使用作为外围设备的打印机装置时,使打印机驱动器从应用启动以进行打印所需的设置,并且生成图像数据和打印设置(在下文中,这些将被统称为打印作业)。然后,将生成的打印作业发送到打印机装置。由此,接收到打印作业的打印机装置根据打印作业的打印设置,执行图像生成处理(在下文中,被称为渲染(rendering)),以将图像打印在片材上。

传统的打印机驱动器包括管理来自用户或应用的输入的用户界面模块、生成打印作业的打印作业生成模块以及控制信息处理装置与打印机装置之间的通信的通信控制模块。在下文中,通信控制模块将被称为语言监视器。

包括这些模块组的打印机驱动器被称为版本3驱动器(在下文中,被称为V3打印机驱动器)。语言监视器接受由打印作业生成模块生成的打印作业,并且经由OS将该打印作业发送到打印机装置。另外,当接收到来自用户或应用的用于取消打印作业等的请求时,语言监视器通过根据请求进行处理来控制打印作业。此外,存在如下的V3驱动器,该V3驱动器配备有使语言监视器扩展的语言监视器,并且不仅能够支持在从打印机驱动器发送打印作业时使用的打印通信的协议,而且还能够支持在从打印机装置接收打印机装置的装置信息时使用的打印通信的协议。通过支持这样的协议的语言监视器,即使在使用具有小存储器容量的打印机装置的情况下,通过打印机驱动器总是确认打印机装置的存储器状态作为信息,也变得能够执行稳定的打印。另外,通过支持这样的协议的语言监视器,对于信息处理装置,能够详细收集打印机装置的状态,并且进行原本已经由打印机装置进行的打印作业的管理和控制。此外,如下的系统被广泛商业化并被使用,在本系统中,对于信息处理装置中的应用,能够向用户显示消息以及所收集的打印机装置的状态,显示打印机装置的设置的输入等。

以这种方式,能够通过在信息处理装置的应用中进行将被常规地显示或输入在打印机装置的面板上的内容,简化打印机装置的操作面板并抑制产品成本。此外,如下的系统已被商业化并被使用,在本系统中,并不是在打印机装置上进行渲染,而是将已经由V3驱动器在信息处理装置上渲染的图像数据发送到打印机装置以使该图像数据打印。这种系统被称为基于主机的打印系统,并且如先前描述的,通过语言监视器的功能,能够在配备有小存储器容量或低规格CPU的打印机装置中,进行等同于正常打印机装置的打印。以这种方式,能够抑制打印机装置的成本。

同时,由微软公司近年来推出的Windows 8(注册商标),与上述构造不同的打印机驱动器构造已经被采用。前述的语言监视器不包括在构造打印机驱动器的模块组中。此外,能够使用的通信端口限于USB(Universal Serial Bus,通用串行总线)端口和WSD(Web Service on Device,设备上的网络服务)端口。这样的打印机驱动器被称为版本4驱动器(在下文中,被称为V4驱动器)。V4驱动器不具有语言监视器,因此由作为标准配备在Windows(注册商标)上的假脱机程序(spooler),来提供向打印机装置发送由打印作业生成模块生成的打印作业的通信处理。另外,由该假脱机程序来执行语言监视器在V3驱动器中进行的处理(例如,响应于取消来自用户或应用的打印作业等的请求)。

以这种方式,语言监视器在V3驱动器中进行的处理,照惯例已变为由假脱机程序在V4驱动器中进行,从而存在如下的情况,即,在V3驱动器中能够进行的控制不再能够进行。例如,考虑如下的情况,其中,当打印机装置和信息处理装置经由USB连接,并且发生打印处理无法在打印机装置上继续的错误时,发出与发生错误的打印作业有关的取消请求。在这种情况下,存在假脱机程序不向与OS有关的打印机装置做出取消打印的指令的情况。针对这样的问题,在例如日本特开2014-134861号公报中记载了如下技术,即,假脱机程序、或作为V4驱动器的要素的命令生成过滤器适当地确定打印机装置的状态,并适当地取消打印作业。

能够应用到前述的基于主机的打印系统的打印机装置在如下的前提下被设计,即,存在配备有支持用于打印通信的协议的语言监视器的V3驱动器。因此,使用用于打印通信的协议,进行从信息处理装置到打印机装置的、与打印作业有关的请求(例如,打印执行请求或取消请求)及操作设置改变请求,以及从打印机装置到信息处理装置的打印机状态信息通知。此外,使用语言监视器进行打印作业的管理。

然而,由于在V4驱动器中存在无法在打印机驱动器中嵌入独立的语言监视器的限制,因此支持用于打印通信的协议的语言监视器无法被嵌入到V4驱动器中。结果是,存在无法使用应用到基于主机的打印系统的打印机装置来利用V4驱动器进行打印的问题。



技术实现要素:

本发明的一个方面是消除传统技术的上述问题。

本发明的特征是提供一种如下的技术,在该技术中,即使是安装了无法嵌入独立的语言监视器的驱动器的信息处理装置,也能够类似于传统V3驱动器控制图像形成装置。

根据本发明的第一方面,提供了一种信息处理装置,其配备有操作系统,并且根据由所述操作系统从应用接受的打印数据而生成打印作业,所述装置包括:设备服务,其被构造为:(i)经由所述信息处理装置的端口连接到打印装置,(ⅱ)接受来自所述操作系统的打印作业,并将所述打印作业发送到所述打印装置,并且(iii)接受来自所述操作系统的所述打印装置的控制命令,并将所述控制命令发送到所述打印装置;以及显示单元,其被构造为,在从所述设备服务接受与所述控制命令有关的来自所述打印装置的响应时,使所述打印装置的状态基于所述响应显示。

根据本发明的第二方面,提供了一种打印系统,其包括信息处理装置和打印装置,其中,所述信息处理装置配备有操作系统,并且根据由所述操作系统从应用接受的打印数据生成打印作业,所述信息处理装置包括:设备服务,其被构造为:(i)接受来自所述操作系统的打印作业,并将所述打印作业发送到所述打印装置,并且(ii)接受来自所述操作系统的所述打印装置的控制命令,并将所述控制命令发送到所述打印装置;以及显示单元,其被构造为,在从所述设备服务接受与所述控制命令有关的来自所述打印装置的响应时,使所述打印装置的状态基于所述响应显示,并且其中,所述打印装置经由所述信息处理装置的端口连接到所述设备服务。

根据本发明的第三方面,提供了一种信息处理装置的控制方法,所述信息处理装置配备有操作系统,并且根据由所述操作系统从应用接受的打印数据而生成打印作业,所述控制方法包括以下步骤:根据由所述操作系统从应用接受的打印数据生成打印作业;执行经由所述信息处理装置的端口连接到打印装置的设备服务,接受来自所述操作系统的打印作业,并将所述打印作业发送到所述打印装置;针对所述设备服务,接受来自所述操作系统的所述打印装置的控制命令,并将所述控制命令发送到所述打印装置;其中,当所述设备服务接收到与所述控制命令有关的来自所述打印装置的响应时,所述设备服务将所述响应发送到所述操作系统,并且使所述打印装置的状态基于所述响应显示。

通过以下参照附图对示例性实施例的描述,本发明的其他特征将变得清楚。

附图说明

并入说明书中并构成说明书的一部分的附图例示了本发明的实施例,并与描述一起用来解释本发明的原理。

图1描绘了例示根据本发明的第一实施例的打印系统的概要构造的图。

图2是用于描述V4驱动器的软件构造的框图。

图3是用于描述根据第一实施例的虚拟设备的服务(virtual device's service)的软件构造的框图。

图4是用于描述根据第一实施例的信息处理装置的硬件构造的框图。

图5描绘了例示根据第一实施例的、信息处理装置的设置应用在显示单元上显示的画面的示例的图。

图6描绘了例示根据第一实施例的、信息处理装置显示的虚拟设备设置改变对话的示例的图。

图7描绘了例示根据第一实施例的、信息处理装置显示的虚拟设备设置对话的示例的图。

图8描绘了例示根据第一实施例的、由信息处理装置的状态窗口显示的状态显示画面的示例的图。

图9描绘了例示根据第一实施例的、信息处理装置显示的作业列表对话的示例的图。

图10是用于描述根据第一实施例的图像形成装置的硬件构造的框图。

图11是用于描述根据第一实施例的由图像形成装置进行的打印处理的流程图。

图12是用于描述根据第一实施例的在信息处理装置中执行的、由V4驱动器进行的打印处理的流程图。

图13A和图13B是用于描述根据第一实施例的由信息处理装置的虚拟设备的服务进行的处理的示例的流程图。

图14是用于描述根据第一实施例的、信息处理装置确定在虚拟设备与图像形成装置之间的连接是否没有问题的处理的流程图。

图15是用于描述根据第一实施例的、信息处理装置确定关于在状态窗口与虚拟设备之间的连接的错误是否被显示的处理的流程图。

图16是用于描述根据第一实施例的、信息处理装置确定在V4驱动器与虚拟设备之间的连接是否没有问题的处理的流程图。

图17描绘了例示根据第一实施例的、当在信息处理装置上发生关于在状态窗口与虚拟设备之间的连接的错误的情况下显示的状态窗口TOP画面的示例的图。

图18描绘了例示根据第一实施例的、当状态窗口和虚拟设备的服务无法在信息处理装置上进行通信的情况下显示的状态窗口TOP画面的示例的图。

图19描绘了例示根据本发明的第二实施例的打印系统的概要构造的图。

具体实施方式

在下文中,将参照附图详细描述本发明的实施例。应当理解的是,以下实施例并不意图限制本发明的权利要求,并且并非根据以下实施例描述的方面的所有组合都是针对解决根据本发明的问题的手段所必需的。

[第一实施例]

首先,将给出用于根据本发明的第一实施例的说明。

图1描绘了例示根据本发明的第一实施例的打印系统的概要构造的图。在图中,粗实线箭头符号表示打印作业的交换,而细虚线箭头符号表示除打印作业之外的数据的交换。

应用102在信息处理装置101中实现,并且是根据用户意图而使用的软件,并且用户能够使用应用102来指示打印。V4驱动器103在信息处理装置101中实现,并且当V4驱动器103从应用102接受用于打印的指令命令时,据此创建打印作业。Windows标准假脱机程序104是用于在信息处理装置101上安装的OS(在第一实施例中是Microsoft Windows(注册商标))内进行打印的假脱机程序。Windows标准假脱机程序104暂时后台处理接收到的打印作业,并且将这些打印作业按被接收的顺序逐个输出。Windows标准假脱机程序104通过网络将打印作业发送到虚拟设备的服务106。在第一实施例中,Windows标准假脱机程序104通过使用发送数据的回送(loopback)的通信,将打印作业发送到自身。在本系统中,Windows标准假脱机程序104也将作业发送到虚拟设备的服务106。

状态窗口105是使得能够显示图像形成装置107和108的状态以及进行特定设置等的软件。状态窗口105保持RPC(Remote Procedure Call,远程过程调用)客户端功能,这用来与虚拟设备的服务106进行通信。状态窗口105对虚拟设备的服务106做出命令以获得状态信息,并且显示基于接受的状态信息的状态作为应答。状态窗口105具有型号信息,并且在第一实施例中,假设型号信息是产品名称。虚拟设备的服务106是表现为如同用于V4驱动器103、Windows标准假脱机程序104以及状态窗口105的物理图像形成装置的仿真器软件。与虚拟设备的服务106的通信使用Windows上的网络功能。

图像形成装置107和108基于所接收到的打印作业进行图像形成。图像形成装置107和108具有型号信息,并且在第一实施例中,该型号信息是产品名称。设置应用109是进行后述的虚拟设备300和301(图3)的管理和设置的软件。

图2是用于描述V4驱动器103的软件构造的框图。

在传统的V3驱动器中,经由OS提供的应用接口(API)从应用102调用OS(包括驱动器),并且被称为Devmode的二值数据被用作用于打印设置的数据。

使用OS提供的API的应用102调用GDI(Graphic Device Interface,图形设备接口)以进行渲染。V4驱动器103的UI是在作为标准配备有OS的UI(在下文中,被称为OS标准UI)中的显示。由于使用类似于V3驱动器的UI,因此有必要为OS提供的V4驱动器安装扩展UI软件201(在下文中,被称为扩展UI软件)。

在当用户执行应用102以进行打印的情况下,如果安装了扩展UI软件201,则显示扩展UI软件201的UI,而如果不是这种情况,则显示OS标准UI。在第一实施例中,虽然扩展UI软件201被描述为被安装,但是也可以不安装扩展UI软件201。

打印设置管理器202管理在扩展UI软件201和OS标准UI上显示的打印设置项目,并且管理无法被同时设置的打印设置项目的组合(在下文中,被称为冲突)。可能的情况是,显示的打印设置项目或冲突将根据图像形成装置107和108支持的能力和功能而针对各个图像形成装置(各型号)改变。V4驱动器中的打印设置被以如下的新打印设置格式进行管理,该打印设置格式是基于XML,代替基于在V3驱动器中的DEVMODE结构的打印设置而出现,并且被称为PrintTicket。

设备信息获得模块203获得用于在打印作业生成器204中生成打印作业所必需的图像形成装置的信息。在第一实施例中,通过虚拟设备的服务106获得图像形成装置107和108的信息。设备信息获得模块203具有RPC客户端功能,并且通过与虚拟设备的服务106具有的RPC服务器311和321(图3)进行通信,分别获得图像形成装置107和108的信息。

打印作业生成器204根据从应用102发送的打印设置和从设备信息获得模块203获得的图像形成装置的信息等,进行渲染以生成打印作业。打印作业生成器204具有型号信息,并且在生成打印作业时,将型号信息嵌入在打印作业中。在第一实施例中,型号信息是产品名称。另外,打印作业生成器204接受的数据是XPS(XML Paper Specification,XML纸张规格)。当使用Win32API的应用102调用GDI时,数据被自动转换成OS内的XPS,然后XPS驱动器(第一实施例中的V4驱动器103)被调用。在当从WPF(Windows Presentation Foundation,Windows呈现基础)应用进行打印的情况下,XPS驱动器被按原样调用。

PDL转换器205转换成与要将打印作业发送到的图像形成装置相对应的PDL(Page Description Language,页面描述语言)。设备接口模块206将打印作业发送到Windows标准假脱机程序104。

图3是用于描述根据第一实施例的虚拟设备的服务106的软件构造的框图。

虚拟设备的服务106保持至少一个虚拟设备,并且这些虚拟设备各自连接到单个图像形成装置。在第一实施例中,虚拟设备的服务106具有两个虚拟设备300和301,并且虚拟设备300和虚拟设备301分别连接到图像形成装置107和图像形成装置108。

虚拟设备的服务106具有用于从外部单元接受虚拟设备的登记和删除的功能。此外,虚拟设备的服务106需要指定当由安装程序(未示出)登记虚拟设备时、信息处理装置101具有的接收端口号(在下文中,被称为接收端口号)。另外,虚拟设备的服务106将指定的接收端口号与虚拟设备链接以对其进行管理。另外,虚拟设备的服务106具有用于执行登记的虚拟设备的功能。当执行虚拟设备的服务106时,或当新登记虚拟设备时,进行虚拟设备的执行。

虚拟设备300具有接收模块310、RPC服务器311、虚拟设备假脱机程序312、虚拟设备语言监视器313以及端口监视器314。另外,虚拟设备300具有型号信息,并且在第一实施例中,型号信息是产品名称,并且虚拟设备300内的虚拟设备假脱机程序312保持该型号信息。接收模块310向虚拟设备假脱机程序312传送经由链接到虚拟设备300的端口号而从Windows标准假脱机程序104接受的打印作业。RPC服务器311通过RPC通信,调解虚拟设备假脱机程序312与具有RPC客户端功能(例如,状态窗口105、设备信息获得模块203等)的外部模块之间的通信。

虚拟设备假脱机程序312保持存储从接收模块310接收到的打印作业的队列,并且进行打印作业的管理和到虚拟设备语言监视器313的发送。另外,虚拟设备假脱机程序312提供与所管理的打印作业相关的打印作业信息的获得、打印作业的删除等各种访问功能。由虚拟设备语言监视器313和设置应用109使用访问功能。另外,虚拟设备假脱机程序312进行各种命令的接收,并经由RPC服务器311对命令进行应答。另外,虚拟设备假脱机程序312进行到虚拟设备语言监视器313的各种命令的发送以及对命令的应答的接受。在第一实施例中,虚拟设备假脱机程序312保持产品名称作为属于自身的虚拟设备300的型号信息。

虚拟设备语言监视器313是如下的模块,该模块进行各种信息的管理和打印作业的控制,并且经由端口监视器314将从虚拟设备假脱机程序312接收到的打印作业发送到图像形成装置107。另外,虚拟设备语言监视器313经由端口监视器314,进行到图像形成装置107的各种命令的发送以及从图像形成装置107的信息的获得。在第一实施例中,虚拟设备语言监视器313获得图像形成装置107的打印状态、各种状态和设置信息、错误信息等。另外,当图像形成装置107被连接时,虚拟设备语言监视器313获得其产品名称。另外,虚拟设备语言监视器313基于从图像形成装置107获得的信息和其自身保持的信息,进行图像形成装置107的状态的确定。然后,如果确定了错误状态,则进行错误处理(例如,停止打印处理)。此外,虚拟设备语言监视器313进行来自虚拟设备假脱机程序312的各种命令的接收,并且对这些命令进行应答。例如,如果经由虚拟设备假脱机程序312从状态窗口105接受用于获得状态信息的命令,则应答基于前述的状态确定的型号信息和状态信息。端口监视器314进行虚拟设备语言监视器313与连接到图像形成装置107的信息处理装置101的端口之间的通信的调解。存在如下的情况,即,图像形成装置107能够运用的通信针对每个型号不同,并且进行专用于各个图像形成装置107的通信处理。

虚拟设备301经由信息处理装置101具有的端口当中的、除虚拟设备300的端口之外的端口,连接到图像形成装置108。虚拟设备301具有接收模块320、RPC服务器321、虚拟设备假脱机程序322、虚拟设备语言监视器323以及端口监视器324。虚拟设备301的构造与虚拟设备300的相同,因此省略详细描述。

图4是用于描述根据第一实施例的信息处理装置101的硬件构造的框图。

CPU 401是控制信息处理装置101的整体的处理器。RAM 402是用于CPU 401进行操作的系统工作存储器,并且被用作用于记录程序的程序存储器。NVMEM 403是非易失性存储器,并且记录设置信息等。ROM404是非可重写的、非易失性存储器,并且记录各种程序。HDD 405存储OS、程序等。USB I/F 408是用于连接到USB设备的功能单元,并且用于经由USB获得其他设备的状态以及用于返回状态。LAN I/F 407是用于连接到LAN的功能单元,并且用于经由LAN获得其他设备的状态以及用于返回状态。显示单元接口(I/F)409控制显示单元410与CPU 401之间的接口。输入输出I/F 411控制例如包括指点设备等的控制台单元412与键盘之间的接口。上述设备被布置在系统总线406上。CPU 401执行存储在ROM 404中的引导程序,以将安装在HDD 405中的OS、程序等展开到RAM 402中,并且通过执行它们,来执行根据后述的信息处理装置101的处理。请注意,显示单元410还可以配备有触摸面板功能。

图5描绘了例示根据第一实施例的、信息处理装置101的设置应用109在显示单元410上显示的画面的示例的图。

设置应用109的TOP(置顶)画面500显示在信息处理装置101上安装的虚拟设备的操作状态或信息,并且还具有用于改变虚拟设备具有的信息、删除虚拟设备等的功能。这使得能够使用虚拟设备假脱机程序312和322提供的访问功能。虚拟设备名称501显示在信息处理装置101上安装的虚拟设备的名称。型号名称502表示能够指定分别链接到虚拟设备300和301的图像形成装置107和108的名称。在第一实施例中显示产品名称。连接503表示与图像形成装置107和108的连接的状态,NW表示经由网络的连接,USB表示经由USB的连接。在当在连接503中与图像形成装置107和108的连接是网络连接(NW)的情况下,IP地址504表示图像形成装置的IP地址。当接收到作业时,端口号505表示被分配给虚拟设备的接收端口号。

在画面上,如果用户从虚拟设备的列表中选择了虚拟设备并且按下删除按钮506,则显示确认消息(未示出),并且如果获得用户的同意,则删除所选择的虚拟设备。另外,如果用户选择了虚拟设备并且按下改变按钮507,则显示能够改变所选择的虚拟设备的虚拟设备名称501、图像形成装置107和108的IP地址以及链接的接收端口号的对话。另外,当用户选择了虚拟设备,并且按下设备设置按钮508时,显示能够进行关于所选择的虚拟设备的日志的保存的设置、或者关于时间通知的设置的对话。另外,当用户选择了虚拟设备并且按下启动按钮509时,启动用于所选择的虚拟设备的状态窗口105。此外,当用户选择了虚拟设备并且按下队列显示按钮510时,显示关于所选择的虚拟设备的虚拟设备假脱机程序312管理的打印作业的信息。

信息处理装置101的IP地址被显示在IP地址显示区域511中。当用户按下关闭按钮512时,应用被终止。另外,图标513是表示正在操作或停止的虚拟设备是否被显示在虚拟设备名称的头部的图标。

图6描绘了例示根据第一实施例的、信息处理装置101显示的虚拟设备设置改变对话600的示例的图。通过用户从图5的画面上的虚拟设备的列表中选择虚拟设备并且按下改变按钮507,来显示该画面。

连接的打印机601表示链接到所选择的虚拟设备的图像形成装置107或108的产品名称。目的地602表示将用于所选择的虚拟设备的作业输出到的目的地。如果到图像形成装置的连接是NW,则目的地602成为图像形成装置的IP地址。另外,如果到图像形成装置的连接是USB连接,则目的地(控制)602被隐藏。虚拟设备名称603是在图5的TOP画面500上显示的虚拟设备名称501中显示的标题。接收端口号604表示先前描述的接收端口号。在图6中,在当选择了为“虚拟打印机_1”的图5的虚拟设备名称并且按下改变按钮507的情况下,IP地址和接收端口号对应于图5。注意,在此,虚拟设备名称“虚拟打印机_1”对应于图像形成装置108。

在此,如果用户改变图像形成装置的IP地址,则通过改变目的地602的IP地址,变得能够输出到相同的图像形成装置。另外,即使期望输出到同一型号的另一图像形成装置,用户也能够通过改变目的地602的IP地址来改变作业的输出目的地。以这种方式,在用户已经由画面编辑了期望的项目之后,当按下了确定按钮605时,在画面上的设置被反映,并且虚拟设备设置改变对话600关闭。另外,当用户按下取消按钮606时,画面上的正编辑内容被丢弃,并且虚拟设备设置改变对话600关闭。

图7描绘了例示根据第一实施例的、信息处理装置101显示的虚拟设备设置对话700的示例的图。通过用户选择图5的画面上的虚拟设备并且按下设备设置按钮508来显示该画面。图7例示了选择了图5的虚拟设备名称“虚拟打印机_1”并且按下了设备设置按钮508的情况。

当用户在画面上选择了单选按钮701“保存打印机日志”时,从信息处理装置101检索链接到虚拟设备的图像形成装置108内的日志信息,并且在保存目的地706中指定的文件中保存该日志信息。另外,当用户选择了单选按钮702“保存计算机日志”时,在信息处理装置101中,在保存目的地706中指定的文件中保存与图像形成装置108等通信的记录以及在信息处理装置101中处理后的日志。另外,当用户选择了单选按钮703“向打印机通知时间”时,以固定间隔向图像形成装置108通知信息处理装置101的时间。当按下了确定按钮704时,画面上的正编辑内容被反映,并且虚拟设备设置对话700关闭。此外,当用户按下取消按钮705时,画面上的正编辑内容被丢弃,并且虚拟设备设置对话700关闭。

图8描绘了例示由根据第一实施例的信息处理装置101的状态窗口105显示的状态显示画面的示例的图。关于该画面,通过用户选择图5的画面上的、为“虚拟打印机_1”的虚拟设备名称并且按下启动按钮509,启动并显示状态窗口105。

状态窗口TOP画面801根据所选择的虚拟设备的状态的内容,切换状态画面803的内容和主信息802的内容。补充消息804显示状态的补充信息等。在图8中,显示表示经由网络连接的图像形成装置108(虚拟打印机_1)的调色剂不足的消息。

图9描绘了例示根据第一实施例的、信息处理装置101显示的作业列表对话900的示例的图。该画面例示了虚拟设备假脱机程序312(322)管理的、并且通过用户按下图5的画面上的队列显示按钮510而启动的作业列表对话的示例。

文档名称902显示当前处理中的文档名称902。用户名903显示执行作业的用户的名称。状态904表示作业的状态(例如,打印中、等待中等)。当用户按下画面上的更新按钮905时,所显示的作业列表被更新为最新状态。另外,当用户按下选择-全部按钮906时,作业列表中显示的所有作业成为被选择状态。当用户选择了作业列表上的作业并且按下作业删除按钮907时,所选择的作业被删除。当用户按下关闭按钮908时,作业列表对话900关闭。

图10是用于描述根据第一实施例的图像形成装置108的硬件构造的框图。在此,虽然参照经由网络连接的图像形成装置108给出了描述,但是由于图像形成装置107的构造基本上是相同的,因此在此省略图像形成装置107的构造的描述。

CPU 1001控制图像形成装置108的所有操作。RAM 1002用作CPU 1001的主存储器、工作区域等,也被用作用于输出信息的加载区域以及用于环境数据的存储区域。另外,RAM 1002包括NVRAM(非易失性RAM)区域,并且被构造为使得存储器容量能够通过连接到用于扩展的套接字(未示出)的可选RAM来扩展。ROM 1003包括存储各种字体的字体ROM 1020、存储由CPU 1001执行的控制程序等的程序ROM 1021以及存储各种数据的数据ROM 1022。各种I/F(主要是网络和USB I/F,该图是网络的情况)1004与信息处理装置101进行数据的发送和接收。打印单元I/F 1005控制与作为打印机引擎的打印单元1006的接口。外部存储器1009包括固态硬盘(SSD)、作为选项而连接的硬盘(HD)等,其中,由外部存储器I/F 1008来控制访问。外部存储器1009存储字体数据、表格数据等。此外,用于与外部单元进行的交换的文件1010,能够被暂时在图像形成装置108中创建并被存储。

注意,在未连接可以为硬盘的外部存储器1009的情况下,在信息处理装置101中使用的信息等被存储在ROM 1003的数据ROM 1022中。注意,外部存储器1009不限于仅一个,并且可以包括多个。例如,可以采用这样的构造,使得除了嵌入的字体之外,多个地连接可选字体卡和存储解释不同语言系统的打印机控制语言的程序等的外部存储器。在控制台单元1007中,布置有接受用户的操作的触摸面板结构的操作面板,并且进一步,在操作面板中,布置有用于操作的开关、显示设备等(未示出)。此外,可以采用这样的构造,使得包括NVRAM(未示出),并且存储来自操作面板的打印机模式设置信息。

CPU 1001基于在ROM 1003的程序ROM 1021中存储的控制程序等,经由打印单元I/F 1005将图像信号作为输出信息输出到打印单元1006。另外,CPU 1001能够经由各种I/F(网络或USB I/F是主要的)1004,进行与信息处理装置101的通信。然后,当接收到从信息处理装置101发送的打印作业时,构造双向通信路径,通过该双向通信路径,能够将图像形成装置108的信息等通知给信息处理装置101。

图11是用于描述根据第一实施例的由图像形成装置108进行的打印处理的流程图。注意,通过被存储在ROM 1003的程序ROM 1021中的、执行处理的程序,并且CPU 1001读出并执行该程序,来实现该流程图中所示的处理。

首先,当从信息处理装置101(虚拟设备的服务106在其上进行操作)接收到数据时,CPU 1001在步骤S1101中使处理前进到步骤S1102,并且确定数据处理是否是必要的。当CPU 1001在步骤S1102中确定数据处理是必要的时,处理进到步骤S1103,然而,当不是这种情况时,处理前进到步骤S1101并继续等待数据的接收。在此,在数据没有意义的情况下,可以采用构造使得该数据被读取并被丢弃。注意,在此,假设所接收到的数据是图像形成装置108能够识别的命令格式。

CPU 1001在步骤S1103中对所接收到的数据的命令进行分析,并且根据分析结果进行处理。接下来,处理进到步骤S1104,并且CPU 1001确定数据是否为获得图像处理参数的命令,并且如果是,则处理前进到步骤S1105,并且获得图像形成装置108具有的用于图像校正的图像处理参数。然后,处理进到步骤S1106,并且CPU 1001将所获得的参数设置在用于对获得的命令进行应答的应答缓冲器中。然后,处理前进到步骤S1107,并且CPU 1001执行利用设置在应答缓冲器中的参数来进行应答的应答处理,并且使处理前进到步骤S1101的等待数据接收。

同时,当CPU 1001在步骤S1104中确定不是获得图像处理参数的命令时,处理前进到步骤S1108。CPU 1001在步骤S1108中确定数据是否是用于控制图像形成装置的控制命令(装置的设置参照、设置的执行、状态的参照等),如果是,则处理前进到步骤S1109。CPU 1001在步骤S1109中确定控制命令,并执行根据控制命令的处理,并且处理前进到步骤S1110。在步骤S1110中,CPU 1001确定对控制命令的应答是否是必要的,并且当确定应答是必要的时,处理前进到步骤S1107,并且执行应答处理,处理前进到步骤S1101。另外,在步骤S1110中,当确定应答是不必要的时,则处理一样前进到步骤S1101。

另外,在步骤S1108中,当确定不是控制命令时,处理前进到步骤S1111,并且在这种情况下,确定接收到打印作业(包括打印命令),并且进行打印作业的分析。然后,处理前进到步骤S1112,并且CPU 1001控制图像形成装置108的打印单元1006,并且执行打印处理。因此,当打印处理终止时,处理前进到步骤S1101中的等待数据接收。

接下来,参照前述的图1至图3,给出根据第一实施例的、在使用打印系统进行打印的情况下的数据流的说明。

当在信息处理装置101中从用户使用的应用102中指示了打印的启动时,V4驱动器103被调用并且打印作业被创建。在创建打印作业时,使用图像形成装置108的动态图像处理参数。在此,图2的设备信息获得模块203通过虚拟设备的服务106接收来自图像形成装置108的信息。除了该信息之外,打印作业生成器204生成打印作业,此外,PDL转换器205将其转换成PDL格式的打印作业。然后,将打印作业传递到在信息处理装置101上操作的、Windows的Windows标准假脱机程序104。Windows标准假脱机程序104上的打印作业通过Windows网络功能中的标准端口监视器,并由Windows网络功能被发送到虚拟设备的服务106的虚拟设备301的接收模块320。虚拟设备301的接收模块320经由网络接收打印作业,并将其存储在虚拟设备301内的虚拟设备假脱机程序322具有的队列中。在虚拟设备假脱机程序322进行与虚拟设备语言监视器323的交换的同时,虚拟设备假脱机程序322经由虚拟设备301的端口监视器324,将存储在队列中的打印作业发送到图像形成装置108。虚拟设备假脱机程序322通过与此同时的双向通信接受图像形成装置108的状态信息,并且经由RPC服务器321进行各种命令的接收以及对命令的应答。

状态窗口105经由Windows网络功能与虚拟设备的服务106进行交换,并且进行图像形成装置108的状态的显示、图像形成装置108的设置项目的编辑等。

图12是用于描述由在根据第一实施例的信息处理装置101中执行的V4驱动器103进行的打印处理的流程图。注意,通过信息处理装置101的CPU 401将存储在HDD 405中的程序展开到RAM 402中并执行该程序,来实现该处理。注意,在此,在使用图像形成装置108来打印的情况下进行描述。

执行V4驱动器103的CPU 401执行步骤S1201中的初始化处理,并且获得图像形成装置108中存在的用于图像处理的图像处理参数。该图像处理参数是在随后的图像渲染处理中必要的图像处理参数。在获得处理中,图2的V4驱动器103中的设备信息获得模块203,与图3的虚拟设备的服务106的RPC服务器321进行通信,以从图像处理装置108获得图像处理参数。换言之,进行对在稍后说明的图13B中的步骤S1311和步骤S1312中做出的响应的结果的接收。在此,虽然存在无法从图像形成装置108获得图像处理参数的情况下,在图像数据的校正中出现问题等的可能性,但是在这种情况下,图像渲染处理使用规定值继续。

接下来,CPU 401在步骤S1202和步骤S1203中,等待来自应用102的打印作业的输入。在此,当打印作业被输入时,处理前进到步骤S1204,并且来自随后阶段的虚拟设备的服务106的消息数据被输入。来自随后阶段的该消息数据是表示来自图像形成装置108的打印作业的接收的完成的消息等。然后,处理前进到步骤S1205,并且CPU 401确定是否接受应当被处理的消息数据,当未接收到应当处理的消息数据时,处理前进到步骤S1208。当在步骤S1205中确定接受应当被处理的消息数据时,处理前进到步骤S1206,并且进行用于根据消息类型的显示等的处理(消息类型的详情被省略)。一种这样的消息类型是“终止打印处理”,并且在这种情况下,在步骤S1207中确定处理终止,并且处理终止。注意,当在步骤S1207中确定打印处理的终止时(例如,在异常终止等的情况下),处理终止。

当在步骤S1207中确定不存在打印处理的终止时,处理前进到步骤S1208,并且确定所接收到的打印作业的处理是否是必要的。在此,当确定处理不是必要的时,处理返回到步骤S1202,以进一步接受来自应用102的数据。当CPU 401在步骤S1208中确定打印作业的处理是必要的时,处理前进到步骤S1209,并且使用在步骤S1201中获得的用于图像校正的参数来进行渲染处理。接下来,处理前进到步骤S1210,并且CPU 401将包括通过渲染处理获得的打印数据的打印作业,保存到Windows标准假脱机程序104。然后,处理前进到步骤S1211,并且CPU 401将打印作业转换为实际进行打印的图像形成装置108可用的打印数据格式。在此,在Windows标准假脱机程序104上执行数据转换。然后,处理前进到步骤S1212,并且CPU 401将转换后的打印作业保存到Windows标准假脱机程序104。然后,处理前进到步骤S1213,CPU 401向Windows网络功能中的Windows标准端口监视器(未示出)请求打印作业的发送,并且打印作业被发送到虚拟设备的服务106。以这种方式,当打印作业的发送终止时,处理返回到步骤S1205,以进一步发送下一个打印作业,并且执行先前描述的消息处理、渲染处理、数据转换处理以及数据发送处理。

注意,在该流程图中,当在步骤S1207中确定打印处理的终止之后,虽然打印处理被终止,但是可以进行到步骤S1201的等待下一个打印作业的转变,而不是终止打印处理。

图13A和图13B是描述根据第一实施例的、由信息处理装置101的虚拟设备的服务106进行的处理的示例的流程图。注意,通过信息处理装置101的CPU 401将存储在HDD 405中的程序展开到RAM 402中并执行该程序,来实现该处理。在第一实施例中,将给出针对与图像形成装置108相对应的虚拟设备301的情况的说明。

首先,CPU 401在步骤S1301中用作虚拟设备301的接收模块320,并且从接收端口输入数据。更具体地,接收模块320从Windows网络功能的端口输入数据。接下来,处理前进到步骤S1302,并且CPU 401确定是否输入了处理对其必要的数据(打印作业),如果是,则处理前进到步骤S1303,并且将输入的数据存储在虚拟设备假脱机程序322的队列中。在此,虽然未示出,但是存在无法一次全部接受数据的输入的情况,并且在这种情况下,在将接收分割开来的同时,进行用于将数据存储在队列中的处理的中断和继续,并且最后用于存储到队列的处理完成。

接下来,处理前进到步骤S1304,并且CPU 401确定是否在队列中存在应当被处理的数据,如果在队列中不存在应当被处理的数据,则返回到步骤S1301的用于从端口输入数据的处理。当CPU 401在步骤S1304中确定在队列中存在应当被处理的数据时,处理前进到步骤S1305,CPU401用作虚拟设备语言监视器323,并且从队列中提取数据,并启动到图像形成装置108的打印作业的发送。首先,CPU 401在步骤S1306中用作虚拟设备语言监视器323,并且从图像形成装置108获得状态信息。接下来,处理前进到步骤S1307,并且CPU 401用作虚拟设备语言监视器323,并与图像形成装置108的引擎监视器进行通信。然后,处理前进到步骤S1308,CPU 401用作虚拟设备语言监视器323,并且使用图像形成装置108的状态信息以进一步进行与图像形成装置108的引擎状态匹配的图像数据的发送。之后,处理前进到步骤S1309,调查图像数据的发送是否终止,并且当图像数据的发送未终止时,处理前进到步骤S1306,并且执行先前描述的处理。然后最终,当打印终止时,处理返回到步骤S1301。

同时,当CPU 401在步骤S1302中确定接收模块320未接收到有必要处理的数据时,换言之,当未接收到打印作业时,处理前进到步骤S1311(图13B)。CPU 401在步骤S1311中确定是否接收到来自V4驱动器103的用于控制图像形成装置108的命令,换言之,用于获得图像形成装置108的图像处理参数的命令。在此,当确定不存在接收到获得图像处理参数的命令时,处理前进到步骤S1315,而当确定在步骤S1311中获得用于获得参数的命令时,处理前进到步骤S1312。CPU 401在步骤S1312中用作虚拟设备语言监视器323,并将用于获得图像处理参数的命令发送到图像形成装置108。然后,在步骤S1313中等待响应,并且当接收到响应时,处理前进到步骤S1314,将响应传送到V4驱动器103,并且处理前进到步骤S1315。

CPU 401在步骤S1315中确定是否从状态窗口105接收到用于控制图像形成装置108的命令。如果是,则处理前进到步骤S1316,如果不是,则处理前进到步骤S1319。CPU 401在步骤S1316中用作虚拟设备语言监视器323,对控制命令的内容进行分析,并将与分析结果相对应的控制命令发送到图像形成装置108。然后,处理前进到步骤S1317,并且等待与命令有关的来自图像形成装置108的响应。然后,当接收到响应时,处理前进到步骤S1318,响应的内容被发送到状态窗口105等,并且处理前进到步骤S1319。

CPU 401在步骤S1319中确定是否存在应当被发送到图像形成装置108的其他命令,如果存在,则处理前进到步骤S1320,如果不存在,则处理前进到步骤S1323。CPU 401在步骤S1320中用作虚拟设备语言监视器323,将其他控制命令发送到图像形成装置108,并且在步骤S1321中等待与控制命令有关的来自图像形成装置108的响应。然后,当接收到响应时,处理前进到步骤S1322,CPU 401用作虚拟设备语言监视器323以使响应反映在虚拟设备的服务106中,并且处理返回到步骤S1301。请注意,如果某些数据到达,但它不是应当被处理的控制命令,则CPU 401在步骤S1323中读取并丢弃数据并且处理返回到步骤S1301。

利用这样的结构,根据第一实施例的虚拟设备的服务能够将从V4驱动器接受的打印作业与图像形成装置(打印机)的状态匹配,并且发送打印作业以引起打印。另外,当从V4驱动器接受用于获得图像形成装置的参数的命令时,能够获得图像形成装置的参数以对V4驱动器进行应答。此外,能够根据来自状态窗口的请求,获得图像形成装置的状态。

图14至图16是描述根据第一实施例的在信息处理装置101中关于V4驱动器103、状态窗口105、虚拟设备301以及图像形成装置108的连接的错误处理的流程图。

图14是用于描述根据第一实施例的、信息处理装置101确定在虚拟设备301与图像形成装置108之间的连接是否没有问题的处理的流程图。注意,通过信息处理装置101的CPU 401将存储在HDD 405中的程序展开到RAM 402中并执行该程序,来实现该处理。当虚拟设备301与图像形成装置108连接时启动该处理。

首先,CPU 401在步骤S1401中用作虚拟设备语言监视器313,并且获得来自图像形成装置108的型号信息。在第一实施中,型号信息是产品名称。接下来,处理前进到步骤S1402,CPU 401用作虚拟设备语言监视器323,并且将虚拟设备301具有的型号信息与所获得的型号信息进行比较。在此,如果它们是相同的,则处理前进到步骤S1403,而如果它们彼此不同,则处理进到步骤S1404。CPU 401在步骤S1403中用作虚拟设备语言监视器323,并且确定在连接中没有问题,并且终止处理。另一方面,CPU 401在步骤S1404中用作虚拟设备语言监视器323,并且由于在与图像形成装置108的连接中存在问题,因此确定键入了错误状态,并且终止处理。注意,如果在步骤S1404中确定输入了错误状态的情形下虚拟设备语言监视器323接受用于获得状态信息的命令,则关于连接的错误状态和型号信息被应答。

图15是用于描述根据第一实施例的、信息处理装置101确定关于在状态窗口105与虚拟设备301之间的连接的错误是否被显示的处理的流程图。注意,通过信息处理装置101的CPU 401将存储在HDD 405中的程序展开到RAM 402中并执行该程序,来实现该处理。通过状态窗口105命令虚拟设备301获得状态信息,来启动该处理。

CPU 401在步骤S1501中用作状态窗口105,并且获得作为对虚拟设备301进行的、对获得状态信息的命令的应答而指定的图像形成装置108的型号信息和状态信息。接下来,处理前进到步骤S1502,CPU 401用作状态窗口105,并且将状态窗口105具有的型号信息与所获得的型号信息进行比较。然后,如果它们是相同的,则处理前进到步骤S1504,而如果它们不同,则处理前进到步骤S1503。CPU 401在步骤S1503中用作状态窗口105,并且将关于连接的错误状态的重要性与所获得的状态信息进行比较。在第一实施例中,状态窗口105保持包括关于连接的错误状态的所有状态的重要性,这被参照并被确定。然后,在步骤S1503中,当关于连接的错误状态被确定为是更高的重要性时,处理前进到步骤S1505,而当不是这种情况时,处理前进到步骤S1504。CPU 401在步骤S1504中用作状态窗口105,并且进行基于所获得的状态信息的显示,并且终止该处理。同时,CPU 401在步骤S1505中用作状态窗口105,并且例如显示如图17中所示的关于连接的错误状态,并且终止该处理。

图17描绘了例示根据第一实施例的、当在信息处理装置101中发生关于在状态窗口105与虚拟设备301之间的连接的错误的情况下在显示单元410上显示的状态窗口TOP画面801的示例的图。

表示从虚拟设备300获得的型号信息与状态窗口105的型号信息之间不匹配的消息,被显示在主消息1702和辅助消息1704中。另外,虽然在图中未示出,但是可以采用这样的构造,以在输入打印作业的情况下,显示为由于无法打印而进行自动删除的属性信息。添加了表示所发生的错误的标记1705的图像形成装置108的图像,被显示在状态画面1703中。

图16是用于描述根据第一实施例的、信息处理装置101确定在V4驱动器103与虚拟设备301之间的连接是否没有问题的处理的流程图。注意,通过信息处理装置101的CPU 401将存储在HDD 405中的程序展开到RAM 402中并执行该程序,来实现该处理。当虚拟设备语言监视器323接收到打印作业时启动该处理。

首先,在步骤S1601中,CPU 401用作虚拟设备语言监视器323,并且将所接收到的打印作业具有的型号信息与虚拟设备301的型号信息进行比较。然后,如果这些型号信息被确定为是相同的,则处理前进到步骤S1602,而如果不同,则处理前进到步骤S1603。CPU 401在步骤S1602中用作虚拟设备语言监视器323,确定V4驱动器103与虚拟设备301成功连接,并且继续所接收到的打印作业的打印处理。同时,CPU 401在步骤S1603中用作虚拟设备语言监视器323,确定V4驱动器103与虚拟设备301未正确连接,停止所接收到的打印作业的处理,并且终止处理。注意,在第一实施例中,虚拟设备语言监视器323在步骤S1603中通过删除所接收到的打印作业来停止打印处理。

图18描绘了例示根据第一实施例的、当在信息处理装置101中无法进行与虚拟设备的服务106的通信(在下文中,被称为虚拟设备通信错误)的情况下,状态窗口105显示的状态窗口TOP画面801的示例的图。

状态窗口105使用RPC通信与虚拟设备的服务106进行通信。当与虚拟设备的服务106的RPC通信失败的情况下,显示虚拟设备通信错误,而与图像形成装置107和108的电源是关/开无关。

表示与虚拟设备的服务106的通信的消息不能被显示在主消息1802和辅助消息1804中。添加了表示所发生的错误的标记1805的图像形成装置108的图像,被显示在状态画面1803中。

如上面由第一实施例所描述的,存在如下的效果,即,即使在信息处理装置安装了V4驱动器的环境中,也能够在与基于主机的打印系统相对应的图像形成装置中,使用V4驱动器来实现类似于V3驱动器的打印处理。

[第二实施例]

接下来,将给出针对根据本发明的第二实施例的说明。

图19是例示根据本发明的第二实施例的打印系统的概要构造的框图。在图中,粗实线箭头符号表示打印作业的交换,而细虚线箭头符号表示除打印作业之外的数据的交换。

在打印系统的该构造中,两个信息处理装置1901和1911以根据先前描述的第一实施例的图1的构造,经由网络连接。两个信息处理装置1901和1911分别用作客户端,并且能够通过用作服务器的信息处理装置101,使图像形成装置107和108执行打印。

分别用作客户端的信息处理装置1901和1911具有应用1902和1912、V4驱动器1903和1913、Windows标准假脱机程序1904和1914以及状态窗口1905和1915。

关于这些的描述与第一实施例中的相同。在第二实施例和第一实施例之间,在系统构造中存在以下构造的差异。

Windows标准假脱机程序1904和1914经由网络将打印作业发送到如下的图像形成装置,该图像形成装置登记到相对于用作服务器的信息处理装置101的虚拟设备的服务106的各个发送目的地端口。状态窗口1905和1915使用RPC与用作服务器的信息处理装置101的虚拟设备的服务106进行通信。注意,在根据第二实施例的打印系统中执行的处理实质上与先前描述的第一实施例的情况相同。

通过第二实施例,如上面所说明的,能够通过服务器的虚拟设备的服务,将打印作业从客户端-服务器连接的客户端发送到图像形成装置以引起打印。

其他实施例

还可以通过读出并执行记录在存储介质(也可更完整地称为“非暂时性计算机可读存储介质”)上的计算机可执行指令(例如,一个或更多个程序)以执行上述实施例中的一个或更多个的功能、并且/或者包括用于执行上述实施例中的一个或更多个的功能的一个或更多个电路(例如,专用集成电路(ASIC))的系统或装置的计算机,来实现本发明的实施例,并且,可以利用通过由系统或装置的计算机例如读出并执行来自存储介质的计算机可执行指令以执行上述实施例中的一个或更多个的功能、并且/或者控制一个或更多个电路以执行上述实施例中的一个或更多个的功能的方法,来实现本发明的实施例。计算机可以包括一个或更多个处理器(例如,中央处理单元(CPU),微处理单元(MPU)),并且可以包括分开的计算机或分开的处理器的网络,以读出并执行计算机可执行指令。计算机可执行指令可以例如从网络或存储介质被提供给计算机。存储介质可以包括例如硬盘、随机存取存储器(RAM)、只读存储器(ROM)、分布式计算系统的存储器、光盘(诸如压缩光盘(CD)、数字通用光盘(DVD)或蓝光光盘(BD)TM)、闪存装置以及存储卡等中的一个或更多个。

本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(CPU)、微处理单元(MPU)读出并执行程序的方法。

虽然参照示例性实施例对本发明进行了描述,但是应当理解,本发明不限于所公开的示例性实施例。应当对所附权利要求的范围给予最宽的解释,以使其涵盖所有这些变型例以及等同的结构和功能。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1