专利名称:信息处理设备、打印控制方法、程序和计算机可读存储介质的制作方法
技术领域:
本发明涉及其中多个打印机执行处理的打印系统。例如,本发明涉及一种格式打印系统或类似系统。
背景技术:
在已知类型的打印系统中,事先生成的输出格式等与描述变量部分的数据结合在一起,以及结合后的数据被打印。
在大规模格式打印系统等的情况下,其中格式数据所被打印的打印机位于国家中各个站点(分局),打印机的数量预计达到几百台之多。在这样的大规模格式打印系统中,由于资源以及操作系统(之后简称为OS)的性能的限制,很难由单个格式存储服务器来管理所有这些打印机。例如,在Windows系统下,必须产生一个打印机对象(逻辑打印机)以注册一个打印机为一个打印目的地。通常,在OS的打印系统中,不预期产生几百个打印机对象的环境,因而不能保证所有这些打印机对象能正常工作。
因此,通常的情况是实施一种系统,通过在各个站点提供打印服务器,使得打印机和打印作业的管理被分配到各个站点,例如日本公开专利NO.2001-290630中所描述的。
然而,当如上所描述的格式打印系统中在各个站点提供打印服务器时,成本会随着服务器数量的增加而增加。
发明内容
本发明的各个具体实施方式
能够克服相关技术的上述缺点。
根据本发明的一个方面,提供了一种具有运行于其中的操作系统的信息处理设备。该信息处理设备包括一个打印作业控制器,用于接收从第一打印机对象的输出端口输出的打印数据输入,该第一打印机对象被设置在该操作系统的假脱机程序中。该打印作业控制器包括一个识别单元,用于响应于打印请求而识别打印机标识符,该打印机标识符指定该打印作业控制器管理的多个第二打印机对象之一;一个确定单元,用于根据由该识别单元所识别的该打印机标识符,确定从该第一打印机对象的输出端口输出的打印数据的输出目的地;和一个输出单元,用于根据由该确定单元所确定的第二打印机对象的设置,输出所述打印数据到打印设备。这样,可能实施一种大规模打印系统,其中能够在不增加服务器的成本的前提下提供多个打印机。
本发明其它的特征根据下面结合附图对示例性实施方式的描述将变得很清楚。
图1是表示本发明的一个具体实施方式
的打印系统的整体结构的框图。
图2是表示一个信息处理设备和一个打印装置的基本硬件结构的框图。
图3是在该具体实施方式
的打印系统中的客户终端和格式存储服务器的功能块图。
图4A和4B是用于解释该具体实施方式
的打印作业数据的流程的图。
图5是表示当从外部接收到向格式存储服务器的打印请求时所执行的处理实例的流程图。
图6是表示在该具体实施方式
中当打印作业数据被输入到打印作业控制器时所执行的处理实例的流程图。
图7是表示在该具体实施方式
中该打印作业控制器管理的输出目的地管理信息的数据结构实例的图。
图8A和8B是表示在该具体实施方式
中与操作系统的假脱机程序相关的实施屏幕的图。
图9是表示在该具体实施方式
中目的地打印机的列表和显示在客户终端的用户界面单元上的格式列表的实例的图。
图10A和10B是表示在该具体实施方式
中,当一个打印请求从客户终端的用户界面单元发送到格式存储服务器时显示的打印属性指定屏幕和打印选项指定屏幕的实例的图。
图11是表示在该具体实施方式
中当注册一个目的地打印机时显示的设置屏幕转换的实例的流程图。
图12A和12B是表示在该具体实施方式
中用于注册目的地打印机的设置屏幕的实例的图。
图13是表示在该具体实施方式
中用于注册目的地打印机的注册过程的实例的流程图。
图14是表示在该具体实施方式
中删除目的地打印机的删除过程的实例的流程图。
图15是表示用在该具体实施方式
中的认证信息的数据结构的实例的图。
具体实施例方式
现在将结合附图详细描述本发明的一个优选实施方式。应该注意在这些实施方式中设置的部件的相关布置、数字表达和数字值不是用来限制本发明的范围,除非它被另外特别声明。
系统概况下面将作为一个实施例给出格式打印系统实施例的相关描述。图1是表示根据本发明的一个具体实施方式
的格式打印系统的整体结构的框图。
参考图1,在中心处,格式存储服务器101、客户终端102、打印机103,彼此通过通信电路104互连。另外,在每个站点,客户终端102和打印机103通过通信电路104互相连接。另外,在中心的通信电路104和在各个站点的通信电路104互相连接。图1中,假定存在与中心关联的n个站点。而且,在中心点和每个站点的客户终端102的数量和打印机103的数量可任意独立的确定。在该实施例中,为了方便,在中心点仅示出了一个客户终端和两个打印机,在每个站点仅示出了两个客户终端和一个打印机。
通信电路104例如通过Internet、局域网(LAN)如内联网、广域网(WAN)、电话电路、租用的数字电路、ATM或帧中继电路、通信卫星电路、有线电视电路、或这些电路的组合来实施。只要数据通过这些通信电路104的发送和接收被允许,客户终端102和格式存储服务器101间的通信、格式存储服务器101和打印机103间的通信以及中心点和各站点间的通信可以根据不同协议被执行。
客户终端102例如是膝上型个人电脑、笔记本电脑、移动电脑或个人数字助理(PDA)。或者,客户终端102可以是具有程序功能的蜂窝电话,如i-mode终端。
打印机103是支持网络连接的打印机,例如激光打印机。或者,打印机103可以是包括喷墨打印引擎的喷墨打印机、具有多种功能如传真设备和复印设备的功能的数字多功能设备等。
图2是表示图1中示出的格式存储服务器101和打印机103的基本硬件结构的框图,以一种简化方式显示了所述格式存储服务器101和打印机103之间的连接。假定该客户终端102的基本硬件结构可以由对应于所述格式存储服务器101的框图的一个框图所表示。而且,图2所示的硬件框图对应于一个通常的信息处理设备的硬件框图,这样该实施方式中的该格式存储服务器101和客户终端102可通过具有通常的信息处理设备的硬件结构的计算机来实施。
硬件框图首先,将描述该格式存储服务器101的结构。中央处理单元(CPU)201执行存储在只读存储器(ROM)203的程序ROM中的或从硬盘211下载到随机存取存储器(RAM)202中的程序(如OS和应用程序等)。OS是运行于计算机上的操作系统的缩写,后面的操作系统都将被称为OS。根据后面的流程图所描述的处理通过执行所述程序来实现。RAM 202作为CPU 201的主存储器或工作区等。键盘控制器(KBC)205控制来自键盘209或点击设备(未示出)的键输入。CRT控制器(CRTC)206控制在阴极射线管(CRT)显示器210上的显示。该CRT 210根据从CPU 201发送至该CRTC 206的各种显示控制指令显示用户界面,如图10所示出的并将在后面描述的界面。盘控制器(DKC)207控制存储有各种类型数据的硬盘(HD)211或软盘(FD)中的数据访问。打印机控制器(PRTC)208控制与所连接的打印机107的信号交换。网络控制器(NC)212与网络连接并控制与连接到该网络的其它设备的通信。
然后,将描述打印机103的结构。如图2所示,打印机CPU 1301根据存储在ROM 1302或外部存储器1303中的控制程序控制与系统总线1304连接的各方块。通过CPU 1301执行的处理产生的图像信号通过打印单元接口(I/F)1305作为输出信息被输出到打印单元(打印机引擎)1306。另外,CPU 1301可以通过输入单元1307与格式存储服务器101通信,这样,例如,CPU 1301可以发送打印机103中的信息至该格式存储服务器101。
ROM 1302中的程序ROM为CPU 1301等存储控制程序。ROM1302中的字体ROM存储用于产生输出信息的字体数据等。ROM1302中的数据ROM存储如当打印机不包括外部存储器1303(如硬盘)时在格式存储服务器101中使用的信息。
RAM 1308作为CPU 1301的主存储器或工作区等。RAM 1308的存储容量可通过连接一个可选的RAM到一个扩展端口(未示出)来扩展。而且,RAM 1308被用作产生输出信息的区域、存储环境数据的区域、非易失性RAM区域等等。外部存储器1303,如硬盘(HD)或IC卡,在存储器控制器(MC)1309的控制下被访问。该外部存储器1303被可选择的连接,并且存储字体数据、仿真程序、格式数据等等。操作面板1311具有操作开关、由发光二极管(LED)实施的显示元件等。
软件框3是表示图1所示的客户终端102和格式存储服务器101的功能块的图。每个功能块通过由CPU 201利用结合图2描述的硬件结构执行存储在非易失性存储器203中的程序来执行。而且,这些功能可由运行在格式存储服务器101中的OS部分地或全部地执行。客户终端102包括用户界面(UI)单元301,其显示存储在格式存储服务器101中的格式数据311的列表,以使得用户能够选择格式数据311并指示该格式存储服务器101执行打印。该格式数据311包括多种类型的数据。实际数据的一个典型例子是必须被转换为可由假脱机程序307解析的页描述语言形式的数据的表格形式数据。实际数据的另一个例子是已经被转换为页描述语言格式的数据。特别的,当数据是以页描述语言形式被存储的时,可以改变图10所示的后面将要描述的设置屏幕上的关于特定打印设置参数的设置。如上所述,各种形式的格式数据被存储以使得重复打印的指令能够被发布。
格式存储服务器101的认证单元302根据图15所示的认证信息确定是否接受来自客户终端102的请求,该认证信息将在后面描述。
格式生成单元303根据格式模板数据、应用程序数据等产生格式数据311。格式存储单元304存储并管理该格式生成单元303产生的格式数据。当存储在格式存储单元304中的格式数据311被打印时,输出目的地信息发送单元305输出通过客户终端102的UI单元301指定的信息至输出目的地确定单元308。特别的,该输出目的地信息发送单元305在作业名称的结尾设置一个标识符,其指示相关打印数据已经被一个特定的源(格式生成单元303)发布。更具体的说,输出目的地信息发送单元305向输出目的地确定单元308报告打印属性、目的地打印机名称、和指示格式数据的打印的标识符(如在文件名称末尾的文本串)。该标识符由格式存储单元304当打印作业产生的时侯生成,并且该格式存储单元304将该标识符附在打印作业的名称中以使得该标识符通过输出目的地信息发送单元305被报告给输出目的地确定单元308。该目的地打印机的名称是指根据打印请求而指定由打印作业控制器309管理的多个第二打印机目标之一的一个打印机标识符。因此,无需限制名称,该目的地打印机名称可以是任意类型的信息,例如数字或二进制数据,只要该信息允许目的地打印机的打印机目标的识别。
输出目的地确定单元308接收OS的假脱机程序307转换的打印数据,并根据从输出目的地信息发送单元305接收的目的地打印机名称确定输出目的地。这里的打印数据包括绘图数据及各种类型的打印设置数据,如打印布局数据,用于打印输出的数据被统一地称为“打印数据”。而且,打印数据也可被称为打印作业或打印作业数据。下面的描述中使用这些术语。
打印作业控制器309通过通信电路104监视对应于所述目的地打印机的打印机103,以检查该打印机103是否准备好打印。然后,根据检查的结果,所述打印数据被送到被输出目的地确定单元308确定为输出目的地的目的地打印机(打印机103)。然后,打印数据在准备打印或重新打印的过程中被保持,直到确认发送至打印机103的所述打印作业已经结束。如上所述,打印作业控制器309向打印机103的打印数据的发送实际是指控制一个发送单元执行数据通信,该控制操作后面在适当的时侯被称为输出或发送。
输出目的地确定单元308包括输出目的地信息管理器314(参考图4A和4B),其管理打印属性、目的地打印机名称和从输出目的地信息发送单元305接收的标识符。
图形设备界面(GDI)306是编程界面,提供给OS以允许应用程序产生打印作业。假脱机程序307假脱机已经利用打印机驱动器转换过的数据。在该实施方式中,假脱机程序307是一个由Windows操作系统提供的Windows假脱机程序(windowsspooler)。
虽然在图3中格式存储服务器101包括格式生成单元303,但该格式生成单元303也可独立地提供,以使得格式数据311通过通信电路104被发送到格式存储单元304。
第一实施方式打印数据的流程图4A和4B是表示由打印机103执行打印存储在图3所示的格式存储服务器101中的格式数据311的处理流程图。
首先,将描述打印机对象401。表示在由OS提供的假脱机程序307上的该打印机对象401被该假脱机程序307管理。该打印机对象401包括打印队列402和输出端口403,并保持将从应用程序接收的绘制数据通过GDI 306转化为打印数据所需要的信息。所述转化绘制数据为打印数据所需的信息包括通过打印机驱动设置屏所设置的信息,例如打印作业设置,如2-in-1(双面至单面)复印、双面打印或打印分辨率、或关于打印数据的输出目的地(图像形成设备)的信息。
在该实施方式中,假脱机程序307上生成的打印机对象401的数量与打印机103的数量不一致,打印机对象401的数量根据实际情况可以为1。输出端口403作为一个向输出目的地确定单元308传输数据的接口。虽然输出目的地确定单元308在图4A和4B中被包括在打印作业控制器309中,但这并不是限制,只要输出目的地确定单元308被允许与打印作业控制器309交换信息,输出目的地确定单元308可独立于打印作业控制器309而提供。
然后,将描述打印机对象404。该打印机对象404(后面称为目的地打印机),显示于打印作业控制器309上,被打印作业控制器309管理。为了与之前描述的打印机对象401相区分,一个可以被称为第一打印机对象,另一个称为第二打印机对象。类似于之前描述的假脱机程序307的打印机对象401,该目的地打印机404包括打印队列405和目标端口(对应于输出端口)406。应该注意该打印机对象404的数量与该格式系统所管理的打印机的数量一致。例如,当打印作业控制器309管理1000台打印机时,在打印作业控制器309上产生并管理1000个打印机对象。
然后,将描述格式存储单元304中存储的格式数据311的流程。存储在格式存储单元304中的格式数据311响应于来自客户终端102的请求被读取。当认证单元302的认证成功时,格式数据311的打印被允许。当从客户终端102接收到涉及所述格式数据311的打印请求时,格式存储单元304传送通过客户终端102的UI单元301指定的目的地打印机名称到输出目的地信息发送单元305,该输出目的地信息发送单元305传送(报告)该目的地给输出目的地确定单元308。
另外,格式存储单元304通过GDI 306传送格式数据311到假脱机程序307。此时,存在于假脱机程序307上的打印机对象401被指定。该假脱机程序307(以及包括在假脱机程序307中的打印机驱动器)将格式数据311转换为可由打印机103解析的打印数据,并存储该打印数据在打印机对象401的打印队列402中。
然后,存储在打印队列402中的打印数据根据假脱机程序307的调度被传送到输出端口403,从输出端口403输出的打印数据被输入到输出目的地确定单元308。输出目的地确定单元308搜索对应于事先从输出目的地信息发送单元305接收到的目的地打印机名称的目的地打印机404,并存储该打印数据在目的地打印机404的打印队列中。
打印作业控制器309的功能打印作业控制器309被定义为对运行于OS上的假脱机程序307设置的打印机对象的输出目的地,以使得打印作业数据被输入到该打印作业控制器309。而且,打印作业控制器309具有以下功能。
该打印作业控制器309监视连接到目的地端口406的打印机103的状态和所述打印作业的状态。当确定打印数据准备发送的时侯,该打印作业控制器309从打印队列405中取出打印数据并将其发送到所述打印机103。发送到打印机103的该打印数据被打印作业控制器309跟踪直到打印结束。
更具体的说,打印作业控制器309保存输入打印数据,并在需要时发送并输出该打印数据到外部打印机103。例如,打印作业控制器309发送一个打印预约到打印机103,并根据打印机103的调度从该打印机103接收打印数据传输请求,并响应于该传输请求输出打印数据到打印机103。另外,打印作业控制器309保存输入至其中的打印数据以使得打印数据能够被用于,例如当打印机103出问题的时侯转移替换作业到另一打印机103。
另一方面,从打印机对象401输出的打印数据(显示于图4A的左上部)无需通过打印作业控制器309而被输入到打印机103。此时,通过输出端口向外发送的打印数据在输出完成之后被删除,无需被保存到打印结束。
在图4A和4B所示的情况中,提供了一条从输出目的地信息发送单元305延伸到输出目的地确定单元308的路径,这样就不需要向Window假脱机程序307注册多个打印机对象401。虽然当打印作业控制器309上产生多个打印机对象时,Window假脱机程序307上可能产生多个打印机对象401,但在该具体实施方式
中,不必注册这样多的打印机对象401,这样就可能减少Window打印机对象401所需的资源。相应的,可能实施大规模打印系统,其中可以设置多个打印机而不会增加相关服务器的成本。
打印作业生成的流程5是示出了格式存储服务器101响应从客户终端102接收的处理请求而生成一个打印作业并输入该打印作业到假脱机程序307的处理流程的流程图。流程图中的步骤S501、S503和S505由格式存储单元304执行,步骤S502由认证单元302执行,步骤S504由输出目的地信息发送单元305执行。
首先,在从客户终端102的UI单元301接收到与数据格式相关的打印处理请求后,在步骤S501中,格式存储服务器101搜索存储的管理信息310以找到与该请求相关的格式数据311。该请求包括发出该请求的用户的用户ID以及标识所述格式数据311的信息。此外,当该请求是一个打印执行请求时,该请求还包括一个目的地打印机的名称,它是指定图4A和4B中示出的打印机对象404之一的一个打印机标识符,以及与该目的地打印机向关联的一个Windows打印机对象名称。
在步骤S502中,参考认证信息312(后面将参考图15详细描述),基于在打印请求中包括的用户ID和目的地打印机名称、格式数据311以及图15中所示的资源信息,确定所述目的地打印机是否具有特权来执行步骤S501中搜索找到的格式数据311的打印。更具体地,从以数据库格式存储的访问控制信息(参考图15)中搜索在步骤S501中接收的请求中所包含的用户ID,并且确定该请求所指定的处理是否被允许。更具体的说,确定包含在该请求中的用户ID是否包含在该指定的格式数据(文档标识符)的访问控制信息中以及该目的地打印机(打印机标识符)的访问控制信息中。然后,根据所述确定,确定是否允许执行该打印请求。当该请求中的该用户ID被包含在所述格式数据的访问控制信息及所述目的地打印机的访问控制信息中时,步骤S503的结果为是。
当确定所述目的地打印机没有打印该格式数据的特权时,退出该过程。在此情况下,指示所述目的地打印机不具有打印该格式数据的特权的错误信息根据来自格式存储服务器101的报告显示在客户终端102的UI单元301上。
另一方面,当在步骤S503确定该目的地打印机具有打印该格式数据的特权时,处理进行到步骤S504。在步骤S504,通过客户终端102的UI单元301指定的识别格式数据打印的所述标识符、打印属性和目的地打印机名称(打印机标识符)被发送(报告)至输出目的地确定单元308。该报告在所述打印数据被输入至打印作业控制器309之前被发送到打印作业控制器309。而且,该标识符对应于指示由输出目的地确定单元308从假脱机程序307接收的打印作业是否是由格式存储单元304所管理的作业的信息。
在步骤S505,在步骤S504被发送到输出目的地确定单元308的该打印作业的标识符被附加(设置)在该打印作业的文件名称上,并且该格式数据通过GDI 306被传送到假脱机程序307,由此产生一项打印作业。
打印作业输出的流程6是表示由假脱机程序307转换的所述打印数据根据图5示出的流程产生的打印作业被发送到打印机103的过程的流程图。在该流程图中,步骤S601到S604由输出目的地确定单元308执行,步骤S605到S608由打印作业控制器309执行。
在步骤S601,在操作系统的假脱机程序307中设置的从第一打印机对象401的输出端口403输出的打印作业数据被输入。更具体地说,由假脱机程序307产生的打印数据和打印作业信息通过输出端口403被接收。该打印作业信息包括打印作业名称等。
在步骤S602,输出目的地确定单元308检测一个被附加在所述打印作业名称上的标识符,其指示格式数据的打印。
在步骤S603,确定该标识符是否被附加。如果在步骤S603确定标识符被附加,则在步骤S604,根据之前报告的目的地打印机名称,从第一打印机对象401的输出端口403输出的打印数据的输出目的地被确定。更具体的,对应于所述目的地打印机名称(在图5所示的步骤S504中,与所述标识符一起从输出目的地信息发送单元305接收)的目的地打印机404被搜索并被确定为所述输出目的地。
在步骤S605,该打印数据被假脱机(SPOOLED)在打印队列405中。
在步骤S606,所述打印数据的打印属性根据在图5所示的步骤S504中从输出目的地信息发送单元305与标识符一起接收的打印属性而被重写。然后,在步骤S607,所述打印数据根据目的地端口406的设置被发送(输出)到打印机103。实际上,所述打印数据所被设置的打印机103是根据第二打印机对象404的所述设置被确定。
另一方面,当一项打印作业从一个通常的打印应用程序(如MS-Word)而不是从格式存储单元304中被输入至假脱机程序307的打印机对象401时,识别该打印作业的标识符不被附加。因此,在图6所示的步骤S603,确定标识符没有被附加。
当在步骤S608确定标识符没有被检测到时,在步骤S608,打印数据被输出到在一个输出目的地的一个打印设备,其对应于具有与第一打印机对象相同的标识符(名称)的第二打印机对象。更具体的说,一个默认的目的地打印机(在该实施方式中,一个具有与假脱机程序307上的打印机对象401的逻辑打印机名称相同的目的地打印机名称的目的地打印机)被选择。该过程然后进行到步骤S605。
输出目的地管理信息的管理方式图7示出了由打印作业控制器309管理的输出目的地管理信息313的数据结构。
该输出目的地管理信息313包括一个目的地打印机信息列表701。包括在该列表中的每条目的地打印机信息对应于一个目的地打印机404,并包括一个目的地打印机名称、默认的打印机属性(包括盒号等),以及目的地端口的参考信息。
该目的地端口信息是与所述目的地端口406相关的信息。当在如前所述的步骤S607中发送打印数据时,该目的地端口信息的设置被使用。所述目的地端口信息包括目的地端口名称、打印机103的IP地址、型号等。另外,所述目的地端口信息还包括用于发送打印数据的协议类型(LPR或RAW),以及当协议类型为LPR所使用的LPR队列名称或当协议类型为RAW时所使用的端口号。另外,所述目的地端口信息还包括表示作业完成模式的信息,其中作业完成模式指示了打印作业的完成是在完成发送打印数据之后还是在打印机103的纸张弹出之后。另外,目的地端口信息还包括表示作业传送模式的信息,其中作业传送模式指示了在假脱机时将打印数据发送给打印机103,还是在假脱机结束之后发送打印数据。另外,目的地端口信息还包括表示调度模式的信息,其中调度模式指示了是在主机侧还是在打印机侧调度打印数据到打印机103的发送。
假脱机程序307的状态显示方式图8A是示出了OS所提供的假脱机程序的UI 801所显示的假脱机程序307的状态的图。在图8A中,右侧的图标802表示了在Windows的假脱机程序307中所注册的打印机对象401。实际上,因为注册了两个打印机对象401,在图8A是所示的屏幕中显示两个图标。但是,为了描述的简便,在图8A中仅显示了一个图标。另一方面,显示了表示打印机对象401的一个图标(或两个图标)。但是,在打印作业控制器309中注册了多个目的地打印机(图4A和4B中的1000个目的地打印机)。图标802的名称对应于在后面所述的步骤S1303中被改变的名称。
图8B示出了当使用图8A中所示的打印机-1从普通的文档创建软件(如MS-WORD)或图像创建软件发出打印指令时,普通应用程序所表现的打印对话框。当通过图8B中所示的打印对话框发出一个打印指令时,在图6中所示的步骤S603导致NO的打印作业被输入给打印机对象401。另一方面,图10所示的打印对话框与具有格式生成单元303的应用程序相关联,并对应于格式存储服务器101的显示单元上显示的设置屏幕。当通过该打印对话框发出一个打印指令时,格式存储单元304附加一个指示了从格式生成单元303发出该打印作业的标识符作为打印作业名称。
目的地打印机列表的显示方式图9是示出了在客户终端102的UI单元301上显示的目的地打印机列表以及格式列表的图。
在目的地打印机列表显示区域901中,以分级树的形式对各个站点显示了打印作业控制器309所管理目的地打印机名903的列表。在图9中,站点A、B、C,...对应于通过随后描述的图12B中的输入部分1207输入的目的地。另外,图9中的打印机-A1、打印机-A2,...对应于通过随后描述的图12B中的输入部分1208设置的目的地打印机名称。
在该实施方式中,假定打印作业控制器309控制1000个目的地打印机,因此在目的地打印机列表显示区域901中列出了1000个打印机。
在格式列表显示区域902中,显示了由格式存储单元304所管理的格式数据的列表。除了显示存储在格式存储服务器101中的格式数据311的列表的功能外,UI单元301还具有将带有格式数据311的规格、目的地打印机和打印属性的打印请求发送给格式存储服务器的功能。
客户终端的设置屏幕图10A和10B示出了当从客户终端102的UI单元301向格式存储服务器101发送打印请求时使用的打印属性指定屏1001和打印选项指定屏1002。当打印属性指定屏1001中的“打印选项”按钮被按下时,显示打印选项指定屏1002。很显然,打印选项指定屏1002可以作为打印属性指定屏1001的一部分进行显示。打印属性指定屏1001中的打印属性设置用于在步骤S605重写打印属性。打印属性指定屏1001中的打印属性设置被反映在从假脱机程序307输出的页描述语言格式的打印数据上,如附图4A和4B所示。例如,该打印属性被用于当重新打印曾经被以页描述语言格式存储的数据时改变特定的打印属性。
可以在打印属性指定屏1001中指定的打印属性是普通的打印属性,如页面范围、复本数量、双面打印、及送纸模式。在打印属性指定屏1001中指定的打印属性由格式存储单元304通过GDI 306被附加到打印作业中(图5所示的步骤S505)。附加到打印作业中的所述打印属性被反映在假脱机程序307产生的打印数据中。
另一方面,根据本实施方式,可以在打印选项指定屏1002中指定的打印属性(即存储到打印机盒、盒号以及打印作业优先级的指定)是特定于所述格式打印系统的。关于存储到盒和盒号的指定是通过打印作业控制器309重写打印数据而反映(图6所示的步骤S605)。打印机作业的优先级是在打印作业控制器309调度向UI单元301发送打印数据时考虑的(图6所示的步骤S607)。
通过打印属性指定屏1001和打印选项指定屏1002指定的设置被用于改变关于以页描述语言格式作为格式数据存储的打印作业数据的特定项目的设置。通常,对于以页描述语言格式存储的数据,能够改变的设置参数是有限的。打印选项指定屏1002包括那些即使在打印数据被转换为页描述语言格式之后仍能够改变的特定项目。
打印机在格式系统中注册的流程11是目的地打印机404在格式系统中注册时客户终端102执行的处理的流程图。基本上,该过程对应于生成与第一打印机对象401的输出端口403相关的第二打印机对象404的过程。
首先,用户生成一个在Windows假脱机程序307中注册的打印机对象401。在生成该打印机对象401的过程中,用户首先通过图12A所示的屏幕添加或新注册一个目的地端口406。
在步骤S1101,一个设备选择屏(未示出)被显示来提示用户选择一个打印机103的型号(机器类型),选择的型号被显示在图12A的1205区域。
所添加的目的地端口406的设置在步骤S1102显示的目的地端口添加屏1201和步骤S1103中显示的目的地端口详细设置屏(未示出)中输入(图12A)。目的地端口添加屏1201允许进行图7所示的项目702的设置。而且,该目的地端口详细设置屏允许图7所示的项目703的设置。
在步骤S1104,目的地打印机添加屏被显示以允许进行所添加的目的地打印机404的打印机信息的设置。
在步骤S1105,设置确认屏被显示。该确认屏包括目的地端口和目的地打印机(打印机对象404)的设置。该设置确认屏在步骤S1105显示之后,如果用户输入一个最终的指令,该目的地端口和目的地打印机的添加被实际执行。
在格式系统中注册打印机的设置屏幕图12A示出了在屏幕转换过程中(图11所示的步骤S1102)显示的目的地端口添加屏1201,图12B示出了目的地打印机添加屏1202(图11所示的步骤S1104)。
图12A所示的目的地端口添加屏1201用于在打印作业控制器309中设置一个分配端口406。但是,当与该分配端口406相关的假脱机程序307的输出端口403(打印机对象401)还没有生成时,目的地端口添加屏1201被用作一个生成所述输出端口403的设置屏。在该实施方式中,通过图12B中目的地打印机添加屏1202中的输入部分1208输入的所述目的地打印机名称被指定为假脱机程序307的打印机名称。
在目的地端口添加屏1201中,设备选择屏选择的型号(图11所示的步骤S1101)被显示在设备产品名称区域1205,打印机103的IP地址被输入到输入区1203,目的地端口名称被输入到端口名称区1204。在目的地端口添加屏1201中输入的信息和在目的地端口详细设置屏输入的信息(图11所示的步骤S1103)被存储在图7所示的目的地端口信息中。
图12B所示的目的地打印机添加屏1202用于设置图4A和4B所示的打印作业控制器309所管理的目的地打印机404(打印机对象)。当图12A中的“下一步”按钮被按下,图12B所示的该目的地打印机添加屏1202被显示。在该目的地打印机添加屏1202中,在图12的1204区输入的端口名称被显示。而且,用于产生可由具有在图12A选择的产品名称1205的打印机打印的页描述语言数据的Windows打印机对象的选择列表1206被显示。
在该目的地打印机添加屏1202中,用于输入打印机作业的Windows打印机对象名称1206被选择,并且目的地1207(对应于图9中的“站点A”,在图12B中为“INC Kosugi Office”)、目的地打印机名称1208、和用于指定盒打印的默认的盒号1209被输入。已被输入的所述信息被存储在图7所示的目的地打印机信息中。
在格式系统中注册打印机的流程图13是表示根据通过基于图11所示的屏幕转换流程的过程输入的信息实际添加一个目的地端口和一个目的地打印机的流程的流程图。图13对应于生成与第一打印机对象401的输出端口403相关的第二打印机对象404的过程。
首先,在步骤S1301,检查与在目的地打印机添加屏1202的1206区域选择的假脱机程序307的打印机对象401具有相同名称的目的地打印机404是否已经存在。该检查对应于确定另一个第二打印机对象是否已经与输出端口403相关注册的过程。更具体的说,是检查目的地打印机404是否第一次与在1206区域选择的假脱机程序307的打印机对象401相关联地生成。如果目的地打印机404之前已经被生成,在后面描述的步骤S1303中,该打印机对象401的打印机名称已经变为与目的地打印机404相同,这样该目的地打印机404的先前生成能够被识别。
如果确认在步骤S1301中具有相同名称的目的地打印机404已经存在,过程进行到步骤S1305。
另一方面,如果在步骤S1301中确认具有相同名称的目的地打印机404不存在,在步骤S1302到步骤S1304,目的地打印机第一次与目的地打印机添加屏1202中选择的假脱机程序307的打印机对象401相关联地被添加。
在步骤S1302,与目的地端口添加屏1201中输入的目的地端口名称具有相同名称的输出端口403被添加。
在步骤S1303,打印机对象401的名称改变为与目的地打印机添加屏1202中输入的目的地打印机名称(所述第二打印机对象的标识符(名称))。
在步骤S1304,随着步骤S1303中名称的改变,在步骤S1302被添加到假脱机程序307的输出端口403被设置为打印机对象401的输出端口。
在步骤S1305,检查在目的地端口添加屏1201输入的目的地端口406是否已经存在。如果在步骤S1305中确定该目的地端口406已经存在,则过程进行到步骤S1307。另一方面,如果步骤S1305的结果是“是”,则一个目的地打印机被额外地注册在已经生成的打印机对象401下。
如果在步骤S1305中确定在目的地端口添加屏1201中输入的目的地端口406不存在,则在步骤S1306,根据在目的地端口添加屏1201和目的地端口详细设置屏(图11所示的步骤S1103)中输入的信息,该目的地端口406被额外地注册。而且,在步骤S1307,目的地打印机404根据在目的地打印机添加屏1202中输入的信息而被添加。
如果步骤S1301的结果为“否”,则在步骤S1302和S1306,具有相同名称的输出端口403和具有相同名称的目的地端口406分别被额外地注册到假脱机程序307和打印作业控制器309。在步骤S1303,假脱机程序307的打印机对象的名称变为步骤S1307中添加的目的地打印机的名称。因此,与假脱机程序307的打印机对象401和输出端口403具有相同名称的目的地打印机404和与之相关的目的地端口406存在于打印作业控制器309中。该目的地打印机404作为从普通的应用程序输入至打印机对象401的一项打印作业的输出目的地。也就是说,通过步骤S1303,即使当打印指令是从普通的应用程序发送的并且打印数据被输入到打印作业控制器309时,该打印数据可被发送(输出)到如图8B所示的由用户指定的输出目的地。
设置假脱机程序307的打印机对象和输出端口403的名称与目的地打印机404和目的地端口406相同的理由如下。当一个打印指令从一个普通的应用程序被发送时,不可能识别目的地打印机404和目的地端口(在UI上没有显示)。因此,通过使用假脱机程序307的打印机对象401和输出端口403的名称,可以允许识别该打印是利用所述目的地打印机404和目的地端口406作为输出目的地而执行的。
在步骤S1302中添加的输出端口403具有与在目的地端口添加屏1201中输入的目的地端口的名称相同的名称。但是,实际操作中,打印数据被传送到输出目的地确定单元308。
目的地打印机的删除流程图14是表示从客户终端102的UI单元301中删除目的地打印机404的流程的流程图。在步骤S1401,检查具有与在删除请求中指定的目的地打印机404相同名称的打印机对象401是否存。如果在步骤S1401中确定这样的打印机对象401不存在,则过程进行到步骤S1405。
另一方面,如果在步骤S1401中确定具有与在删除请求中指定的目的地打印机404相同名称的打印机对象401存在,则在步骤S1402检查是否存在除了删除请求中指定的目的地打印机以外的任何目的地打印机404。如果在步骤S1402中确定这样的目的地打印机404存在,则退出该过程。在该实施方式中,如果存在任何其它的目的地打印机,该与打印机对象401具有相同名称的目的地打印机404的删除被禁止。如果在步骤S1402中确定除了删除请求中指定的目的地打印机以外的任何目的地打印机404不存在,假脱机程序307的打印机对象401的输出端口403改变为特定的输出端口如LPT1。然后,在步骤S1404中,所述改变之前的输出端口403被删除。在步骤S1405,在删除请求中指定的目的地打印机404被删除。然后,在步骤S1406,目的地端口406被删除。
认证信息315数据的保持方式图15是表示在图5所示的步骤S502中被引用的认证信息315的数据结构的框图。参考图15,对于每一个代表第二打印机对象的打印机标识符,以及对于每一个文档标识符,代表允许或禁止使用的资源信息与用户ID相关地被管理。也就是说,该认证信息315受认证信息管理单元的管理。
更具体的说,认证信息包括访问控制信息的列表,该访问控制信息包括资源类型、资源名称、访问类型、认证类型和用户ID列表。
资源类型指示了由格式存储服务器所管理的资源的类型。在此情况下,资源类型指示格式数据或目的地打印机。
资源名称指示了格式数据中包含的所有者名称。在目的地打印机的情况下,资源名称指示了目的地打印机名称。在如图15中所示的情况中,资源类型是格式数据。
访问类型指示了执行一个请求(如读、写或运行(exec))的访问特权。认证类型指示了对访问类型所指示的访问特权的允许或拒绝。用户ID列表是表示与访问控制相关的用户的用户ID列表。在图5中所示的步骤S502中,与所述请求相关的用户ID是从与所述请求相关的资源的访问控制信息中搜索,从而检查对应于该请求的处理的执行是否允许。
第二具体实施方式
在上述如图8中所示的第一具体实施方式
中,仅一个打印机对象与具有打印作业控制器309的假脱机程序307相关地在OS中注册作为输出目的地端口。但是显然,本发明并不限于此情况。
例如,当格式打印系统管理多个不同型号(机器类型)的打印机103时,对应于所述型号(机器类型)数目的多个打印机对象401被创建在假脱机程序307中。
在任何情况下,都不需要在假脱机程序307中超过需要地注册打印机对象。因此,可以实现在不增加服务器成本的情况下提供多个打印机的打印系统。
第三具体实施方式
在上述具体实施方式
中,在步骤S502中,在打印请求中包含的用户ID、目的地打印机标识符和格式数据的基础上,以及在图15中所示的资源信息的基础上,确定资源的使用被允许还是禁止。但是,本发明并不限于此情况。例如,可以仅关于目的地打印机标识符或格式数据来定义允许使用或禁止使用。在此情况下,在如图15中所示,关于第一具体实施方式
而描述的资源信息中,用户ID与目的地打印机(打印机标识符)或者格式数据(文档标识符)相关。也即,在资源信息中并不与用户ID相关联的受限制的资源对任何用户都是可获得的。
其它具体实施方式
本发明可被用于由多个装置构成的系统,或者用于独立的装置。例如,本发明可被用于打印机、传真机、个人计算机或包括服务器和客户端的计算机系统。
本发明的目标是通过直接或远程地向一个系统或一个装置提供实现了上述具体实施方式
的功能的软件程序,使得该系统或装置的计算机被允许读取或执行该程序代码。
因此,安装在计算机上以实现根据上述具体实施方式
的处理功能的程序代码处于本发明的范围内。也即,用于实现处理功能的计算机程序属于本发明的范围。
在该情况下,程序可以是目标代码,由解释器执行的程序,提供给操作系统的脚本数据等,只要它可以作为程序而发挥作用。
用于提供该程序的记录介质可以是软盘、硬盘、光盘、磁光盘、MO、CD-ROM、CD-R、CD-RW、磁带、非易失存储卡、ROM、DVD(DVD-ROM或DVD-R)等。
或者,可以通过使用客户端计算机上的浏览器访问互联网上的网页,并从该网页将实施本发明的计算机程序或包括压缩程序并具有自动安装功能的文件下载到记录介质中如硬盘。还或者,实施本发明的程序的程序代码可被分割到多个文件中,并且这些文件可被从不同网页下载。也即,允许大量用户下载用于通过计算机实现处理功能的程序文件的WWW服务器可作为本发明的一个特性。
另外,实施本发明的程序可被加密并存储在存储介质如CD-ROM中以向用户发布。在该情况下,满足预定条件的用户被允许通过互联网从网页下载用于解密的密钥信息,使用该密钥信息来执行加密程序并将程序安装在计算机上。
另外,除了计算机读取可执行程序以实现上述具体实施方式
的功能外,可通过运行在计算机上的操作系统等具体实施方式
的功能,根据程序执行部分或全部实际处理。
另外,从记录介质中读取的程序可被写入与该计算机相连的功能扩展板或功能扩展单元的存储器中,使得功能扩展板或功能扩展单元的CPU等根据程序执行部分或全部实际处理,从而实现上述具体实施方式
的功能。
尽管是参考典型的具体实施方式
对本发明进行的描述,但应该理解本发明并不限于所披露的典型具体实施方式
。下述权利要求的范围符合最宽泛的解释,以便包括所有修改、等价结构和功能。
权利要求
1.一种信息处理设备,具有运行于其上的操作系统,该信息处理设备包括打印作业控制器,被配置为接收从第一打印机对象的输出端口输出的打印数据的输入,该第一打印机对象在该操作系统的假脱机程序中设置,其中该打印作业控制器包括识别单元,被配置为响应于一个打印请求识别一个打印机标识符,该打印机标识符指定由该打印机作业控制器管理的多个第二打印机对象之一;确定单元,被配置为根据该识别单元识别的打印机标识符,确定从第一打印机对象的输出端口输出的所述打印数据的一个输出目的地;输出单元,被配置为根据由该确定单元确定的第二打印机对象的设置,输出该打印数据至一个打印装置。
2.权利要求1所述的信息处理设备,还包括一个生成单元,被配置为生成与所述第一打印机对象的所述输出端口相关的一个第二打印机对象,其中该生成单元被配置为当没有与该输出端口相关的其它第二打印机对象被注册时,设置与该输出端口相关的第一打印机对象的标识符为该指定的第二打印机对象的所述标识符。
3.权利要求2所述的信息处理设备,还包括一个作业名称设置单元,被配置为设置一个标识符为打印作业的名称,该标识符指示该打印作业来自一个特定的源,其中所述确定单元被配置为,当所述确定单元没有检测到该标识符时输出该打印数据至位于如下所述的输出目的地的打印装置,该输出目的地与具有与所述指定的第一打印机对象相同的标识符的第二打印机对象相关联。
4.权利要求1所述的信息处理设备,其中该识别单元被配置为在所述打印数据通过所述输出端口输入至所述打印作业控制器之前识别所述打印机标识符。
5.权利要求1所述的信息处理设备,还包括资源管理器,被配置为管理表示允许或禁止使用的设置的资源信息,其与每个用户ID相关联,与每个第二打印机对象的打印机标识符或文档标识符相关;认证单元,被配置为根据包含在该打印请求中的用户ID、打印机标识符及文档标识符以及根据该资源信息而确定是否允许该打印请求的执行。
6.权利要求1所述的信息处理设备,还包括保持单元,被配置为以页描述语言格式保持所述打印数据以使得重新打印该打印数据的指令被允许;显示控制器,被配置为在显示单元上显示设置屏幕,所述设置屏幕用于改变关于被保持在该保持单元中的所述打印数据的特定项目的设置;重新打印单元,被配置为以通过该设置屏幕进行的设置重新打印所述打印数据,该设置以页描述语言格式反映在所述打印数据上。
7.一种用于信息处理设备的打印控制方法,该信息处理设备具有运行于其上的操作系统,该打印控制方法包括输入步骤,使得打印作业控制器接收从第一打印机对象的输出端口输出的打印数据,该第一打印机对象在该操作系统的假脱机程序中被设置;识别步骤,使得该打印作业控制器响应于一个打印请求识别一个打印机标识符,该打印机标识符指定被该打印作业控制器管理的多个第二打印机对象之一;确定步骤,使得该打印作业控制器根据在识别步骤识别的所述打印机标识符,确定从第一打印机对象的输出端口输出的所述打印数据的一个输出目的地;输出步骤,使得该打印作业控制器根据所述确定步骤中确定的第二打印机对象的设置,输出所述打印数据至一个打印装置。
8.权利要求7所述的打印控制方法,还包括生成步骤,其生成与所述第一打印机对象的所述输出端口相关的一个第二打印机对象,其中在该生成步骤中,当没有与该输出端口相关的其它第二打印机对象被注册时,与该输出端口相关的第一打印机对象的标识符被设置为该指定的第二打印机对象的标识符。
9.权利要求8所述的打印控制方法,还包括作业名称设置步骤,其设置一个标识符为打印作业的名称,该标识符指示该打印作业来自一个特定的源,其中在该确定步骤中,当该确定单元没有检测到该标识符时,输出该打印数据至位于如下所述输出目的地的打印装置,该输出目的地与具有与所述指定的第一打印机对象相同的标识符的第二打印机对象相关联。
10.权利要求7所述的打印控制方法,其中在该识别步骤中,在所述打印数据通过所述输出端口被输入至所述打印作业控制器之前识别所述打印机标识符。
11.权利要求7所述的打印控制方法,还包括资源管理步骤,其管理资源信息,所述资源信息包括对每个用户ID而言与打印机标识符或文档标识符相关联的、对所述多个第二打印机对象中的每一个的使用允许或禁止的设置;以及认证步骤,根据包含在所述打印请求中的用户ID、打印机标识符及文档标识符以及所述资源信息而确定是否允许所述打印请求的执行。
12.权利要求7所述的打印控制方法,还包括保持步骤,以页描述语言格式保持所述打印数据以使得重新打印所述打印数据的指令被允许;显示控制步骤,在显示单元上显示设置屏幕,所述设置屏幕用于改变关于被保持在该保持单元中的该打印数据的特定项目的设置;重新打印步骤,以通过所述设置屏幕进行的设置重新打印所述打印数据,所述设置以页描述语言格式反映在所述打印数据上。
全文摘要
例如,当大量打印机对象在Windows
文档编号G06F3/12GK101082856SQ20071010646
公开日2007年12月5日 申请日期2007年5月29日 优先权日2006年5月29日
发明者木村满夫 申请人:佳能株式会社