信息处理装置、安装系统和安装方法转让专利

申请号 : CN201610541473.1

文献号 : CN106354442B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 平野佑树

申请人 : 株式会社理光

摘要 :

本发明公开了一种信息处理装置、安装系统和安装方法。该信息处理装置包括:检测器,用于检测作为已安装的第一驱动的连接目的地的第一打印机是否已经被改变为第二打印机;信息获取器,用于当所述第一打印机被改变时,从第一驱动获取第一信息并从第二打印机获取第二信息;查询器,用于请求将用于所述第二打印机的驱动的信息以及所述第一和第二信息发送到服务器,并接收包括针对第二打印机的驱动的信息的响应;确定器,用于从由该响应指示的驱动当中确定待安装的第二驱动;驱动获取器,用于从服务器获取第二驱动;和安装器,用于继承所述第一驱动的打印设置以安装所述第二驱动。

权利要求 :

1.一种信息处理装置,包括:

通信单元,其用于与服务器进行通信;

检测器,其用于检测作为已安装的第一驱动的连接目的地的第一打印机是否已经被改变为第二打印机;

信息获取器,其用于当所述检测器检测到所述第一打印机被改变时,从所述第一驱动获取作为关于第一驱动的信息的第一信息并且从所述第二打印机获取作为关于第二打印机的信息的第二信息;

查询器,其用于通过所述通信单元将请求用于所述第二打印机的驱动的信息的查询请求以及所述第一信息和所述第二信息一起发送到服务器,并且接收查询结果信息,所述查询结果信息是对于所述查询请求的响应并且包括用于所述第二打印机的驱动的信息,所述查询结果信息由所述第一信息和所述第二信息确定;

确定器,其用于从由所述查询结果信息所指示的驱动当中确定待安装的第二驱动;

驱动获取器,其用于通过所述通信单元从服务器获取所述第二驱动;以及安装器,其用于在所述第二驱动的安装期间,将所述第一驱动的打印设置传送给通过所述驱动获取器获取的所述第二驱动的打印设置。

2.根据权利要求1所述的信息处理装置,其中,

所述第一信息包括通过所述第一驱动转换的页面描述语言的信息;

所述查询结果信息包括通过用于所述第二打印机的驱动所转换的页面描述语言的信息;

当所述查询结果信息包括用于所述第二打印机的驱动的页面描述语言与所述第一信息的页面描述语言相匹配的驱动时,所述确定器确定该驱动是所述第二驱动。

3.根据权利要求1所述的信息处理装置,其中,所述查询器接收所述查询结果信息,所述查询结果信息包括通过所述服务器已经确定与所述第一驱动的打印设置是否存在兼容性的驱动的信息。

4.根据权利要求1所述的信息处理装置,还包括:兼容性确定器,其用于确定与在所述查询结果信息中用于驱动的所述第一驱动的打印设置是否存在兼容性。

5.根据权利要求3或4所述的信息处理装置,其中,当与所述第一驱动的打印设置存在兼容性时,所述安装器继承所述打印设置以安装所述第二驱动。

6.根据权利要求1所述的信息处理装置,其中,当所述第一打印机被改变时,所述检测器检测到所述第一打印机已被改变。

7.根据权利要求1所述的信息处理装置,其中,

当操作第一驱动的功能时,

所述检测器检测到第一打印机是否已经被改变,以及

所述信息获取器获取第一信息和第二信息。

8.根据权利要求1所述的信息处理装置,其中,

所述第一信息包括应用所述第一驱动的设备的名称的信息,所述第二信息包括所述第二打印机的名称的信息,

所述信息处理装置还包括确定器,所述确定器用于确定由第一信息指示的设备的名称与由第二信息指示的所述第二打印机的名称是否匹配,并且当确定器确定由第一信息指示的设备的名称与由第二信息指示的所述第二打印机的名称相匹配时,所述查询器发送查询请求。

9.一种安装系统,包括:

通信单元,其用于与服务器进行通信;

检测器,其用于检测作为已安装的第一驱动的连接目的地的第一打印机是否已经被改变为第二打印机;

信息获取器,其用于当所述检测器检测到所述第一打印机被改变时,从所述第一驱动获取作为关于第一驱动的信息的第一信息并且从所述第二打印机获取作为关于第二打印机的信息的第二信息;

查询器,其用于通过所述通信单元将请求用于所述第二打印机的驱动的信息的查询请求以及所述第一信息和所述第二信息一起发送到服务器,并且接收查询结果信息,所述查询结果信息是对于所述查询请求的响应且包括用于所述第二打印机的驱动的信息,所述查询结果信息由所述第一信息和所述第二信息确定;

兼容性确定器,其用于确定与在所述查询结果信息中用于驱动的第一驱动的打印设置是否存在兼容性;

确定器,其用于从由所述查询结果信息所指示的驱动当中确定待安装的第二驱动;

驱动获取器,其用于通过所述通信单元从服务器获取所述第二驱动;以及安装器,其用于根据兼容性确定器的确定结果将所述第一驱动的打印设置传送给所述第二驱动的打印设置,以安装通过所述驱动获取器获取的所述第二驱动。

10.一种安装方法,包括:

检测作为已安装的第一驱动的连接目的地的第一打印机是否已经被改变为第二打印机;

当检测到所述第一打印机被改变时,从所述第一驱动获取作为关于第一驱动的信息的第一信息并从所述第二打印机获取作为关于第二打印机的信息的第二信息;

通过通信单元将请求用于所述第二打印机的驱动的信息的查询请求以及所述第一信息和所述第二信息一起发送到服务器;

接收查询结果信息,所述查询结果信息是对于所述查询请求的响应并且包括用于所述第二打印机的驱动的信息,所述查询结果信息由所述第一信息和所述第二信息确定;

从由所述查询结果信息所指示的驱动当中确定待安装的第二驱动;

通过所述通信单元从服务器获取所述第二驱动;以及

在所述第二驱动的安装期间,将所述第一驱动的打印设置传送给所述第二驱动的打印设置。

说明书 :

信息处理装置、安装系统和安装方法

技术领域

[0001] 本发明涉及一种信息处理装置、安装系统和安装方法。

背景技术

[0002] 为了使打印机在个人计算机(PC)上打印数据,需要安装执行转换为对应于所述打印机的页面描述语言(PDL)的打印机驱动(例如打印机控制语言的(PCL)、PostScript或便携式文档格式(PDF))。打印机的打印时间的打印设置信息能与指示由打印机驱动控制的打印机的打印机图标(逻辑打印机)相关联,并且打印机可以在打印机的打印时间使用打印设置。例如,在Windows(注册商标)中,在通过操作打印机图标而显示的属性屏幕上,可以编辑与所述打印机图标相关联的所述打印机驱动的打印设置。
[0003] 当使用具有不对应于所述打印机PDL的打印机驱动执行打印时,打印机不能识别打印数据,从而导致打印错误。在正常情况下,购买打印机时,执行转换为对应于打印机的PDL的打印机驱动被包括在记录介质(如压缩光盘只读存储器(CD-ROM))中,并且不会发生由于在对应于打印机的PDL和打印机驱动的PDL之间的不匹配而引起的打印错误。相反,当用户安装由Web服务器分发的打印机驱动时,需要选择并下载具有对应于打印机的PDL的打印机驱动。
[0004] 所述打印机可以支持多个PDL。在此情况下,用户可以选择具有支持的PDL中的任何一个PDL的打印机驱动并安装所述打印机驱动。但是,对于执行转换为每个PDL的每个打印机驱动,用于打印的可用功能可能不同。所述打印机驱动所支持的用于打印的可用功能通常取决于打印机的类型或PDL。出于这个原因,着眼于打印设置的传送(传递),执行转换为不同PDL的打印机驱动很可能不能和传送(传递)的打印设置一起被安装。相反,执行转换为相同PDL的打印机驱动则很可能与传送的打印设置一起被安装。在Windows的情况下,例如,当新打印机替换旧打印机时,用户通常会删除旧打印机的打印机图标以删除旧打印机的打印机驱动,然后安装新的打印机驱动。在此情况下,所述旧打印机的打印机驱动的打印设置信息被丢弃。但是,为了避免这种情况,Windows包括如下功能:使待选择或待安装的新的打印机驱动具有与通过用户操作而传送的所述打印机图标相关联的打印机驱动的打印设置。
[0005] 虽然前面描述了手动选择和安装新的打印机驱动,但是开发了如下系统:根据客户端的系统信息和打印装置固有的信息来获取打印机驱动,并且将所述打印机驱动和安装信息一起发送到客户端,从而自动安装最适合客户端环境的打印机驱动(参考日本专利申请公开号No.2007-086969)。
[0006] 但是,当替换打印机时,虽然在日本专利申请公开号No.2007-086969中公开的所述系统能使客户端安装最适合的打印机驱动,但是所述系统具有现有打印机驱动的打印设置不能被适当地传送的问题。

