在工作站上的打印机实例的远程创建的制作方法

文档序号:6451765阅读:216来源:国知局
专利名称:在工作站上的打印机实例的远程创建的制作方法
技术领域
本发明涉及在工作站的打印机文件夹中创建打印机实例,更具体地说,本发明涉及通过执行控制点终端中的操作在工作站的打印机文件夹中远程地创建打印机实例,以添加新打印机到打印机文件夹,从而打印机识别信息传输到客户工作站中的代理,使得该代理利用所述识别信息自动地获得和安装打印机配置和打印机的打印驱动程序信息以及在打印机文件夹中创建打印机实例。
背景技术
通常,打印机实例通过用户在工作站上执行操作在视窗操作系统中创建。例如,Marbry等人的美国专利5,692,111(在下文中称为“‘111专利”)描述了用户通过浏览网络和选择他/她要添加的基于服务器的打印机在他们的工作站视窗注册表中添加新基于服务器的打印机的方法。在选择基于服务器的打印机基础上,从网络bindery检索用于所选择打印机的打印机配置文件和打印驱动程序文件并将它们安装在用户的工作站上,在此之后基于服务器的打印机实例在用户的视窗注册表中创建。此方法在工作站上安装打印机本身没有问题,但是它具有涉及网络管理的问题。更具体地说,上述方法需要用户在每个工作站上添加打印机,或者需要网络管理员物理地到每个工作站和添加打印机。可以容易地看出,前者需要每个个体用户具有关于他们所添加打印机的某些知识,而后者非常耗费管理员的时间,尤其是在打印机需要添加到许多计算机时。前者的结果是一些缺乏相关知识的用户不能选择最合适的打印机添加。而且,上述方法需要用户/管理员物理地到每个工作站,从而不必要地浪费了管理员的时间。111专利方法另外的问题是因为打印机是基于服务器的打印系统的一部分,所以在用户能够在他们的工作站上安装打印机和提交打印作业到打印机之前,打印机需要在打印服务器上安装和配置。因此,尽管打印机可以物理地连接到网络,但是打印机还是不能使用直到管理员在打印服务器中安装打印机。
一些技术已经被建议用于远程地添加打印机到工作站的打印机文件夹。一种这样的技术需要至少一些用户操作,例如登录网络,为了添加打印机到工作站的打印机文件夹。因为需要至少一些用户操作,所以此技术不是真正的远程,结果,更新网络配置不能及时在工作站中反映直到用户操作执行。另外的技术也已经被建议,在其中管理员创建例如可执行文件,此可执行文件由管理员下载到工作站并在工作站上执行。虽然此技术可能比上述技术更远程,但此技术仍然会消耗管理员的时间,并且在其中,需要管理员学习写成所述可执行文件的程序设计语言。因而,虽然这些技术能够执行工作站上的打印机实例的远程创建,但是它们每一种都具有其自己的缺点并且从根本上不同于本发明所建议的技术。