发明内容

[0007] 根据本发明的一个方面,信息处理装置包括:通信单元,其用于与服务器进行通信;检测器,其用于检测作为已经安装的第一驱动的连接目的地的第一打印机是否已经被改变为第二打印机;信息获取器,其用于当所述检测器检测到所述第一打印机被改变时,从所述第一驱动获取作为关于第一驱动的信息的第一信息并从所述第二打印机获取作为关于第二打印机的信息的第二信息;查询器,其用于通过通信单元将请求用于所述第二打印机的驱动的信息的查询请求以及所述第一信息和所述第二信息一起发送到服务器,并接收查询结果信息,所述查询结果信息是对于所述查询请求的响应并且包括用于所述第二打印机的驱动的信息;确定器,其用于从由所述查询结果信息所指示的驱动当中确定待安装的第二驱动;驱动获取器,其用于通过所述通信单元从服务器获取所述第二驱动;以及安装器,其用于继承所述第一驱动的打印设置以安装通过所述驱动获取器获取的所述第二驱动。

附图说明

[0008] 图1是表示第一实施例中的安装系统的整体配置的示例的示意图;
[0009] 图2是表示客户端和服务器的硬件配置的示例的示意图;
[0010] 图3是表示打印机屏幕的示例的示意图;
[0011] 图4是表示打印机驱动的打印设置的屏幕的示例的示意图;
[0012] 图5A和图5B是表示第一实施例的信息处理装置中的打印机驱动安装操作的简要示意图;
[0013] 图6是表示第一实施例中客户端的功能块配置的示例的示意图;
[0014] 图7是表示驱动信息的示例的示意图;
[0015] 图8是表示连接目的地信息的示例的示意图;
[0016] 图9是表示第一实施例的所述服务器的功能块配置的示例的示意图;
[0017] 图10是表示具体设备的驱动列表的示例的示意图;
[0018] 图11是表示根据第一实施例在安装系统中进行打印机驱动安装操作的示例的流程图;
[0019] 图12是表示根据第一实施例的变形例在安装系统中进行打印机驱动安装操作的示例的流程图;
[0020] 图13是表示第二实施例的客户端的功能块配置的示例的示意图;
[0021] 图14是表示根据所述第二实施例的变形例,在安装系统的打印机驱动安装操作中通过打印机驱动执行操作的示例的流程图;以及
[0022] 图15是表示根据所述第二实施例的变形例,在安装系统的打印机驱动安装操作中通过安装器(安装包,installer)执行操作的示例的流程图;
[0023] 附图描述本发明的示例性实施例,但不应被解释为限制其范围。相同或相似的参考标记指示贯穿各附图的相同或类似的组件。

具体实施方式