发明内容
本发明提供了一种更容易的在客户工作站打印机文件夹中远程地安装新打印机的方法,此客户工作站通过网络与控制点终端通信。根据本发明,在控制点终端中执行在客户工作站的打印机文件夹中添加新打印机的操作,响应于此执行的操作,控制点传输添加到客户工作站中的代理的新打印机的识别信息。客户工作站中的代理接收来自控制点终端的识别信息,并且响应于此,代理至少部分地基于接收的识别信息自动地获得打印机配置信息和打印驱动程序信息。在获得打印机配置和打印驱动程序信息的基础上,代理基于获得的信息自动地配置打印机并安装打印驱动程序。最后,代理在工作站的打印机文件夹中创建打印机在本地管理的实例。
结果,本发明简化了用于在工作站上远程地创建打印机实例的过程,因为根本不需要用户介入并且管理员不需要编程。即,用户不需要为了添加打印机执行任何操作,包括为了调用安装过程而登陆网络。另外管理员不必为了添加打印机写入任何编码,而替代的是,管理员仅仅利用例如简单拖放技术选择所添加的打印机和打印机所添加到的工作站。对管理员透明的是,控制点获得打印机的识别信息,例如打印机IP地址和打印机的设备类型,并将此信息和添加新打印机的指令传输给客户工作站中的代理。对用户透明的是,代理调用例如动态设备安装程序(DDI),并将打印机识别信息提供给DDI,从而DDI利用打印机识别信息自动地例如从本地或远程地从工作站查询可以被存储的适合数据库以获得安装新打印机所需的打印机配置和打印驱动信息。在获得打印机配置和打印驱动程序信息的基础上,DDI自动地安装新打印机,包括创建需要用于与新打印机通信的任何端口。
而且,在打印机可以安装在用户工作站之前不需要在打印服务器中安装该打印机。因为控制点和代理安装用于对等通信的打印机,不需要在打印服务器中安装该打印机,从而使安装和管理网络上的打印机更加容易。
因此,在本发明的一个方面中,在通过网络与控制点通信的客户工作站的打印机文件夹中远程地安装新打印机,包括在控制点终端中,执行在客户工作站的打印机文件夹中添加新打印机的操作,和响应于已经执行的操作,控制点终端传输添加到客户工作站的代理的新打印机的识别信息,和在客户工作站中,代理接收来自控制点终端的识别信息,响应于接收新打印机的识别信息,代理至少部分地基于所接收识别信息自动地获得打印机配置信息和打印驱动程序文件,代理基于获得的打印机配置信息和打印驱动程序信息自动地配置打印机并安装打印驱动程序,和代理创建打印机在本地管理的实例。
根据本发明的其他方面,自动地从网络上的远程设备例如FTP服务器获得打印机配置信息和打印驱动程序信息,和自动地创建用于与打印机通信的端口。因此,打印机配置信息和打印驱动程序的数据库可以保存在远程设备上以便在创建本地管理的打印机实例的任何时候容易地访问它们。
另外,打印机的识别信息可以是打印机的网络地址,例如IP地址,打印机名称、DNS名称或NetBios名称。从这方面来说,控制点终端仅仅提供打印机的IP地址或名称给代理,而代理利用此IP地址或名称从数据库例如上面所述的数据库获得打印机配置和打印驱动程序信息。
此外,在控制点终端中执行的操作非常简单,管理员利用管理控制台将新打印机的图标拖放代理图标上即可。在完成拖放操作的基础上,控制点产生和传输信息给代理用于添加新打印机。可以容易地看出,对于管理员来说,添加新打印机变成简单操作。
另外,打印机不必是安装在网络上的真实打印机,而可以是虚拟打印机。从这方面来说,管理员可以仅仅通过执行在控制点终端上添加虚拟打印机的操作而很容易地在工作站上远程创建虚拟打印机实例,从而虚拟打印机的标识符提供给代理。在这点上,打印机配置信息和打印驱动程序信息的数据库可以包括用于各种虚拟打印机以及安装在网络上的打印机的需要信息。结果,管理员可以仅仅通过将虚拟打印机的图标拖放到工作站的图标上而很容易地在工作站上创建虚拟打印机实例。
此简短概述使得可以很快地理解本发明的实质。通过下列结合附图的优选实施例的详细描述,将获得本发明更加完整的理解。