[0024] 本文中使用的术语仅用于描述具体实施例的目的,并非限制本发明。本文中所使用的单数形式“一”,“一个”和“所述”也包括复数形式,除非上下文另外明确指出。在描述附图中所示的优选实施例时,为了清楚可以使用特定的术语。但是,该专利说明书的公开内容并不限于所选择的特定术语,应当理解的是每个特定元素包括所有具有相同的功能,以类似的方式操作,并且实现了类似结果的技术等同物。本发明的示例性实施例将参考附图在下文中予以详细描述。
[0025] 下面参考图1到图15详细描述本发明的计算机程序、信息处理装置、安装系统和安装方法的实施例。本发明并不被下述实施例所限制,并且下述实施例中的组件也包括:本领域技术人员能够很容易想到的组件、基本相同的组件和所谓均等的范围内的组件。此外,在不偏离下述实施例的本质的前提下可以对组件进行各种省略、替换、修改和组合。
[0026] 第一实施例
[0027] 安装系统的整体配置
[0028] 图1是表示第一实施例中的安装系统的整体配置的示例的示意图。下面参考图1描述这个安装系统1的整体配置的概要。
[0029] 如图1所示,安装系统1是所谓的点与打印环境的系统,其包括客户端10a和10b、打印机20和服务器30。并且所述客户端10a和10b与所述打印机20通过局域网(LAN)以可通信的方式互相连接,例如,所述LAN通过网络40与所述服务器30通信。虽然所述安装系统1在图1中包括两个客户端(客户端10a和10b),但这不是限制性的;所述安装系统1还可以包括一个或三个或更多个客户端。当所述客户端10a和10b中的任何客户端被指出时,或者当它们被统称时,它或它们将被简称为“客户端10”。
[0030] 所述客户端10是信息处理装置,它是通用计算机,例如PC,其将请求打印的打印数据发送到所述打印机20,并且使所述打印机20打印所述打印数据,或通过所述网络40从所述服务器30接收打印机驱动。
[0031] 所述打印机20是通过所述客户端10接收并打印出被转换为PDL的打印数据的图像形成装置。所述打印机20可以是包括打印功能的图像形成装置,也可以是例如包括复印功能、打印功能、扫描功能和传真功能中的至少两个功能的多功能外围设备(MFP)。在图1的示例中,虽然所述打印机20从所述客户端10直接接收打印数据,但是所述打印数据还可以通过打印服务器接收。
[0032] 所述服务器30是在其中存储与各种打印机对应的打印机驱动和在这些打印机驱动上的信息的服务器装置。
[0033] 所述网络40是诸如局域网(LAN)、广域网(WAN)或因特网的网络。所述网络40通过通信协议(例如传输控制协议/因特网协议(TCP/IP))进行数据通信。
[0034] 客户端和服务器的硬件配置
[0035] 图2是表示客户端和服务器的硬件配置的示例的示意图。下面参考图2描述客户端10和服务器30的硬件配置。
[0036] 首先,下面参考图2描述所述客户端10的硬件配置。如图2所示,所述客户端10包括CPU 501、ROM 502、RAM 503、辅助存储设备504、I/F 505、显示设备506、输入设备507和网络I/F 508。
[0037] 所述CPU 501是控制整个客户端10的操作的装置。所述ROM 502是在其中存储计算机程序,例如所述客户端10的固件的非易失性存储设备。所述RAM 503是被用作所述CPU 501的工作区的易失性存储设备。
[0038] 所述辅助存储设备504是诸如硬盘驱动器(HDD)或固态驱动器(SSD)的存储设备,在所述辅助存储设备504中存储有操作系统(OS)、应用和各种数据。所述I/F 505是用于连接各种装置和总线509的接口。
[0039] 所述显示设备506是显示设备,例如液晶显示器(LCD)、等离子显示器、或显示各种信息(例如光标、菜单、窗口、字母和图像)的有机电致发光(EL)显示器。所述输入设备507是诸如鼠标或键盘的输入设备,其用于执行诸如接收字母、数字等的输入、选择各种指令和移动光标等操作。
[0040] 所述网络I/F 508是通过网络40进行数据通信的接口。
[0041] CPU 501、ROM 502、RAM 503、辅助存储设备504、I/F 505和网络I/F 508以可通信的方式通过诸如地址总线或数据总线的总线509互相连接。
[0042] 所述客户端10的计算机程序作为可安装或可执行文件,可被记录并发布在计算机可读记录介质,例如CD-ROM、可记录的压缩盘(CD-R)、数字通用光盘(DVD)或蓝光光盘。
[0043] 所述服务器30具有和所述客户端10类似的硬件配置,故省略说明。但是,所述ROM 502和所述辅助存储设备504在其中为服务器30存储各种计算机程序以用于控制所述服务器30。并且在此情况下,用于所述打印机20的计算机程序作为可安装或可执行文件,可以被记录并发布在计算机可读记录介质,例如CD-ROM。
[0044] 打印机驱动的打印设置
[0045] 图3是表示打印机屏幕的示例的示意图。图4是表示打印机驱动的打印设置的屏幕的示例的示意图。下面参考图3和图4描述打印机驱动的打印设置的概要。
[0046] 在把安装的Windows作为OS的PC中,当安装控制打印机的打印机驱动时,例如,如图3所示,指示由所述打印机驱动做出控制的打印机的打印机图标(逻辑打印机)在所述打印机屏幕中被指示。用户使用作为所述输入设备507的鼠标在打印机图标上执行操作(例如,右击),从而显示如图4所示的属性屏幕。图4特别地示出了属性屏幕中的“详细设置”选项卡的屏幕。所述用户可以在这个属性屏幕中执行打印机驱动的打印设置。
[0047] 所述打印机驱动的打印设置包括在所述打印机驱动的属性屏幕的“常规”选项卡中设置的“基本设置”和在“详细设置”选项卡中出现的“默认设置”(参考图4)。可以为每个用户设置打印设置中的“基本设置”。当在同一个PC上有多个用户账户时,打印设置的“默认设置”通常是为所有用户设置的。在Windows的规范中,这些打印设置信息被存储在注册表的特定路径中,所述注册表被存储在系统驱动器中,并且所述系统驱动器被包括在辅助存储设备504中。一旦打印设置的“基本设置”被用户设置,当在那之后应用执行打印时,将根据已设置的“基本设置”的打印设置来执行打印。当用户没有设置基本设置而通过应用执行打印时,将根据作为“基本设置”替代的“默认设置”的打印设置来执行打印。
[0048] 如图4所示,所述“详细设置”选项卡包括“新驱动”按钮。当用户按下这个按钮时,与选择的打开属性屏幕的打印机图标相关联的打印机驱动(当前使用的打印机驱动)可以改变成被设置为另一个打印机驱动。当通过按压“新驱动”按钮来选择和当前使用的打印机驱动具有相同名称的打印机驱动时,例如,打印机驱动被更新,并且打印设置的“基本设置”和“默认设置”作为更新的打印机驱动的打印设置被传送。相反,当通过按压“新驱动”按钮来选择和当前使用的打印机驱动具有不同名称的打印机驱动时,当前使用的打印机驱动改变为所选择的打印机驱动,并且“基本设置”不被传送,虽然打印设置中的“默认设置”被传送。因此,在当前使用的打印机驱动被改变时,选择来打开属性屏幕的打印机图标与改变的打印机驱动相关联。换言之,与被替换的、旧的打印机驱动相关联的打印机图标不会残留。借助这种操作,可以防止如下情况:即用户错误地执行与被替换的、旧的打印机驱动相关联的打印机图标的打印以引起打印错误。
[0049] 虽然在图3和图4所示的操作中,当打印机驱动的设置被手动改变时,原来的打印机图标与新打印机驱动相关联,并且与被替换的旧打印机驱动相关联的打印机图标不会残留,这不是限制性的。换句话说,与其设置已被改变的新打印机驱动相关联的打印机图标可以被重新创建,而与被替换的旧打印机驱动相关联的打印机图标可保持原样,并且由用户适当地手动删除。下述的在本实施例的安装系统1中自动安装打印机驱动的安装操作将结合与新打印机驱动相关联的原始打印机图标以及与被替换的、没有残留的旧打印机驱动相关联的打印机图标进行说明。
[0050] 安装系统的安装工作概要
[0051] 图5A和图5B是表示根据第一实施例在信息处理装置中进行打印机驱动安装操作的简要示意图。下面参考图5A和图5B描述根据本实施例进行安装系统1的打印机驱动安装操作的概要。
[0052] 首先,假设用户当前要使用支持多个PDL的设备21和设备23作为客户端10使用的设备。假设设备21是多功能外围设备,设备名称为“设备A”,IP地址为“192.168.1.10”,对应的PDL为“PCL”、“PC-FAX”和“PostScript(PS)”,对应的类型(功能)为“打印机”、“传真机”和“扫描仪”。假设设备23是多功能外围设备,设备名称为“设备B”,IP地址为“192.168.1.11”,对应的PDL为“PCL”;对应的类型(功能)为“打印机”和“扫描仪”。如图5A所示,假设将打印机驱动50至52安装在客户端10中,作为与设备21对应的打印机驱动。假设将打印机驱动53安装在客户端10中,作为与设备23对应的打印机驱动。
[0053] 所述打印机驱动50是打印机驱动名称为“打印机驱动A_PCL”、对应的设备为“设备A”、待转换的PDL为“PCL”,并且类型(功能)为“打印机”的驱动。打印机驱动51是打印机驱动名称为“打印机驱动A_PC-Fax”、对应的设备为“设备A”、待转换的PDL为“PC-Fax”,并且类型(功能)为“传真机”的驱动。打印机驱动52是打印机驱动名称为“打印机驱动A_PS”、对应的设备为“设备A”、待转换的PDL为“PS”,并且类型(功能)为“打印机”的驱动。打印机驱动53是打印机驱动名称为“打印机驱动B_PCL”、对应的设备为“设备B”、待转换的PDL为“PCL”,并且类型(功能)为“打印机”的驱动。
[0054] 假设与控制作为打印机的所述设备21的打印机驱动50相关联的打印机图标为打印机图标60。假设打印机图标60的打印机图标名称为“打印机驱动A_PCL图标”。假设与控制作为传真机的所述设备21的打印机驱动51相关联的打印机图标为打印机图标61。假设打印机图标61的打印机图标名称为“打印机驱动A_PC-Fax图标”。假设与打印机驱动52相关联的打印机图标为打印机图标62,所述打印机驱动52控制作为打印机的设备21并且使用作为通用串行总线(USB)端口的“USB001”作为与设备21的连接目的地端口。假设打印机图标62的打印机图标名称为“打印机驱动A_PS图标”。假设与控制作为打印机的设备23的打印机驱动53相关联的打印机图标为打印机图标63。假设打印机图标63的打印机图标名称为“打印机驱动B_PCL图标”。
[0055] 假设用户新购买的设备22的设备名称为“设备C”,并且用分配相同IP地址的设备22更换设备21。在此情况下,作为打印机图标(打印机图标60至62)的新连接目的地的设备与设备21(设备名称:“设备A”)相关联,即,相关联的设备是所述设备22(设备名称:“设备C”)。当在设备21的打印机驱动和设备22的打印机驱动之间有兼容性时,即使使用设备21的打印机驱动在设备22上执行打印,打印也成功;而当在它们之间没有兼容性时,发生打印错误,并且需要在客户端10中为设备22安装打印机驱动。即使在它们之间有兼容性,当设备22具有未包括在设备21中的新功能时,该新功能不能通过设备21的打印机驱动使用。
[0056] 本实施例的安装系统1的客户端10检测打印机驱动的连接目的地设备已被改变,从服务器30下载与被改变的设备22(设备名称:“设备C”)对应的打印机驱动(参考图1),并安装该打印机驱动,以便不引起打印错误。在此情况下,根据下列信息(1)至(3)和类似的信息,所述客户端10下载并安装适当的打印机驱动。
[0057] (1)当前打印机驱动对应的设备、PDL和类型(功能)的信息;
[0058] (2)被替换的设备对应的PDL和对应的类型(功能)的信息;以及
[0059] (3)CPU架构的信息(x86/x64)。
[0060] 如图5A和图5B所示,虽然客户端10检测到作为打印机驱动的连接目的地的设备已经被改变的方式是通过和与被替换的设备21具有相同IP地址的新设备22进行通信的检测,但这不是限制性的。例如,客户端10可以检测到,根据用户已经改变了当前使用的打印机的连接目的地端口的设置的事实,作为打印机驱动连接目的地的设备已经被改变。可选择地,客户端10可以检测到当新设备被引入时,根据用户已经安装了与新设备相对应的打印机驱动的事实,作为打印机驱动连接目的地的设备已经被改变。
[0061] 如图5B所示,当设备21被具有相同IP地址设置的设备22替换时,如果设备22对应于与现有打印机驱动(打印机驱动50到53)的PDL相同的PDL,则客户端10安装有相同PDL的打印机驱动。在此情况下,很可能旧打印机驱动的打印设置将被传送到新打印机驱动的打印设置。相反,如果设备22没有对应于与现有打印机驱动(打印机驱动50到53)的PDL相同的PDL,则客户端10安装有相同类型(功能)的打印机驱动。
[0062] 在图5B所示的示例中,设备22对应于作为打印机驱动50的PDL的“PCL”,因此客户端10安装具有相同PDL的打印机驱动50a作为设备22的打印机驱动。在此情况下,原来的打印机图标的60最新与打印机驱动50a和设备22相关联并且被替换为打印机图标60a。设备22对应于作为打印机驱动51的PDL的“PC-FAX”,因此客户端10安装具有相同PDL的打印机驱动51a作为设备22的打印机驱动。在此情况下,原来的打印机图标61最新与打印机驱动51a和设备22相关联并且被替换为打印机图标61a。相反,设备22没有对应于作为打印机驱动52的PDL的“PS”,因此客户端10安装具有“PCL”的打印机驱动52a作为设备22的打印机驱动,该“PCL”是用于相同的类型(功能)(“打印机”),但是不同的PDL,而且是对应于设备22的PDL。
在此情况下,原来的打印机图标62最新与打印机驱动52a和设备22相关联,并且被替换为打印机图标62a。在图5B中,虽然现有打印机驱动50到52留下了(保持已安装),但是它们可能会被删除(卸载)。
[0063] 当安装新打印机驱动时,如果可能,则客户端10传送旧打印机驱动的打印设置作为新打印机驱动的打印设置。
[0064] 在图5A和图5B的示例中,虽然打印机驱动52使用USB端口作为设备21的连接目的地端口,但是当IP地址为“192.168.1.10”的LAN端口,而不是USB端口假设被类似地用于打印机驱动50时,例如,作为设备22替换的结果,打印机驱动50a和52a都具有作为PDL的“PCL”和作为连接目的地端口的LAN端口。在此情况下,客户端10可以使显示设备506来显示对用户的查询,即与打印机驱动50a和52a相关联的打印机图标60a和62a是否被分别创建。
[0065] 客户端的功能块配置
[0066] 图6是表示第一实施例的客户端的功能块配置的示例的示意图。图7是表示驱动信息的示例的示意图。图8是表示连接目的地信息的示例的示意图。下面参考图6至图8描述安装系统1的客户端10的操作和功能块配置。
[0067] 如图6所示,客户端10包括OS 11和所安装的应用12,并且还包括通信单元13、存储单元14和显示单元15。
[0068] OS 11是基本软件,例如Windows,并且控制计算机程序(例如应用12)的操作。OS 11包括打印机驱动11a。打印机驱动11a是控制连接到客户端10的打印机20的操作的软件。
当打印机20对应于图5A和图5B所示的多个PDL时,可以提供多个打印机驱动11a。打印机驱动11a可以控制多个打印机20。因此打印机驱动11a可以多种方式存在于客户端10,并且在下面的安装系统1的安装操作中,待替换的打印机驱动11a和用于替换打印机驱动11a的新打印机驱动将被简单地表示为“打印机驱动”。
[0069] 所述应用12是产生打印数据并指示打印机20执行打印的计算机程序。所述应用12包括安装器12a。
[0070] 所述安装器12a是在客户端10中安装控制所述打印机20的操作的打印机驱动,以使所述打印机20通过应用12执行打印的计算机程序。在此示例中,所述安装器12a起到驻留应用的作用。如图2所示的CPU 501执行所述安装器12a,从而实施改变检测器101(检测器)、信息获取单元102、确定单元103、查询单元104、确定器105、验证单元106、驱动获取单元107、安装单元108、卸载单元109和图形用户界面(GUI)显示控制器110。
[0071] 所述通信单元13是执行与打印机20和服务器30的数据通信的功能单元。所述通信单元13通过如图2所示的网络I/F 508来实现。
[0072] 所述存储单元14是在其中存储作为软件的OS 11、应用12和各种数据(例如打印数据)的功能单元。所述存储单元14通过如图2所示的辅助存储设备504来实现。
[0073] 所述显示单元15是通过执行OS 11和应用12来显示GUI等的功能单元。所述显示单元15通过如图2所示的显示设备506来实现。
[0074] 所述改变检测器101是检测作为现有打印机驱动的连接目的地的打印机(通过打印机驱动来控制的打印机)已经被改变的功能单元。如上所述,所述安装器12a是驻留应用,因此所述改变检测器101总是检测打印机是否已经被改变。
[0075] 所述信息获取单元102是如下功能单元:如果通过所述改变检测器101检测到作为现有打印机驱动(第一打印机驱动)的连接目的地的所述打印机(第一打印机)的改变,从现有打印机获取作为关于所述打印机驱动的信息的驱动信息(第一信息),并且从新替换的打印机(第二打印机)获取作为关于所述打印机的信息的连接目的地信息(第二信息)。如图7所示,所述驱动信息例如包括关于“驱动名称”、“打印机图标名称”、“PDL”,“类型(功能)”、“架构”和“对应的设备名称”的多条信息。如图8所示,所述连接目的地信息例如包括关于“设备名称”、“对应的PDL”和“对应的类型(对应的功能)”的多条信息。
[0076] 所述确定单元103是确定由所述信息获取单元102获取的驱动信息的“对应的设备名称”和所述连接目的地信息的“设备名称”是否彼此不同,并且根据已经获取的所述驱动信息来确定现有打印机驱动作为待替换的对象的功能单元。
[0077] 所述查询单元104是如果现有打印机驱动是由所述确定单元103确定的待替换的对象,则将查询请求通过通信单元13发送到服务器30的功能单元,所述查询请求用于请求关于与被改变的打印机相对应的打印机驱动的信息以及通过信息获取单元102获取的驱动信息和连接目的地信息。所述查询单元104通过所述通信单元13从服务器30接收作为所述查询请求的响应的查询结果信息。例如,所述查询结果信息是对应于所述改变的打印机的打印机驱动的列表,并且包括关于“驱动名称”、“PDL”,“类型”、“架构”、“打印设置的兼容性”和“驱动获取统一资源定位符(URL)”的多条信息。
[0078] 所述确定器105是从由通过所述查询单元104接收到的查询结果信息指示的打印机驱动当中确定待安装的打印机驱动(第二驱动)的功能单元。
[0079] 所述验证单元106是验证由所述确定器105确定的打印机驱动是否已被安装在客户端10的功能单元。
[0080] 所述驱动获取单元107是如果所述验证单元106验证了由所述确定器105确定的打印机驱动尚未安装,则基于所述查询结果信息中的对应于所述打印机驱动的“驱动获取URL”,通过所述通信单元13将请求所述打印机驱动的驱动请求发送到服务器30的功能单元。所述驱动获取单元107通过所述通信单元13从服务器30获取(下载)作为所述驱动请求的响应的所述打印机驱动。
[0081] 所述安装单元108是在客户端10中安装由所述驱动获取单元107获取的打印机驱动的功能单元。当所述查询结果信息指示已安装的打印机驱动的“打印设置的兼容性”存在时,所述安装单元108传送待替换的打印机驱动的打印设置(上述“默认设置”和“基本设置”)作为所安装的新打印机驱动的打印设置。例如,具有打印设置兼容性是指当待替换的打印驱动的打印设置被应用到新打印机驱动时,满足下面的条件1和条件2的情况。
[0082] 条件1:在打开打印设置屏幕或通过所述打印设置的传送来执行打印时不产生错误。
[0083] 条件2:当待替换的打印机驱动的打印设置和新打印机驱动的打印设置具有共同的功能时,关于待替换的打印机驱动的打印设置的共同功能被包括在所述新打印机驱动的打印设置中。
[0084] 所述卸载单元109是所述安装单元108安装新打印机驱动后,卸载所述待替换的旧打印驱动的功能单元。所述安装器12a中不是必须包括卸载单元109。换句话说,待替换的旧打印机驱动不是必须要被卸载。但是,包括所述卸载单元109可以删除不必要的打印机驱动,从而可以避免所述辅助存储设备504的容量紧张。
[0085] 所述GUI显示控制器110是使显示单元15显示由安装器12a进行打印机驱动的安装操作所需的信息的功能单元。例如,当在客户端10中待安装的打印机驱动没有被所述确定器105根据查询结果信息来确定,所述GUI显示控制器110使所述显示单元15显示用于指示所述事实的警告消息。例如,在此情况下,GUI显示控制器110使显示单元15显示没有发现适当的打印机驱动的事实、如果这样执行打印则会出现打印错误的可能性、以及提示用户安装适当打印机驱动等作为警告消息。
[0086] 关于所述改变检测器101、所述信息获取单元102,所述确定单元103、所述查询单元104、所述确定器105、所述验证单元106、所述驱动获取单元107、所述安装单元108、所述卸载单元109和GUI显示控制器110,它们的功能是概念性地示出,并且这些配置不是限制性的。例如,在图6中作为独立功能单元示出的多个功能单元可以被配置为一个功能单元。与此相反,在图6中由一个功能单元具有的功能可以被划分成作为多个功能单元的待配置的多个功能。
[0087] 服务器的功能块配置
[0088] 图9是表示第一实施例的服务器的功能块配置的示例的示意图。图10是表示具体设备的驱动列表的示例的示意图。下面参考图9和图10描述所述安装系统1的服务器30的功能块配置。
[0089] 如图9所示,所述服务器30包括通信单元301、查询处理单元302(兼容性确定单元)、驱动获取单元303、驱动对象存储单元304和驱动信息存储单元305。
[0090] 所述通信单元301是与客户端10进行数据通信的功能单元。所述通信单元301是通过如图2所示的网络I/F 508来实现的。
[0091] 当通过通信单元301从客户端10接收到查询请求时,所述查询处理单元302根据与所述查询请求一起接收到的驱动信息和连接目的地信息,产生作为与由客户端10改变的打印机相对应的打印机驱动的列表的查询结果信息,并且通过所述通信单元301将作为所述查询请求的响应的查询结果信息发送到所述客户端10。例如,具体地,所述查询处理单元302首先从驱动信息存储单元305读取可应用到由连接目的地信息“设备名称”所指示的打印机(由所述客户端10改变的打印机)的关于打印机驱动的信息,并且产生如图10所示的列表(驱动列表)。在图10所示的示例中,所述驱动列表包括关于每个驱动的“驱动名称”、“(对应的)设备名称”、“类型”、“PDL”、“版本”、“架构”、“驱动获取URL”和“打印设置的兼容性”的多条信息。接着,所述查询处理单元302确定在客户端10中待替换的打印机驱动的打印设置是否可以传送给在驱动列表中列出的每个打印机驱动,并且在如图10所示的驱动列表的“打印设置的兼容性”列中写入确定结果。此外,所述查询处理单元302从所述驱动列表提取与由所述连接目的地信息指示的“设备名称”、“PDL”和“类型”以及由所述驱动信息指示的“架构”的所有项目相匹配的打印机驱动,并且产生列出被提取的打印机驱动的查询结果信息。
[0092] 所述驱动获取单元303是如果通过通信单元301从客户端10接收到所述驱动请求,则从驱动对象存储单元304获取由所述驱动请求所指示的打印机驱动的功能单元。所述驱动获取单元303通过通信单元301,将作为所述驱动请求的响应的已获取的打印机驱动发送到所述客户端10。
[0093] 所述驱动对象存储单元304是在其中存储用于控制设备的各种类型的驱动程序的功能单元。所述驱动对象存储单元304是通过如图2所示的辅助存储设备504来实现的。
[0094] 所述驱动信息存储单元305是在其中存储各种类型的驱动的信息的功能单元。所述驱动信息存储单元305是通过如图2所示的辅助存储设备504来实现的。
[0095] 所述查询处理单元302和所述驱动获取单元303是通过使所述CPU 501执行存储在如图2所示的辅助存储设备504中的计算机程序来实现的。
[0096] 关于所述通信单元301、所述查询处理单元302、所述驱动获取单元303、所述驱动对象存储单元304和所述驱动信息存储单元305,它们的功能是在概念上示出的,并且这样的配置不是限制性的。例如,图9中作为独立的功能单元示出的多个功能单元可以被配置为一个功能单元。与此相反,图9中由一个功能单元具有的功能可以被划分成作为多个功能单元的待配置的多个功能。安装系统中的打印机驱动安装操作
[0097] 图11是表示根据第一实施例在安装系统中进行打印机驱动安装操作的示例的流程图。下面参考图11描述在所述安装系统1中进行打印机驱动安装操作的流程。
[0098] 步骤S11
[0099] 作为驻留应用的所述安装器12a中的改变检测器101总是监控作为现有打印机驱动的连接目的地的打印机是否已经被改变。然后所述处理前进到步骤S12。
[0100] 步骤S12
[0101] 所述改变检测器101确定作为现有打印机驱动的连接目的地的打印机是否处于脱机状态。如果打印机未脱机(在步骤S12为“否”),则所述处理前进到步骤S13;如果所述打印机处于脱机状态(在步骤S12为“是”),则所述处理返回到步骤S11。
[0102] 步骤S13
[0103] 所述改变检测器101检测作为现有打印机驱动的连接目的地的打印机是否已经被改变。如果检测到所述打印机已经被改变(在步骤S13为“是”),则所述处理前进到步骤S14;如果所述打印机没有被改变(在步骤S13为“否”),则所述处理返回到步骤S11。
[0104] 步骤S14
[0105] 如果通过改变检测器101检测到作为现有打印机驱动的连接目的地的打印机的改变,所述信息获取单元102从所述现有打印机驱动获取作为关于所述打印机驱动的信息的驱动信息,并且从新更换的新打印机获取关于所述打印机的信息的连接目的地信息。然后所述处理前进到步骤S15。
[0106] 步骤S15
[0107] 所述确定单元103确定由所述信息获取单元102获取的驱动信息“对应的设备名称”和连接目的地信息“设备名称”是否彼此不同。如果它们彼此不同(在步骤S15为“是”),所述确定单元103将已经获取驱动信息的所述现有打印机驱动确定为待替换的对象,并且所述处理前进到步骤S16。相反,如果它们是相同的(在步骤S15为“否”),则所述处理前进到步骤S11。
[0108] 步骤S16
[0109] 如果所述确定单元103确定现有的打印机驱动是待替换的对象,所述查询单元104通过通信单元13将查询请求以及通过所述信息获取单元102获取的驱动信息和连接目的地信息一起发送到所述服务器30,所述查询请求用于请求与被改变的打印机相对应的关于打印机驱动的信息。所述查询单元104通过通信单元13从服务器30接收作为所述查询请求的响应的查询结果信息。然后所述处理前进到步骤S17。
[0110] 步骤S17
[0111] 所述确定器105确定是否存在任何的打印机驱动,与待替换的所述打印机驱动在驱动信息的“类型”、“架构”和“PDL”上全部相匹配,所述驱动信息来自由所述查询单元104接收到的查询结果信息指示的打印机驱动。如果有任何匹配的打印机驱动(在步骤S17为“是”),则所述处理前进到步骤S19;如果没有匹配的打印机驱动(在步骤S17为“否”),则所述处理前进到步骤S18。
[0112] 步骤S18
[0113] 所述确定器105确定是否存在任何的打印机驱动,与待替换的所述打印机驱动在驱动信息的“类型”和“架构”上全部相匹配,所述驱动信息来自由所述查询单元104接收到的查询结果信息指示的打印机驱动。如果有任何匹配的打印机驱动(在步骤S18为“是”),则所述处理前进到步骤S19;如果没有匹配的打印机驱动(在步骤S18为“否”),则所述处理前进到步骤S24。
[0114] 步骤S19
[0115] 如果在步骤S17或S18中有任何匹配的打印机驱动,则所述确定器105确定所述打印机驱动是待安装的打印机驱动。所述验证单元106验证由所述确定器105确定的所述打印机驱动是否已经被安装(引入)在(到)客户端10,以及由所述确定器105确定的所述打印机驱动已经被安装(导入)但是版本是否新于待替换的打印机驱动。如果所述验证单元106确定由所述确定器105确定的打印机驱动尚未安装,或者已经被安装但是版本新于待替换的打印机驱动,所述驱动获取单元107根据对应于由所述确定器105从所述查询结果信息中确定的打印机驱动的“驱动获取URL”,通过所述通信单元13将请求所述打印机驱动的驱动请求发送到服务器30。所述驱动获取单元107通过通信单元13,从所述服务器30获取(下载)作为所述驱动请求的响应的打印机驱动。然后所述处理前进到步骤S20。
[0116] 步骤S20
[0117] 所述安装单元108确定查询结果信息是否指示对于由所述驱动获取单元107获取的打印机驱动存在“打印设置的兼容性”。如果“打印设置的兼容性”为“存在”(在步骤S20为“是”),则所述处理前进到步骤S21;如果“打印设置的兼容性”为“不存在”(在步骤S20为否),则所述处理前进到步骤S22。
[0118] 步骤S21
[0119] 如果所述查询结果信息指示对于由所述驱动获取单元107获取的打印机驱动存在“打印设置的兼容性”,则所述安装单元108安装具有待替换的打印机驱动的打印设置(上述“基本设置”和“默认设置”)的新打印机驱动,所述打印设置作为所获取的新打印机驱动的打印设置被传送。在此情况下,与待替换的所述打印机驱动相关联的打印机图标与新安装的打印机图标相关联。然后所述处理前进到步骤S23。
[0120] 步骤S22
[0121] 如果所述查询结果信息指示对于由所述驱动获取单元107获取的打印机驱动不存在“打印设置的兼容性”,则所述安装单元108安装没有待替换的打印机驱动的打印设置(上述“基本设置”和“默认设置”)的新打印机驱动,所述打印设置作为所获取的新打印机驱动的打印设置被传送。在此情况下,与待替换的所述打印机驱动相关联的打印机图标与新安装的打印机图标相关联。然后所述处理前进到步骤S23。
[0122] 步骤S23
[0123] 在所述安装单元108安装新打印机驱动后,如果被替换的所述旧打印机驱动是不必要的,则所述卸载单元109卸载所述旧打印机驱动。所述安装操作结束于上述处理。
[0124] 步骤S24
[0125] 如果客户端10中待安装的打印机驱动不是由所述确定器105根据查询结果信息所确定的,所述GUI显示控制器110使所述显示单元15显示用于指示这一事实的警告消息,并且安装操作以没有在客户端10中安装任何新打印机驱动而结束。
[0126] 在步骤S11至S24中的上述操作针对安装系统1中的客户端10执行所述打印机驱动安装操作。
[0127] 如上所述,根据本实施例的客户端10检测连接到现有打印机驱动的所述打印机的改变,并且如果检测到改变,基于所述驱动信息和所述连接目的地信息将查询请求发送到服务器30,接收对于所述查询请求的响应的查询结果信息,其中所述查询结果信息是指示对应于所述改变的打印机的打印机驱动和指示是否存在打印设置的兼容性的打印机驱动列表,以及安装打印机驱动,其中很可能现有的驱动程序的打印设置可以从所述查询结果信息被传送至所安装的打印机驱动,并且如果可能则传送所述打印设置。借助这种操作,利用被适当传送的现有打印机驱动的打印设置可以自动地安装新打印机驱动。
[0128] 尽管前面描述了作为驱动安装在客户端10的所述打印机驱动和作为连接到客户端10的设备的所述打印机(包括多功能外围设备),但是它们不是限制性的。换而言之,安装在客户端10中的驱动可以是扫描仪驱动、传真驱动等,并且连接的设备可以是扫描装置、传真装置等,其中,上述操作也可以适用于传送这些设备的操作设置的操作。
[0129] 虽然所述查询处理单元302从驱动信息存储单元305读取可以适用于由连接目的地信息“设备名称”指示的打印机(所述打印机被客户端10改变)的关于打印机驱动的信息以生成所述驱动列表,并确定是否可以针对在驱动列表中列出的每个打印机驱动传送在客户端10处待替换的打印机驱动的打印设置,这不是限制性的。换而言之,所述客户端10的查询单元104可以从所述服务器30接收没有指示“打印设置的兼容性”的结果的查询结果信息,并且所述确定器105(所述兼容性确定单元)可以确定是否针对由所述查询结果信息指示的每个打印机驱动传送在客户端10处待替换的打印机驱动的打印设置,并例如在所述查询结果信息的“打印设置的兼容性”列中写入确定结果。变形例
[0130] 在如图11所示的安装操作中,安装器12a的功能是作为驻留应用,以及改变检测器101总是检测打印机是否已经被改变。本变形例描述了当用户手动启动所述安装器12a时,所述改变检测器101检测打印机是否已经被改变,并且执行所述安装操作的情况。
[0131] 图12是表示在第一实施例的变形例的安装系统中进行打印机驱动安装操作的示例的流程图。下面参考图12描述在本变形例的安装系统1中进行打印机驱动安装操作的流程。
[0132] 步骤S31
[0133] 用户通过操作所述输入设备507启动打印机驱动的安装器12a。然后所述处理前进到步骤S32。
[0134] 步骤S32
[0135] 如果用户按照安装器12a的安装顺序,通过操作所述输入设备507选择“替换当前的打印机驱动来安装新打印机驱动”(在步骤S32为“是”),则所述处理前进到步骤S33;如果没有选择(在步骤S32为“否”),则所述处理前进到步骤S40。
[0136] 步骤S33
[0137] 用户按照安装器12a的安装顺序,通过操作所述输入设备507选择与现有的待替换的打印机驱动相关联的打印机图标。然后所述处理前进到步骤S34。
[0138] 步骤S34
[0139] 所述改变检测器101确定与由用户选择的打印机图标相关联的现有打印机驱动是否支持替换功能。如果现有打印机驱动支持替换功能(在步骤S34为“是”),则所述处理前进到步骤S35;如果现有打印机驱动不支持替换功能(在步骤S34为“否”),则所述处理前进到步骤S41。
[0140] 步骤S35
[0141] 用户按照安装器12a的安装顺序,通过操作所述输入设备507选择作为连接目的地的设备(打印机)。然后,所述处理前进到步骤S36。
[0142] 步骤S36
[0143] 所述改变检测器101确定作为现有打印机驱动的连接目的地的打印机是否处于脱机状态。如果打印机未脱机(在步骤S36为“否”),则所述处理前进到步骤S37;如果打印机处于脱机状态(在步骤S36为“是”),则所述处理前进到步骤S41。
[0144] 步骤S37
[0145] 如果所述改变检测器101检测到作为现有打印机驱动的连接目的地的打印机的改变,所述信息获取单元102从现有打印机驱动获取作为所述打印机驱动的信息的所述驱动信息,并从新替换的新打印机获取作为所述打印机的信息的连接目的地信息。然后所述处理前进到步骤S38。
[0146] 步骤S38
[0147] 所述确定单元103确定由所述信息获取单元102获取的所述驱动信息“对应的设备名称”和连接目的地信息“设备名称”是否彼此不同。如果它们彼此不同(在步骤S38为“是”),所述确定单元103将已获取驱动信息的现有的打印机驱动确定为待替换的对象,并且所述处理前进到步骤S39。相反,如果它们是相同的(在步骤S38为“否”),则所述处理前进到步骤S42。
[0148] 步骤S39
[0149] 如果所述确定单元103确定现有的打印机驱动是待替换的对象,所述查询单元104通过通信单元13将查询请求以及通过所述信息获取单元102获取的驱动信息和连接目的地信息一起发送到所述服务器30,所述查询请求用于请求与被改变的打印机相对应的关于打印机驱动的信息。所述查询单元104通过通信单元13从服务器30接收作为所述查询请求的响应的查询结果信息。然后所述处理前进到步骤S43。
[0150] 步骤S40
[0151] 如果用户按照安装器12a的安装顺序,通过操作所述输入设备507没有选择“替换当前的打印机驱动来安装新打印机驱动”,所述客户端10按照正常的新驱动的安装顺序执行安装操作。然后所述安装操作结束。
[0152] 步骤S41
[0153] 所述GUI显示控制器110使所述显示单元15显示与由用户选择的打印机图标相关联的现有打印机驱动不能被替换,并且安装操作以没有在客户端10中安装任何新打印机驱动而结束。
[0154] 步骤S42
[0155] 如果所述确定单元103确定由所述信息获取单元102获取的所述驱动信息“对应的设备名称”和连接目的地信息“设备名称”相同,则所述GUI显示控制器110使所述显示单元15显示不需要更换现有打印机驱动,并且安装操作以没有在客户端10中安装任何新打印机驱动而结束。
[0156] 步骤S43到S50
[0157] 如图11所示,在步骤S43到S50中的操作分别地与在步骤S17到S24中的操作类似。
[0158] 如上所述,安装器12a并非作为驻留应用而发挥功能而是根据用户操作的定时而被启动。借助这种操作,利用根据用户期望的定时而适当地传送的现有打印机驱动的打印设置来安装新的打印机驱动。
[0159] 第二实施例
[0160] 下面主要描述第二实施例的安装系统和第一实施例的安装系统的不同点。第一实施例描述了安装器12a作为驻留应用被启动的操作,并且所述改变检测器101总是检测打印机是否已经被改变。本实施例描述了对应于所述改变检测器101的改变检测器111(下面描述)的操作被包括在打印机驱动11a,并且当客户端10使用打印机时,即当打印机驱动11a被启动时,所述改变检测器111检测打印机是否已经被改变,并且如果检测到所述打印机已经被改变,请求所述安装器12a安装新打印机驱动。本实施例的安装系统的配置与图1所示的安装系统1的配置类似,并且包括在安装系统的客户端和服务器的硬件配置与图2所示的硬件配置类似。所述服务器的功能块配置与图9所示的功能块配置类似。
[0161] 客户端的功能块配置
[0162] 图13是表示第二实施例的客户端的功能块配置的示例的示意图。下面参考图13描述了本实施例的安装系统的客户端10的操作和功能块配置。
[0163] 如图13所示,所述客户端10包括OS 11和所安装的应用12,并且还包括所述通信单元13、所述存储单元14和所述显示单元15。
[0164] OS 11是基本软件,例如Windows,并且控制计算机程序的操作,例如应用12。所述OS 11包括所述打印机驱动11a。
[0165] 所述打印机驱动11a是控制连接到所述客户端10的所述打印机20的操作的软件。所述打印机驱动11a包括渲染器16a和打印机UI 16b。
[0166] 所述渲染器16a将从所述客户端10的应用(不限于应用12)传送的打印数据转换为特定的PDL。如图2所示的CPU 501执行所述打印机UI 16b,从而实施所述改变检测器111、所述信息获取单元112、所述确定单元113、所述显示控制器114、打印设置单元115和所述通知单元116。
[0167] 所述应用12是产生打印数据,并指示所述打印机20执行打印的计算机程序。所述应用12包括安装器12a。
[0168] 所述安装器12a是在客户端10中安装用于控制所述打印机20的操作的打印机驱动,以使所述打印机20通过所述应用12执行打印的计算机程序。由图2所示的CPU 501执行所述安装器12a,从而实施所述通知获取单元117、所述查询单元104、所述确定器105、所述验证单元106、所述驱动获取单元107、所述安装单元108、所述卸载单元109和所述GUI显示控制器110。
[0169] 所述通信单元13、所述存储单元14和所述显示单元15的操作分别与第一实施例中的操作类似。
[0170] 所述改变检测器111是检测作为现有打印机驱动的连接目的地的打印机(通过打印机驱动来控制的打印机)已经被改变的功能单元。如上所述,当所述打印机驱动11a被启动时,所述改变检测器111检测所述打印机是否已经被改变。
[0171] 所述信息获取单元112是如果通过所述改变检测器111检测到作为现有打印机驱动的连接目的地的打印机的改变,从所述现有打印机驱动获取作为所述打印机驱动的信息的驱动信息,并且从新替换的打印机获取作为所述打印机的信息的连接目的地信息的功能单元。
[0172] 所述确定单元113是确定由所述信息获取单元112获取的所述驱动信息“对应的设备名称”和所述连接目的地信息“设备名称”是否彼此不同,并且如果它们彼此不同,则将已经获取所述驱动信息的现有打印机驱动确定为待替换的对象的功能单元。
[0173] 所述显示控制器114是使得所述显示单元15显示所述打印机驱动11a的操作需要的信息、用于打印设置的屏幕等的功能单元。
[0174] 所述打印设置单元115是通过由所述显示控制器114在所述显示单元15上显示的打印设置屏幕来执行打印设置的新设置、改变等的功能单元。
[0175] 所述通知单元116是如果所述确定单元113确定了现有打印机驱动是待替换的对象时,通知所述安装器12a请求替换新打印机驱动的替换请求以及通过所述信息获取单元112获取的驱动信息和连接目的地信息的功能单元。
[0176] 所述通知获取单元117是从所述打印机驱动11a的通知单元116获取所述替换请求、所述驱动信息和所述连接目的地信息的通知的功能单元。
[0177] 所述查询单元104是当通过所述通知获取单元117获取了所述替换请求的通知时,通过通信单元13将请求对应于改变的打印机的关于打印机驱动的信息的查询请求以及驱动信息和连接目的地信息一起发送到所述服务器30的功能单元。所述查询单元104通过通信单元13从所述服务器30接收作为所述查询请求的响应的查询结果信息。
[0178] 所述确定器105、所述验证单元106、所述驱动获取单元107、所述安装单元108、所述卸载单元109和所述GUI显示控制器110的操作分别与第一实施例所描述的操作类似。
[0179] 关于所述打印机驱动11a的所述改变检测器111、所述信息获取单元112,所述确定单元113、所述显示控制器114、所述打印设置单元115和通知单元116以及所述安装器12a的所述通知获取单元117、所述查询单元104、所述确定器105、所述验证单元106、所述驱动获取单元107、所述安装单元108、所述卸载单元109和GUI显示控制器110,它们的功能是概念性地示出,并且这些配置不是限制性的。例如,作为独立的功能单元在图13中示出的多个功能单元可以被配置为一个功能单元。与此相反,在图13中由一个功能单元具有的功能可以被划分成作为多个功能单元的待配置的多个功能。
[0180] 安装系统的打印机驱动安装操作
[0181] 图14是表示根据第二实施例的变形例在安装系统的打印机驱动安装操作中通过打印机驱动执行操作的示例的流程图。图15是根据第二实施例的变形例在安装系统的打印机驱动安装操作中通过安装器执行操作的示例的流程图。下面参考图14和图15描述在本实施例的安装系统中进行打印机驱动安装操作的流程。首先,下面参考图14描述打印机驱动11a的操作。
[0182] 步骤S51
[0183] 用户启动(激活)所述打印机驱动11a的方式如下:通过打印设置屏幕的启动操作、打印操作的执行操作或通过对输入设备507的操作进行的打印机的类似操作。然后所述处理前进到步骤S52。
[0184] 步骤S52
[0185] 所述改变检测器111确定作为现有打印机驱动的连接目的地的打印机是否处于脱机状态。如果打印机未脱机(在步骤S52为“否”),则所述处理前进到步骤S53;如果打印机处于脱机状态(在步骤S52为“是”),则所述安装操作以没有在所述客户端10中安装任何新打印机驱动而结束。
[0186] 步骤S53
[0187] 所述改变检测器111检测作为现有打印机驱动的连接目的地的打印机是否已经被改变。如果检测到所述打印机已经被改变(在步骤S53为“是”),则所述处理前进到步骤S54;如果打印机没有被改变(在步骤S53为“否”),则所述安装操作以没有在所述客户端10中安装任何新打印机驱动而结束。
[0188] 步骤S54
[0189] 如果检测到作为现有打印机驱动的连接目的地的打印机已经被所述改变检测器111改变时,所述信息获取单元112从现有打印机驱动获取关于所述打印机驱动的信息的所述驱动信息和从替换的新打印机获取关于所述打印机的信息的连接目的地信息。然后,所述处理前进到步骤S55。
[0190] 步骤S55
[0191] 所述确定单元113确定由所述信息获取单元112获取的所述驱动信息“对应的设备名称”和所述连接目的地信息“设备名称”是否彼此不同。如果它们彼此不同(在步骤S55为“是”),所述确定单元103将已经获取所述驱动信息的现有打印机驱动确定为待替换的对象,则所述处理前进到步骤S56。相反,如果它们是相同的(在步骤S55为“否”),则安装操作以没有在客户端10中安装任何的新打印机驱动而结束。
[0192] 步骤S56
[0193] 如果所述确定单元113确定现有打印机驱动是待替换的对象,则所述通知单元116通知所述安装器12a请求替换新打印机驱动的替换请求以及通过所述信息获取单元112获取的驱动信息和连接目的地信息。
[0194] 在本实施例的安装系统的安装操作中,在步骤S51至S56的上述操作执行所述打印机驱动11a的操作。接着,下面参考图15描述所述安装器12a的操作。
[0195] 步骤S71
[0196] 所述安装器12a的通知获取单元117等待直到从所述打印机驱动11a的通知单元116获取所述替换请求、所述驱动程序信息和所述连接目的地信息的通知。然后,所述处理前进到步骤S72。
[0197] 步骤S72
[0198] 如果从所述通知单元116获取了替换请求的通知(在步骤S72为“是”),则所述通知获取单元117将所述处理推进到步骤S73;如果未获取替换请求的通知(在步骤S72为“否”),则所述通知获取单元117将处理返回到步骤S71以等待直到获取替换请求。
[0199] 步骤S73
[0200] 如果所述通知获取单元117获取了替换请求的通知,则所述查询单元104通过所述通信单元13将请求对应于所述改变的打印机的关于所述打印机驱动的信息的查询请求以及所述驱动信息和所述连接目的地信息一起发送到所述服务器30。所述查询单元104通过所述通信单元13从所述服务器30接收作为查询请求的响应的查询结果信息。然后所述处理前进到步骤S74。
[0201] 步骤S74至S81
[0202] 步骤S74至S81的操作分别与图11所示的步骤S17至S24的操作相同。
[0203] 如上所述,不同于在第一实施例中将所述安装器12a作为驻留应用被启动,并且所述改变检测器101总是检测所述打印机是否已被改变,在本实施例中,当所述客户端10使用打印机时,即当所述打印机驱动11a被启动时,所述改变检测器111才检测打印机是否已经改变,并且如果检测到所述打印机已经被改变,请求所述安装器12a安装新打印机驱动。借助这种操作,除了具有第一实施例的效果之外,没有必要保持安装器12a作为驻留应用被启动,并且当所述打印机驱动11a被启动时,执行所述打印机驱动的安装操作,由此可以降低客户端10的处理负荷。
[0204] 在第一实施例中当所述客户端10的安装器12a的所述改变检测器101、所述信息获取单元102、所述确定单元103、所述查询单元104、所述确定器105、所述验证单元106、所述驱动获取单元107、所述安装单元108、所述卸载单元109和GUI显示控制器110中的至少一个是通过计算机程序的执行而实现时,所述计算机程序可以被嵌入并在由图2所示的ROM 502等中被提供。在第二实施例中当所述客户端10的打印机驱动11a的所述改变检测器111、所述信息获取单元112、所述确定单元113、所述显示控制器114、所述打印设置单元115和通知单元116以及所述安装器12a的所述通知获取单元117、所述查询单元104、所述确定器105、所述验证单元106、所述驱动获取单元107、所述安装单元108、所述卸载单元109和GUI显示控制器110中的至少一个是通过计算机程序的执行而实现时,所述计算机程序可以被嵌入并在由图2所示的ROM 502等中被提供。在本实施例中当所述服务器30的所述驱动获取单元303和所述查询处理单元302中的至少一个是通过计算机程序的执行而实现时,所述计算机程序可以被嵌入并在由图2所示的ROM 502等中被提供。
[0205] 在本实施例的安装系统中执行的计算机程序作为可安装的或可执行的文件可以在如下计算机可读记录介质中被记录和提供,例如CD-ROM、软盘(FD)、压缩光盘(CD-R)和数字通用光盘(DVD)。在本实施例的安装系统中执行的计算机程序可以被存储在连接到网络(例如因特网)的计算机中,并且可以通过所述网络下载并被提供。在本实施例的安装系统中执行的计算机程序可以通过网络(例如因特网)被提供或分发。在本实施例的安装系统中执行的计算机程序具有包括所述功能单元中的至少一个的模块结构。作为实际的硬件,所述CPU 501从所述ROM 502读取计算机程序并执行它们,由此所述单元被加载到主存储器并产生。
[0206] 当新打印机被引入时,本发明可以安装具有被适当传送的现有打印机驱动的打印设置的新打印机驱动。
[0207] 上述实施例是说明性的,并不限制本发明。因此,根据上述教导许多附加的修改和变化是可能的。例如,在本发明和所附的权利要求书的范围内不同的说明性和示例性的实施例中的至少一种要素在本文中可以彼此结合或彼此替代。此外,所述实施例的组件的特征,例如数量、位置和形状不限于所述实施例,因此可优选地设置。应当理解的是,在所附的权利要求的范围内,可以通过与具体所述不同的方式实践本发明。
[0208] 本文中所描述的方法步骤、过程或操作不应被解释为必然要求以所讨论或示出的特定的顺序执行,除非是特别指出的执行顺序或可以清楚地通过上下文识别。也应当理解的是,可以采用附加的或替代的步骤。
[0209] 所描述的实施例的每个功能可以由一个或多个处理电路或电路来实现。处理电路包括编程处理器,如包括电路的处理器。处理电路也包括设备,例如专用集成电路(ASIC)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)和布置以执行上述功能的常规电路元件。