图1描述了本发明可以在其中使用的网络环境的例子。
图2描述了计算机工作站内部结构的例子。
图3描述了局域网服务器内部结构的例子。
图4描述了网络服务器内部结构的例子。
图5是描述根据本发明的远程管理代理结构的方框图。
图6描述了由用于在根据本发明的工作站上安装新打印机的动态设备安装程序执行的通信的例子。
图7描述了用于根据本发明的控制点的图形用户界面的例子。
图8描述了选择“代理目录”标签的代理窗格的例子。
图9描述了选择“代理细节”标签的代理窗格的例子。
图10描述了用于图7的控制点的安装窗格的例子。
图11至13示出了在控制点中执行拖放操作以添加新打印机到代理的例子。
图14是用于远程地添加新打印机到工作站的处理步骤的流程图。
具体实施例方式
图1描述了本发明可以在其中使用的网络环境的例子。网络1最好是局域网(LAN),但实际上也可以是其他类型网络。网络1可以包括各种计算元件,例如工作站、打印机、服务器等,这些元件在通常如基干10所示的网络基础结构上彼此通信。基干10可以包括各种通信设备,例如路由器和数据通信集线器(未示出),通信设备提供连接到网络的各种元件之间的通信链路,以及与其他网络例如包括网络服务器51的互联网50通信。网络1最好包括至少一个网络管理员终端,例如终端15;多个打印机,例如打印机40至44。网络管理员终端15提供用于管理员管理网络的方法,包括执行添加新打印机给连接到网络的客户工作站的任何一个或多个的操作。客户工作站的每一个以及网络管理员终端最好能够提交打印作业给打印机40至44的至少之一。打印作业最好在对等基线上传输到打印机,尽管常规基于服务器的打印也可以在工作站上实现。在这点上,网络1还可以包括至少一个本地服务器,例如服务器30,服务器30包括一个固定存储盘,例如盘31,它可以位于服务器30内部或外部。图1中所示元件的每一个仅仅表示可以包括在网络环境内的一些设备,当然,许多其他元件也可以连接到网络。但是,为了简洁,本发明的描述将限于使用图1所示的那些元件。
客户工作站20最好是使用视窗操作系统例如Microsoft Windows2000或者Window NT4.0的IBM或兼容个人计算机。工作站21至23以及管理员终端15可以类似于工作站20,因此,下面的描述同等地适用于这些工作站。工作站20最好包括一个大容量存储器设备,例如用于存储数据文件和应用程序文件的硬盘。如上所述,工作站20最好使用视窗操作系统,此视窗操作系统存储在所述硬盘上。用户可以利用存储在硬盘上的应用程序从工作站20执行各种操作,包括提交打印作业给连接到网络1的打印机40至44的任何一个。也就是说,想要在打印机40至44之一上打印硬拷贝打印输出的用户执行应用程序内的过程以提交打印作业给所选打印机。在此点上,在用户能够提交打印作业给打印机40至44之一之前,为了工作站20与所选打印机通信,需要在工作站20上安装必要的打印驱动程序和配置文件。此过程将在下面更加详细地描述,但是一旦必要文件安装和工作站能够与所选打印机通信,用户就能够选择打印机和提交打印作业给打印机40至44之一。工作站20还能够与网络上的其他设备通信,例如本地服务器30和FTP/HTTP(网络)服务器51,此过程也将在下面更加详细地描述。
打印机40至44连接到网络1用于用户,例如工作站20处的用户,使用户能够提交打印作业给它们用于打印。打印机40至44最好是网络启用打印机,它包括用于与基干10和工作站20通信的网络接口。在此点上,打印机40至44可以是任何类型的网络启用打印机,而不必是任何特殊类型的打印机。因为打印机40至44是网络启用打印机,所以它们通常由网络管理员连接和安装用于在网络上通信。安装打印机可以仅仅包括手工地在打印机自身上设置打印机配置和分配IP地址给该打印机。一旦打印机连接到网络,打印机实例然后就可以在工作站上创建以添加打印机到工作站的视窗注册表。存在各种常规技术用于用户在工作站自身处执行方法以添加打印机给视窗注册表,并且那些技术的任何一种仍然可以结合本发明使用。然而,本发明尤其针对网络管理员在远程位置添加新打印机给工作站的一个或多个的视窗注册表。此方法将在下面更加详细地描述,对于目前的讨论,一旦打印机已经安装在工作站上,用户就能够提交打印作业给打印机用于打印。
图2是示出了计算机工作站内部结构的例子的方框图,例如工作站20至23或管理员终端15任何之一。但是,为了简洁,图2的描述将参照工作站20进行。在图2中,工作站20包括中央处理单元(CPU)210,例如连接到计算机总线200的可编程微处理机。还连接到计算机总线200的是用于连接到键盘的键盘接口220、用于连接到鼠标或其他指示设备的鼠标接口230、用于连接到软盘的软盘接口240、用于连接到监视器或其他显示器的显示器接口250,和用于连接到基干10的网络接口260。
随机存取存储器(RAM)270连接到计算机总线200以提供CPU210对记忆存储器的访问,从而充当用于CPU210的主运行存储器。特别是,当执行存储程序指令序列时,CPU210加载那些来自硬盘280(或其他存储介质)的指令序列到RAM270和执行那些来自RAM270的存储程序指令序列。还应注意到,在视窗操作系统下可利用的标准盘交换技术使存储段从RAM270和硬盘280来回地交换。只读存储器(ROM)290存储不变式指令序列,例如用于CPU210的启动指令序列或者用于固定到工作站20的外围设备的操作的基本输入/输出系统(BIOS)序列。
硬盘280是存储CPU210可执行的程序指令序列的计算机可读介质的一个例子。程序指令可以构成视窗操作系统281、打印机驱动程序282、视窗操作系统注册表283、其他驱动程序284、字处理程序285、其他程序286、FTP/HTTP客户机287、其他文件288,和代理289。如上所述,操作系统281最好是诸如Microsoft Windows2000之类的视窗操作系统,尽管其他类型的操作系统也可以用于本发明。打印机驱动程序282用于在至少一个图形形成设备例如打印机40至44上准备用于打印的图形数据。视窗注册表283在视窗操作系统中当各种设备安装在工作站20上时存储用于注册所述设备的信息。其他驱动程序284包括用于连接到计算机总线200的剩余接口每一个的驱动程序。
字处理程序285是用于创建文档和图像的典型字处理机程序,例如Microsoft Word或Corel WordPerfect文档。其他程序286包括操作工作站20和运行期望应用程序所必需的其他程序。FTP/HTTP客户机287提供用于工作站20的功能以通过FTP(文件传输协议)和HTTP(超文本传输协议)协议从连接到网络的其他设备请求和接收数据和信息。其他文件288包括用于工作站20操作所必需的文件或由工作站20上的其他应用程序创建和/或保存的文件任何之一。例如,诸如Microsoft Internet Explorer或Netscape Navigator之类的互联网浏览器应用程序可以包括在其他文件288内。
在工作站20内的硬盘280上还包括代理289。代理289是根据本发明的远程管理应用的客户方部分。在此点上,如上所述,图2中所示结构可以应用到客户工作站20至23以及管理员工作站15。客户工作站20至23和管理员工作站15之间的一个差别是在工作站15中,代理289用远程管理应用的管理员方部分(在下文中称为“控制点”)代替。代理289和工作站15内的控制点的功能将在下面提供更加详细的描述,但是简短地,代理289从控制点接收指令,例如添加新打印机到视窗注册表的指令;和处理该指令以执行包含在该指令中的操作。由控制点传输到代理用于指令的协议可以是,例如TCP/IP,但是任何其他协议也可以替代使用。
图3和4分别描述了显示服务器30和51内部结构概观的方框图。在此点上,两个服务器的内部结构可以相同。但是,为了更加清楚,服务器30作为服务于局域网的服务器描述,而服务器51作为网络服务器描述。相应地,除特别指出的情况外,内部结构的下列描述同等地适用于服务器30和51两者,服务器30和51的相同元件具有相应的数字标号。在图3中,服务器30包括中央处理单元(CPU)310,例如连接到计算机总线300的可编程微处理机。连接到计算机总线300的还有用于连接到基干10的网络接口360。另外,随即存取存储器(RAM)370、硬盘320,和只读存储器(ROM)390也连接到计算机总线300。RAM370连接到计算机总线300以提供CPU310对记忆存储器的访问,从而充当用于CPU310的主运行存储器。特别地,当执行存储程序指令序列时,CPU310加载来自硬盘320(或其他存储介质)的那些指令序列到RAM370并执行来自RAM370的那些存储程序指令序列。还应注意到,标准盘交换技术使存储段从RAM370和硬盘320来回地交换。ROM390存储不变式指令序列,例如用于CPU310的启动指令序列或者用于固定到服务器30(未示出)的外围设备的操作的基本输入/输出系统(BIOS)序列。
硬盘320是存储CPU310可执行的程序指令序列的计算机可读介质的一个例子。在两个服务器30和51中,程序指令序列可以包括操作系统311(411)、网络接口驱动程序312(412)、打印机驱动程序文件313(413),和打印机配置文件314(414)。操作系统311可以是诸如Windows NT4.0(或它的后续改进版本)、UNIX、Novell Netware或其他这种服务器操作系统之类的操作系统。网络接口驱动程序312用于驱动用于连接服务器30到基干10的网络接口360。打印机驱动程序文件313和打印配置文件314最好是存储在服务器30或服务器51任何之一或两者中的打印机信息的综合数据库的一部分。在此点上,数据库最好包括用于和硬盘320中可以保存的打印机一样多的打印机(包括虚拟打印机)的信息以便用于几乎任何打印机(包括虚拟打印机)的打印机配置信息和打印驱动程序信息可以获得和安装在工作站20上。其他文件315包括操作服务器30和/或提供附加功能给服务器30所必需的其他文件或程序。
服务器30和服务器51之间的差别可能是服务器51最好包括FTP/HTTP客户机机417以向服务器51提供在网络上利用FTP和HTTP协议通过网络接口460检索和传输数据文件的能力;还包括工作站例如在工作站20内的FTP/HTTP客户机可以访问的FTP/HTTP服务器418。当然,FTP/HTTP客户机和服务器还可以结合在服务器30内,但为了简洁,图3中省略了这种情况。
现在将更加详细地描述代理如何接收和处理控制点发布的指令。
图5是描述用于代理289的结构的方框图。图5中所描述的结构已经设计为对Windows NT和视窗版本9x具有特殊适应性,但很容易理解,所述结构的功能性不仅限于此,它可以适用于任何操作系统。如图5所示,代理通过TCP/IP网络500与网络通信,网络500包括通过网络接口260接收指令或请求的工作站20。代理通过TCP/IP网络500接收指令和发现请求,并通过TCP/IP网络500响应所述指令和请求。代理接收的请求的例子可以是管理员终端15内的控制点发布的发现请求以确定哪个代理连接到网络。
在此点上,代理最好包括发现模块501以接受和处理这种请求。因而,发现模块51提供了一种用于代理被管理员终端15内的控制点发现的方法。发现由被动收听的发现模块501通过公知IP端口执行用于来自控制点的输入“搜索”请求(13-20)。该“搜索”请求可以由控制点利用例如简单服务发现协议(SSDP)(Simple ServiceDiscovery Protocol)、简单查找协议(SLP)(Simple Lookup Protocol),或某些其他类型的发现协议执行。在发现模块51接收“搜索”请求的基础上,模块51以IP端口响应用于代理的安全收听模块502。管理员15的控制点然后利用安全收听模块502的IP端口以提供用于由代理执行的指令。
安全收听模块502最好是动态创建可重复使用的加密支持TCP数据插槽。这样,安全性得到提高,因为确定安全收听模块的IP端口的唯一方法是通过所述发现模块。模块502收听指令端口用于把代理作为目标的指令。模块502接收由控制点传输的加密TCP指令,解密该指令并验证TCP信息的完整性。在成功解密和安全检查的基础上,该解密TCP数据传输到控制模块503。
控制模块503是代理的主协调器。控制模块503的职责包括创建、毁坏和控制安全收听器,以及接收来自安全收听器的TCP信息数据并且将此信息数据转换成代理的其他元件可以利用的信息格式。该转换的格式最好是包括“操作”和用于操作的参数的简单对象访问协议(SOAP),但其他格式也可以替代利用。控制模块对SOAP信息执行验证和某些安全检查,如果该信息通过,则信息被解码以提取来自SOAP信息的操作和参数表。在解码SOAP信息的过程中,SOAPSDKS05和XML分析程序506提供功能给控制模块。SOAP SDK505的职责是(1)提供SOAP解码功能给控制模块用于将输入SOAP信息解码成包含的操作和“输入”参数;和(2)提供SOAP编码功能给控制模块用于将操作结果和“输出”参数编码成SOAP信息用于传输到控制点。XML分析程序506的职责是通过分析从安全收听器获得并传输到控制模块的XML数据支持SOAP SDK进入单元标签(element tag)。此单元标签用于编码SOAP信息,并且为了解码SOAP信息必须获得。一旦SOAP信息已经解码,控制模块就决定调用适当程序以处理操作。在此点上,控制模块可以确定它自身具有编码从而处理所述调用,或者它可以将编码交给操作分解器504。
当由控制模块调用时,操作分解器504的职责是查找实现请求操作所需要的编码。如果此操作被认为是“核心操作”(即代理应用自身所包括的操作作为核心功能,例如复制文件、DOS运行、删除文件、注册表操作等等),则操作分解器在内部从核心操作处理器507调用适合功能。另一方面,如果此操作不是核心操作,则操作分解器将检查任何添加可扩充功能给代理的已安装扩充操作(即插件程序),例如安装打印机插件程序508。此扩充操作可以是例如外部模块(dll),它可以由控制点添加到代理和从代理删除。一旦正确编码已经定位,则操作就由此编码执行,从而操作分解器产生“返回”参数表并把它传输到控制模块。而控制模块使用SOAP SDK产生被传输到安全收听器502的SOAP信息。安全收听器502加密该信息并把它传输回控制点。
现在将参照图6更加详细地描述安装打印机扩充操作508。安装打印机扩充508,或者一般地称为动态设备安装程序(DDI)701,接收输入操作调用600。此操作调用可以是管理员在终端15内的控制点执行一个操作的结果以添加新打印机例如打印机40到工作站20的代理。此操作可以包括添加新打印机和参数表的指令。参数表可以包括例如所添加打印机的识别信息(例如,IP地址、打印机的名称、Netbios名称等等),和打印机的设备类型。在接收打印机识别信息和设备类型基础上,DDI执行用于相应于设备类型的设备配置信息的公知数据库702的查询(601)。查询数据库702可以包括执行用于打印机配置文件414的服务器51的FTP或HTTP查询。当然,如果配置文件的数据库包括在工作站20上、诸如软盘或CD-ROM或任何其他存储单元之类的记录介质上,则DDI替代地查询那些位置。不管设备配置文件保存在哪里,打印机配置文件都在响应602中提供给DDI。
在已经获得设备配置信息的基础上,DDI自动地安装设备配置文件(606)和自动地创建用于与打印机(603)通信的端口。即DDI通过确定用于与打印机通信的适合端口配置打印机作为本地打印机(即对等地与工作站通信的打印机)和在不需要用户输入的情况下在工作站20的视窗操作系统内配置所述端口。DDI通过手工地在对假脱机程序透明的注册表中创建必要的数据结构而自动地创建端口。DDI然后启动和中止假脱机程序以便假脱机程序重新读取所述数据结构,在此之后假脱机程序知道新打印机端口和知道所述数据结构可以用于发送数据。
DDI然后执行用于所安装打印机类型的打印驱动程序文件的查询(604)。执行用于打印驱动程序文件的数据库703的查询,此打印驱动程序文件最好保存在作为数据库702的同一位置内。适当的打印驱动程序文件从数据库确定并通过响应(605)返回到DDI,从而DDI自动地安装驱动程序文件用于打印机(606)。一旦打印机已经配置、用于通信的端口已经创建,和驱动程序文件已经安装,则DDI在视窗注册表中注册新打印机和创建打印机(607)的实例。因此,新打印机是这样添加的,即通过控制点发布添加新打印机的指令给代理,从而DDI被调用和处理所述指令以添加新打印机。然后用户能够直接从工作站向打印机提交打印作业。
图7至10描述了用于本发明的控制点的图形用户界面的例子,通过这些界面,网络管理员可以在客户工作站上执行各种远程操作,包括添加新打印机。如图7所示,控制点界面可以包括代理窗格750、安装窗格751和记录窗格752。
代理窗格750提供了用于管理员观察网络上的代理、观察每个代理的详细信息和选择一个代理以添加新打印机或添加驱动程序扩充的方法。在图7中,仅仅描述了一个代理,但应注意到,代理窗格典型地将列出多个代理。代理窗格将在图8和9中更加详细地描述,图8描述了选择“代理目录标签801的代理窗格,而图9描述了选择“代理细节”标签802的代理窗格。如图8所示,选择“代理目录”标签描述了网络中所有已发现代理的目录。如上所述,控制点可以发布“搜索”请求以确定网络上的所有代理,并且所有代理响应在图8的目录中描述。如图9所示,当选择“代理细节”标签时,管理员可以观察任何所选择代理的细节。细节可以包括例如代理的IP地址、已安装打印机,和哪些扩充插件程序目前已安装在代理中。
安装窗格751包括例如安装打印机标签900和企业驱动程序扩充标签901。利用标签900或901任何之一,管理员可以选择打印机或驱动程序扩充以添加到代理窗格中所描述代理。如图7所示,当选择安装打印机标签时,网络上安装的所有打印机在安装窗格中列出。从而,管理员可以选择添加到代理窗格中所描述代理的打印机。如图10所示,当选择企业驱动程序扩充标签901,可使用驱动程序的目录提供。从这个目录中,管理员可以选择驱动程序扩充添加到代理窗格中所描述代理。
记录窗格752列出了管理员做出的任何操作以便管理员可以检查操作结果。如果管理员在多个代理中安装多个项目则此窗格相当有用。
现在参照图11至13描述管理员添加新打印机到代理的例子。如图11所示,代理目录标签已经选择,并且所有发现的代理在代理窗格中列出。另外,安装打印机标签在安装窗格中选择并且网络上的所有打印机在窗格中列出。为了添加打印机1000(CANON_PRINTER)到代理1001(cx295684-abc),管理员使用诸如鼠标之类的指示设备点击安装窗格中的打印机1000并且执行简单的拖放操作以将所选打印机1000拖到代理窗格中的代理1001的图标上。图12描述了当打印机1000的图标从安装窗格拖到代理窗格中的代理1001的图标上时的打印机1000的幻像。在图13中,一旦打印机1000的图标位于代理1001的图标上,代理1001的图标就加亮,在此之后,管理员完成拖放过程。响应于添加打印机1000到代理1001的拖放操作,控制点发布代理1001的安全收听模块端口添加打印机1000的指令。根据上面参照图5和6所述程序,代理处理所述指令并且新打印机安装在包含代理1001的工作站上的视窗注册表中。使用相同方法,管理员可以执行简单拖放操作以添加驱动程序扩充到所选代理。类似地,管理员可以通过在一组包含多个代理的工作站上执行简单拖放操作添加打印机到一组工作站。
图14是根据本发明用于远程地添加新打印机到工作站的处理步骤的流程图。图14的处理步骤包括既在控制点又在代理处执行的步骤,着重强调用于代理的安装打印机扩充模块(一般地称为DDI(动态设备安装程序))。在步骤S1400中,控制点发现网络上的所有代理和打印机。如上面参照图5所述,所述发现可以通过控制点发布搜索请求到用于网络上每个计算机工作站的公知IP端口或者通过网络上的所有设备仅仅收听网络上的信息执行。如果工作站具有已安装代理,则代理的发现模块通过将用于代理的安全收听模块的IP端口提供给控制点响应搜索请求。结果,在网络上发现的所有代理在控制点图形用户界面(在下文中称为“代理管理控制台”)的代理窗格中列出。当用户,最好是网络管理员,想要添加新打印机到网络上的代理时,用户执行添加新打印机的操作(步骤S1401)。如上面参照图11至13所述,这个过程可以仅仅包括从代理管理控制台的安装窗格中选择打印机和将所选打印机拖放到代理窗格中的代理的图标上。在拖放操作完成的基础上,控制点产生加密TCP消息并将此消息传输到用于代理的安全收听IP端口(步骤S1402)。
在步骤S1403中,安全收听模块接收所述加密TCP消息、解密此消息、执行某些安全检查,和将此信息传输到控制模块。此过程在上面参照图5作了详细描述。控制模块解码消息、调用DDI和将消息传输到DDI(步骤S1404)。此过程也在上面参照图5作了详细描述。在接收包括添加新打印机的操作、所添加新打印机的设备类型和名称或IP地址的信息基础上,DDI基于设备类型在本地或通过FTP/GTTP远程地从数据库获得设备配置信息(步骤S1405)。在获得配置文件基础上,DDI将这些文件安装在工作站上(步骤S1406)和创建用于与打印机通信的端口(步骤S1407)。自动创建端口的过程在上面参照图6作了讨论。DDI还在本地或通过FTP/HTTP远程地从数据库获得用于打印机的打印驱动程序文件(步骤S1408),和将打印驱动程序文件安装在工作站上(步骤S1409)。DDI然后在工作站的视窗注册表中创建新打印机实例(步骤S1410)。
控制模块通过DDI监控操作的执行,并在完成基础上产生关于操作状态的消息(步骤S1411)。即控制点产生指示添加新打印机的操作是否成功的信息并将此消息传输到安全收听器模块。安全收听器模块然后传输一条SOAP消息给控制点(步骤S1412),从而此消息显示在代理管理控制台的记录窗格中(步骤S1413)。
尽管上述内容提供了将真实打印机(即物理地连接到网络的打印机)添加到视窗注册表的描述,但图14的处理步骤也可以用于安装虚拟打印机。虚拟打印机不是输出打印作业硬拷贝的真实打印机,但仍然是在应用程序中选择的打印机,只不过打印作业以特殊格式提交并且提交的作业被打印到用户工作站的文件。图14可以用于管理员从替代列表中选择虚拟打印机,而不是从图11安装窗格中示出的列表中选择真实打印机。此过程同上述过程相同,在其中DDI从数据库中获得设备配置信息和驱动程序文件并将虚拟打印机安装在用户工作站上。
本发明已经参照示出的特殊实施例作了描述。应理解的是,本发明不限于上述实施例,本领域内的普通技术人员可以在不背离本发明精神和范围的情况下做出各种更改和修改。
权利要求
1.在通过一个网络与一个控制点终端进行通信的一个客户工作站的一个打印机文件夹中远程地安装一个新打印机的一种方法,此方法包括如下步骤在所述控制点终端中,执行在所述客户工作站的所述打印机文件夹中添加所述新打印机的操作;和响应于所执行的该操作,所述控制点终端把所添加的所述新打印机的识别信息传送给所述客户工作站的一个代理;和在所述客户工作站中,所述代理接收来自所述控制点终端的所述识别信息;响应于接收新打印机的识别信息,所述代理至少部分地根据所接收识别信息而自动地获得打印机配置信息和打印驱动程序信息;所述代理根据所获得的打印机配置信息和打印驱动程序信息而自动地配置打印机并安装打印驱动程序;和所述代理创建所述打印机的一个本地管理的实例。
2.根据权利要求1所述的方法,其中,新打印机的识别信息是打印机的网络地址。
3.根据权利要求2所述的方法,其中,网络地址是新打印机的IP地址。
4.根据权利要求1所述的方法,其中,识别信息是新打印机的DNS名称。
5.根据权利要求1所述的方法,其中,识别信息是新打印机的NetBios名称。
6.根据权利要求1所述的方法,其中,新打印机是虚拟打印机。
7.根据权利要求1所述的方法,其中,打印机配置信息和打印驱动程序信息通过代理从网络上的远程设备自动地获得。
8.根据权利要求7所述的方法,其中,远程设备是FTP服务器。
9.根据权利要求1所述的方法,还包括代理自动地创建用于与新打印机通信的端口。
10.根据权利要求1所述的方法,其中,在控制点终端中执行的添加新打印机的操作包括在控制点管理控制台的安装窗格中选择新打印机的图标和将所选打印机拖放到管理控制台的代理窗格中的代理图标上。
11.根据权利要求1所述的方法,其中,新打印机的识别信息通过控制点终端以加密TCP信息传输给代理。
12.根据权利要求11所述的方法,其中,加密TCP信息传输给代理的安全收听端口。
13.根据权利要求12所述的方法,其中,安全收听端口的地址由控制点终端在传输加密TCP信息之前用发现程序从代理获得。
14.计算机可执行处理步骤,用于在通过网络与控制点终端通信的客户工作站的打印机文件夹中安装新打印机,此处理步骤包括如下步骤在控制点终端中,执行在客户工作站的打印机文件夹中添加新打印机的操作;和响应于已经执行的操作,控制点终端传输所添加新打印机的识别信息给客户工作站中的代理;和在客户工作站中,代理接收来自控制点终端的识别信息;响应于接收新打印机的识别信息,代理至少部分地基于所接收识别信息自动地获得打印机配置信息和打印驱动程序信息;代理基于获得的打印机配置信息和打印驱动程序信息自动地配置打印机并安装打印驱动程序;和代理创建打印机在本地管理的实例。
15.根据权利要求14所述的计算机可执行处理步骤,其中,新打印机的识别信息是打印机的网络地址。
16.根据权利要求15所述的计算机可执行处理步骤,其中,网络地址是新打印机的IP地址。
17.根据权利要求14所述的计算机可执行处理步骤,其中,识别信息是新打印机的DNS名称。
18.根据权利要求14所述的计算机可执行处理步骤,其中,识别信息是新打印机的NetBios名称。
19.根据权利要求14所述的计算机可执行处理步骤,其中,新打印机是虚拟打印机。
20.根据权利要求14所述的计算机可执行处理步骤,其中,打印机配置信息和打印驱动程序信息通过代理从网络上的远程设备自动地获得。
21.根据权利要求20所述的计算机可执行处理步骤,其中,远程设备是FTP服务器。
22.根据权利要求14所述的计算机可执行处理步骤,还包括代理自动地创建用于与新打印机通信的端口。
23.根据权利要求14所述的计算机可执行处理步骤,其中,在控制点终端中执行的添加新打印机的操作包括在控制点管理控制台的安装窗格中选择新打印机的图标和将所选打印机拖放到管理控制台的代理窗格中的代理图标上。
24.根据权利要求14所述的计算机可执行处理步骤,其中,新打印机的识别信息通过控制点终端以加密TCP信息传输给代理。
25.根据权利要求24所述的计算机可执行处理步骤,其中,加密TCP信息传输给代理的安全收听端口。
26.根据权利要求25所述的计算机可执行处理步骤,其中,安全收听端口的地址由控制点终端在传输加密TCP信息之前在发现过程中从代理获得。
27.位于一个客户工作站中的一种代理,用于执行远程地添加新打印机到客户工作站的操作,所述代理执行如下步骤接收添加到客户工作站的新打印机的识别信息,此识别信息从控制点终端传输到代理;响应于接收新打印机的识别信息,代理至少部分地基于接收的识别信息自动地获得打印机配置信息和打印驱动信息;基于获得的打印机配置信息和打印驱动程序信息自动地配置打印机并安装打印驱动程序;和在客户工作站的视窗注册表中创建打印机在本地管理的实例。
28.根据权利要求27所述的代理,其中,识别信息由代理作为加密TCP信息的一部分接收。
29.根据权利要求28所述的代理,其中,代理解密所述加密TCP信息并解码该信息以便获得包含在随同识别信息的信息中的识别信息和操作信息。
30.根据权利要求27所述的代理,其中,响应于用户在控制点终端中执行拖放的操作,即将新打印机的图标从管理控制台安装窗格拖放到管理控制台代理窗格中的代理图标上,所述识别信息传输到代理。
31.一种系统,用于远程地添加新打印机到客户工作站,包括控制点,在此控制点中,执行在客户工作站的打印机文件夹中添加新打印机的操作,其中,响应于所执行的操作,控制点传输添加到客户工作站中的代理的新打印机的识别信息;和代理,位于客户工作站中,接收来自控制点的识别信息,响应于所述接收识别信息,代理至少部分地基于接收的识别信息自动地获得打印机配置信息和打印驱动信息,基于获得的打印机配置信息和打印驱动程序信息自动地配置打印机并安装打印驱动程序;和在工作站的打印机文件夹中创建打印机在本地管理的实例。
32.根据权利要求31所述的系统,其中,在控制点中执行的操作包括将新打印机的图标从管理控制台安装窗格拖放到管理控制台代理窗格中的代理的图标上。
33.根据权利要求31所述的系统,其中,控制点将识别信息作为加密TCP信息的一部分传输给代理。
34.根据权利要求33所述的系统,其中,加密信息传输给代理的安全收听端口,安全收听端口的地址由控制点在传输加密信息之前作为发现过程的一部分获得。
35.控制点的图形用户界面,用于执行远程地添加新打印机到客户工作站的代理的过程,包括安装窗格,提供可以添加到代理的打印机的列表;和代理窗格,提供网络上的代理的列表。
36.根据权利要求35所述的图形用户界面,其中,通过从安装窗格的列表中选择打印机和拖放所选打印机到代理窗格的列表中的代理图标上,新打印机安装在代理上。
全文摘要
在通过网络与控制点通信的客户工作站的打印机文件夹中远程地安装新打印机,其步骤是在控制点终端中,执行在客户工作站的打印机文件夹中添加新打印机的操作;和响应于已经执行的操作,控制点终端传输所添加新打印机的识别信息给客户工作站的代理;和在客户工作站中,代理接收来自控制点终端的识别信息;响应于接收新打印机的识别信息,代理至少部分地基于所接收识别信息自动地获得打印机配置信息和打印驱动程序信息;代理基于获得的打印机配置信息和打印驱动程序信息自动地配置打印机并安装打印驱动程序;和代理创建打印机在本地管理的实例。所述操作可以仅仅是选择新打印机和打印机所添加到的工作站。打印机配置信息和打印驱动程序信息可以自动地从网络上的远程设备中获得,例如FTP服务器,并且用于与打印机通信的端口可以自动地创建。唯一标识符可以是打印机的网络地址,例如IP地址、打印机名称、DNS名称或NetBios名称,并且打印机可以是虚拟打印机,而不是安装网络上的真实打印机。
文档编号G06F13/14GK1453696SQ0312224
公开日2003年11月5日 申请日期2003年4月23日 优先权日2002年4月23日
发明者戴文·J·凯普, 克里斯托夫·J·卡赛兰诺 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1