下载计算机硬件设备驱动程序的方法、系统、计算机及服务器的制作方法

文档序号:6610265阅读:218来源:国知局

专利名称::下载计算机硬件设备驱动程序的方法、系统、计算机及服务器的制作方法
技术领域
:本发明涉及下载计算机硬件设备驱动程序的方法、系统、计算机及服务器,属于计算机系统维护
技术领域

背景技术
:在用户使用计算机过程中,经常会因为缺乏硬件设备驱动程序或者驱动程序工作不正常而导致计算机不能正常工作,影响到用户对计算机的使用。比如说,安装了新的硬件设备,但没有找到合适的驱动程序,此刻硬件则无法正常工作;或者,某个硬件设备的驱动程序发生故障,从而导致硬件不能正常工作;或者,用户重新安装了操作系统,就需要重新安装所有的硬件驱动程序。以上问题在用户使用电脑的过程中也会经常遇到,如硬件设备没有正确安装驱动的时候,无法获知其型号,厂商等信息,因而用户无法从网络上找到正确的驱动程序,从而影响了用户正常的使用。现有的解决方案为电脑制造商和硬件制造商一般在网络上或者光盘载体上放置驱动程序供用户使用,但光盘载体会损坏或者丢失,下载地址经常被忘记;同时,由于某些用户技术水平或相关知识的缺乏,这种解决方案不能帮助用户很好的解决问题。随着网络的普及,也有一些电脑设备制造商充分利用网络的优势,通过预置在用户计算机系统中的代理程序自动监测本机硬件设备,并通过网络从驱动服务器下载相应的驱动程序,并自动帮助用户安装上,以解决计算机系统的驱动程序的安装和维护等方面的故障。但是,由于用户的计算机一般都有很多的硬件设备,这些设备来源于不同的制造商,并非每个制造商都能提供自动化的驱动程序检测下载和安装服务;即使在网络上构建和维护一个驱动程序库,由于其维护成本之高,许多硬件制造商不愿意提供这种服务。因此,对于电脑用户来说,硬件设备驱动程序的安装和维护并不能被很好的解决,因此会影响电脑的正常使用。
发明内容本发明的目的是针对上述现有技术的不足,提出了一种下载计算机硬件设备驱动程序的方法、系统、计算机及服务器,通过硬件标识以及操作系统环境信息自动在网络中搜寻匹配的驱动程序,以实现在不依赖于硬件制造商服务水平及用户技术水平的情况下,有效地解决硬件设备驱动程序的安装、修复、升级等问题。为实现上述目的,本发明提供一种下载计算机硬件设备驱动程序的方法,其中包括接收指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息;根据所述驱动程序下载请求消息中的硬件标识以及所述操作系统环境信息查询数据库得到安装有所述硬件设备驱动程序的计算机列表;所述数据库存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;所述计算机列表至少包括计算机的网络连接信息;从所述计算机列表中选择一或多个计算机,根据所选计算机的网络连接信息下载所述驱动程序到本地计算机。为实现上述目的,本发明提供了一种计算机,其中包括一代理模块,用于发送指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信自为实现上述目的,本发明提供了一种服务器,其中包括数据库,用于存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;查询模块,与所述数据库连接,用于接收驱动程序下载请求消息,并根据驱动程序下载请求消息中的硬件标识以及操作系统环境信息查询所述数据库得到安装有所述硬件设备驱动程序的计算机列表;以及下载模块,与所述查询模块连接,用于从所述计算机列表中选择一或多个计算机,根据该计算机的网络连接信息下载所述驱动程序到本地计算机。为实现上述目的,本发明提供了一种计算机,其中包括一代理模块,用于发送指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息;所述代理模块还包括一下载模块,用于从计算机列表中选择一或多个计算机,根据该计算机的网络连接信息下载所述驱动程序到本地计算机。为实现上述目的,本发明提供了一种服务器,其中包括数据库,用于存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;查询模块,与所述数据库连接,用于接收驱动程序下载请求消息,并根据驱动程序下载请求消息中的硬件标识以及操作系统环境信息查询所述数据库得到安装有所述硬件设备驱动程序的计算机列表。为实现上述目的,本发明提供了一种下载计算机硬件设备驱动程序的系统,包括通过网络连接的服务器及至少一台计算机,其中,所述每一计算机包括代理模块,用于发送指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息;所述服务器包括数据库,用于存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;以及查询模块,与所述代理模块及所述数据库连接,用于接收驱动程序下载请求消息,并根据驱动程序下载请求消息中的硬件标识以及操作系统环境信息查询所述数据库得到安装有所述硬件设备驱动程序的计算机列表;所述代理模块或所述服务器还包括下载模块,与所述查询模块连接,用于从所述计算机列表中选择一或多个计算机,根据该计算机的网络连接信息下载所述驱动程序到本地计算机。以上技术方案,当一计算机需要对一硬件设备安装驱动程序或对原有驱动程序进行修复或升级时,该硬件设备所在的计算机可以通过网络自动搜寻具有相同硬件设备,相同操作系统环境的计算机,并且从这些符合条件的计算机中下载对应的驱动程序到本地计算机,并进行驱动程序安装/修复/升级效地解决硬件设备驱动程序的维护问题。图1为本发明下载计算积』更件设备驱动程序的方法实施例一的流程图;图2为本发明下载计算机硬件设备驱动程序的方法实施例二的流程图;图3为本发明下载计算机硬件设备驱动程序的方法实施例三的流程图;图4为本发明下载计算机硬件设备驱动程序的系统实施例一的结构示意图5为本发明下载计算机硬件设备驱动程序的系统实施例二的结构示意图。具体实施例方式下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。硬件设备制造商生产的设备通常都是批量生产的,通过各种销售渠道出售给最终用户。这就是说,对于同一个类型同一型号的硬件设备即具有同一硬件标识的硬件设备,一般有很多人在使用,当然,对于类型不同及品牌不同的硬件设备,用户的拥有量也会不同,但拥有同样硬件设备的用户一般不会是唯一的。硬件设备要想在计算机中正常工作,就必须安装正确的驱动程序,而且,相同的硬件设备在相同的操作系统环境下,其需要的驱动程序具有互换性。本领域技术人员应该能够理解,只要硬件设备相同,并且操作系统环境相同,那么其硬件设备驱动程序就具有可互换性。用户从制造商那里购买硬件设备,制造商会提供相应的驱动程序,并且这个驱动程序可以根据操作系统的不同而分为不同的版本,如有应用于Windows操作系统的驱动程序,也有应用于Linux操作系统的驱动程序。随着网络的普及,绝大部分计算机都已接入网络,我们可以让计算机通过网络自动搜寻具有相同设备,相同操作系统环境的计算机,并且从这些计算机中提取和下载对应的驱动程序到本地计算机,以实现驱动程序的自动维护问题。驱动程序的自动维护,包括安装驱动程序或对原有驱动程序进行修复或升级等问题。基于上述技术背景以及所要解决的技术问题,本发明提供一种下载计算机硬件设备驱动程序的方法。图1为本发明一种下载计算机硬件设备驱动程序实施例一的流程图,其中包括步骤l、接收指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息。指定硬件设备通常指那些待安装/修复/升级驱动程序的硬件设备。代理模块读取待安装/修复/升级驱动程序的硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息后,向服务器发送驱动程序下载请求消息。步骤2、根据所述驱动程序下载请求消息中的硬件标识以及所述操作系统环境信息查询数据库得到安装有所述硬件设备驱动程序的计算机列表。其中,所述数据库存储安装有驱动程序的硬件设备的碩:件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;所述计算机列表至少包括计算机的网络连接信息。步骤3、从所述计算机列表中选择一或多个计算机,根据所选计算机的网络连接信息下载所述驱动程序到本地计算机。该实施例中,当某台计算机或正在使用计算机的用户需要对一硬件设备安装驱动程序或对原有驱动程序进行修复或升级时,该硬件设备所在的计算机可以通过网络自动搜寻具有相同硬件设备,相同操作系统环境的计算机,并且从这些符合条件的计算机中下载对应的驱动程序到本地计算机,以实现在不依赖于硬件制造商服务水平及用户技术水平的情况下,有效地解决硬件设备驱动程序的维护问题。以下以本地计算机插入一种硬件设备如一种显卡(ATIMobilityRadeonX1300),及其在本地计算机运行的操作系统WindowsXP为例说明计算机硬件设备驱动程序的安装方法。为实现上述方法,本发明设计的计算机硬件设备驱动程序下载系统至少包括若干台计算机以及服务器。其中,每一计算机通过网络与服务器连接、交互。服务器中包含一数据库,该数据库存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息。当某台计算机或正在使用某台计算机的用户需要对一硬件设备进行维护时,通过计算机向服务器发送指定硬件设备的驱动程序下载请求消息,由服务器根据驱动程序下载请求消息中的硬件标识以及所述操作系统环境信息查询数据库以得到安装有所述硬件设备驱动程序的计算机列表。以下分别通过图2、图3说明基于上述计算机硬件设备驱动程序下载系统时计算积j更件设备驱动程序下载方法的流程。图2为本发明一种下载计算机硬件设备驱动程序的方法实施例二的流程图,包括以下步骤步骤ll、每一计算机的代理模块,通过操作系统接口读取计算机中安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息存储至服务器中的数据库。如表l所示,以下信息设备名称、设备标识、设备制造商等可以组成唯一区分该硬件设备的硬件设备标识。一般来说,设备标识和设备名称均可以独立作为硬件标识,但考虑到实际情况,将上述信息组合起来作为设备标识,可以保证更高的匹配精度,从而提高驱动程序之间的一致性。操作系统环境信息可以由以下信息组成操作系统版本、操作系统补丁版本以及操作系统语言等。对于操作系统环境信息来说,也可以只是简单的区分操作系统的主要版本,如WindowsXP、Windows98等,而不必关心操作系统的补丁版本。也是为了保证驱动程序与操作系统环境的一致性,所以尽可能的确保操作系统环境的一致性。如果通过严格的匹配未搜索到符合条件的驱动程序,这时候可以放宽匹配条件重新搜索。计算机的网络连接信息可以由以下信息组成计算机的网络IP地址、网络端口、以及网络当前连接状态等。表l、数据库中存储的信息一<table>tableseeoriginaldocumentpage12</column></row><table>步骤12、服务器接收指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息。指定硬件设备通常指那些待安装/修复/升级驱动程序的硬件设备。代理模块读取待安装/修复/升级驱动程序的硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息后,向服务器发送驱动程序下载请求消息。这里假设待安装/修复/升级驱动程序的硬件设备为ATIMobilityRadeonXI300,ATIMobilityRadeonXI300所在计算机的操作系统环境为WindowsXP为例。该实施例中,当计算机插入一硬件设备后,未发现该计算机中存在与该硬件设备匹配的驱动程序,向服务器发送该硬件设备的驱动程序下载请求消息。步骤13、服务器根据所述驱动程序下载请求消息中的硬件标识以及所述操作系统环境信息查询数据库得到安装有所述硬件设备驱动程序的计算机列表。如根据ATIMobi1ityRadeonXI300的硬件标识以及操作系统WindowsXP的环境信息得到计算机列表。该实施例中计算机列表包括计算机的网络连接信息,如表2所示。表2、计算^L列表一<table>tableseeoriginaldocumentpage13</column></row><table>计算机列表可以通过预设方法检索数据库得到,该实施例采用二次检索得到。可以通过以下两个步骤首先根据所述硬件标识查询数据库得到具有所述硬件标识对应的计算机硬件设备的计算机中间列表;根据所述操作系统环境信息查询所述计算机中间列表得到具有所述操作系统环境的计算机列表。还可以通过以下两个步骤根据所述操作系统环境信息查询数据库得到具有所述操作系统环境的计算机中间列表;根据所述硬件标识查询所述计算机中间列表得到具有所述硬件标识对应的计算机硬件设备的计算机列表。步骤14、计算机接收服务器返回的计算机列表,从所述计算机列表中选择一或多个计算机,根据所选计算机的网络连接信息下载所述驱动程序到本地计算机。具体为从表2中的计算机列表中选择一或多个当前网络状态为连接状态的计算机,根据该计算机的网络连接信息下载所述驱动程序到本地计算机。在实际操作中除了将安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息存储至服务器中的数据库之外,为了便于信息的准确性,还将所述硬件设备对应的安装的驱动程序信息存储到数据库,驱动程序信息包括以下信息驱动程序版本、驱动程序发布日期、数字签名及驱动程序兼容等级等。图3为本发明一种下载计算机硬件设备驱动程序的方法实施例三的流程图,包括以下步骤步骤21、每一计算机的代理模块,通过操作系统接口读取计算机中安装有驱动程序的硬件设备的硬件标识、驱动程序信息、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息存储至服务器中的数据库,如表3所示。表3数据库中存储的信息二<table>tableseeoriginaldocumentpage14</column></row><table><table>tableseeoriginaldocumentpage15</column></row><table>上表中数据库中没有存储驱动程序的安装文件,只是将驱动程序的信息提取出来存储到数据库,因此在不会对数据库造成较大的存储压力。步骤22、服务器接收指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息。指定硬件设备具体指待安装/修复/升级驱动程序的硬件设备。代理模块读取待安装/修复/升级驱动程序的硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息后,向服务器发送驱动程序下载请求消息。仍以待安装/修复/升级驱动程序的硬件设备为ATIMobilityRadeonXI300、ATIMobilityRadeonXI300所在计算机的操作系统环境为WindowsXP为例。该实施例中,计算机或者正在使用计算机的用户,发现某一硬件设备的驱动程序版本较低或兼容性较差时,需要对改硬件设备的驱动程序进行修复或升级,可以主动地触发计算机向服务器发送该硬件设备的驱动程序下载请求消息。步骤23、服务器根据所述驱动程序下载请求消息中的硬件标识以及所述操作系统环境信息查询数据库得到安装有所述硬件设备驱动程序的计算机列表。由于该实施例中数据库事先存储有驱动程序信息,因此该实施例中的计算机列表除了包括计算机的网络连接信息外,也会相应的包含驱动程序信息,如表4所示。表4、计算机列表二<table>tableseeoriginaldocumentpage15</column></row><table><table>tableseeoriginaldocumentpage16</column></row><table>步骤24、计算机接收服务器返回的计算机列表,使用该计算机的用户从所述计算机列表中选择一或多个计算机,根据所选计算机的网络连接信息下载所述驱动程序到本地计算机。具体可以根据驱动程序信息中的驱动程序兼容等级从表4中的计算机列表中优先选择一或多个计算机,如表4中第二条信息项及第三条信息项满足要求,且第三条信息项所在的计算机网络状态为连接,因此第三条信息项符合条件,则根据第三条信息项中计算机网络IP地址"202.192.113.1"下载所述驱动程序到本地计算机。另外,存在以下可能硬件设备驱动程序的人为恶意修改,或加入病毒或木马,当被其他用户下载后,即有可能造成驱动程序不可用或病毒传播等。为了防止安装恶意修改或携带病毒的驱动程序,可以在安装之前验证驱动程序的官方认证信息或数字签名信息,若与官方认证信息或数字签名信息相符,则安装此驱动程序,否则,拒绝安装。为了进一步防止恶意修改或携带病毒的驱动程序给用户造成的损失,还可以在下载之前首先做驱动程序特征值比对。数据库中的驱动程序信息包括有驱动程序特征值,该特征值可以采用HASH算法得到。HASH算法是一种散列算法,可以用一个固定长度的信息标识一组信息。如可以采用HASH算法将驱动程序的所有相关信息或主要信息计算出32位HASH值,用一个HASH值,如"F219F5D11353984C53072EBC333C8BC823477A55"代替驱动程序的一组信息,将最初计算的HASH值作为驱动程序的特征值存储到凄t据库。一方面由于采用HASH值代替驱动程序的一组信息,因而进一步减轻数据库的存储压力,降低了硬件投资的成本;另一方面,由于HASH值的唯一性,当所选计算机中所述驱动程序被恶意修改或加入病毒后,再次计算驱动程序的HASH值就会与初始HASH值不一致,因此可以在下载驱动程序之前,通过计算当前的HASH值,与数据库中记录的HASH值进行比对,以确定当前驱动程序的完整性和/或安全性,若完全一致,则说明当前驱动程序是完整及安全的;若存在不一致,则说明当前驱动程序不完整和/或不安全。以上下载计算机硬件设备驱动程序的方法的实施例中,在根据所选计算机的网络连接信息下载所述驱动程序到本地计算机之后还包括在本地计算机上安装/修复/升级所述驱动程序。在本地计算机上安装所述驱动程序或按照所述驱动程序对原有驱动程序进行修复或升级之后,还包括将安装有所述驱动程序的硬件设备的硬件标识、本地计算机的操作系统环境信息、以及本地计算机的网络连接信息存储至数据库。若数据库中包括驱动程序信息,则还包括将安装的驱动程序或修复或升级后的驱动程序信息存储至数据库。本领域技术人员应当能够理解,服务器中的数据库信息有时会更新不及时,这时根据所述硬件标识以及所述操作系统环境信息查询数据库时,有可能未发现安装有所述硬件设备驱动程序的计算机,服务器还可以通过广播方式查询网络中的计算机,以便找到安装有所述硬件设备驱动程序的计算机,得到计算机列表。服务器也可以不包括数据库,当服务器接收到指定硬件设备的驱动程序下载请求消息,可以直接通过广播的方式查询网络中的计算机,以便找到安装有所述硬件设备驱动程序的计算机,得到计算机列表。本发明还提供一种下载计算机硬件设备驱动程序的系统。图4为本发明一种下载计算机硬件设备驱动程序的系统实施例一的结构示意图,包括通过网络连接的服务器400及至少一台计算机,该实施例以三台计算机为例,即计算机IOO,计算机200,计算机300。其中每一计算机还包括一代理模块,用于读取待安装/修复/升级驱动程序的硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息;计算机IOO包括一代理模块110;计算机200还包括一代理模块n0;计算机300包括一代理模块310。服务器400包括数据库410及查询模块420。数据库410,用于存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;查询模块420,与代理模块IIO、代理模块210、代理模块310及数据库420连接,根据所述硬件标识以及所述操作系统环境信息查询所述数据库得到安装有所述硬件设备驱动程序的计算机列表。该实施例中代理模块还包括下载模块,与所述查询模块连接,用于从所述计算机列表中选择一计算机,根据该计算机的网络连接信息下载所述驱动程序到本地计算机。代理模块110包括下载模块111;代理模块210包括211;代理模块310包括311。计算机与计算机之间可以直接连接,因此可以直接建立连接,以下载所需驱动程序。该实施例计算机与计算机之间可以通过代理模块彼此连接。当计算机100请求安装某一硬件设备的驱动程序或请求对某一硬件设备的驱动程序进行修复或升级时,代理模块110向服务器400发送请求,服务器400中的查询模块420查询数据库410,得到满足条件的计算机,并将满足条件的计算机组成一个计算机列表,该计算机列表中包括计算机200及计算机300的信息,将所述计算机列表返回至代理模块110中的下载模块111,下载模块111选择一计算机,如选择计算机300,直接根据计算机300的网络连接信息与计算机300建立连接,计算机300可以通过其代理模块310将请求的驱动程序从计算机300中提取或直接调出来形成一个驱动程序压缩包,以供下载模块111下载。代理模块处于侦听状态,一旦有其他的代理模块向其发送某一硬件设备驱动程序的请求,该代理模块则进行回应,并根据请求将指定硬件设备的驱动程序包从计算机系统中提取出来,并发送至发送请求的代理模块。代理模块中还包括上传模块,与数据库连接,用于读取安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息存储至数据库。代理模块110包括上传模块112;代理模块210包括上传模块212;代理模块310包括上传模块312。图5为本发明一种下载计算机硬件设备驱动程序的系统实施例二的结构示意图,该实施例与上一实施例的区别在于,下载模块位于服务器中。此时计算机与计算机之间无法直接连接,但每一计算机均可以通过代理模块与服务器连接,从而通过服务器间接的下载所需驱动程序。包括通过网络连接的服务器400a及至少一台计算机,该实施例以三台计算机为例,即计算机100a,计算机200a,计算机300a。其中每一计算机还包括一代理模块,用于读取待安装/修复/升级驱动程序的硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息;计算机100a包括一代理模块110a;计算机200a还包括一代理模块210a;计算机300a包括一代理模块310a。服务器400a包括数据库410a及查询模块420a。数据库410a,用于存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;查询模块420a,与代理模块110a、代理模块210a、代理模块310a及数据库420a连接,根据所述硬件标识以及所述操作系统环境信息查询所述数据库得到安装有所述硬件设备驱动程序的计算机列表。服务器中包括一下载模块430a,与查询模块420a连接,用于从所述计算机列表中选择一计算机,根据该计算机的网络连接信息下载所述驱动程序到本地计算机。当计算机100a请求安装某一硬件设备的驱动程序或请求对某一硬件设备的驱动程序进行修复或升级时,代理模块110a向服务器400a发送请求,服务器400a中的查询模块420a查询数据库410a,得到满足条件的计算机,并将满足条件的计算机組成一个计算机列表,该计算机列表中包括计算机200a及计算机300a的信息,下载模块430a选择一计算机,如选择计算机300a,根据计算机300a的网络连接信息与计算机300a建立连接,计算机300a可以通过其代理模块310a将请求的驱动程序从计算机300a中提取或直接调出来形成一个驱动程序压缩包,以供下载模块430a下载。下载模块"Oa将驱动程序压缩包转发至计算机100a,从而实现了计算机100a与计算机300a之间的间接连接。代理模块处于侦听状态,一旦有服务器的下载模块向其发送某一硬件设备驱动程序的请求,该代理模块则进行回应,并根据请求将指定硬件设备的驱动程序包从计算机系统中提取出来,并发送至服务器的下载模块,然后由服务器转发至发送请求的计算机。代理模块中还包括上传模块,与数据库连接,用于读取安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息存储至数据库。代理模块110a包括上传模块112a;代理模块210a包括上传模块212a;代理模块310a包括上传模块312a。代理模块保持对本地计算机硬件设备状态变化的跟踪,当发现新设备时,即将新设备的硬件标识、计算机的操作系统环境信息发送至服务器,由服务器查询数据库。代理模块还自动监控本地计算机的网络连接信息的变化,如本地计算机网络IP地址、网络端口及计算机网络状态的变化,并向服务器发送本地计算机的网络连接信息。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括硬盘、网络、R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。本领域技术技术人员应当能够理解,以上实施例中所描述的计算机硬件设备驱动程序的下载方法、系统、计算机及服务器,并不仅局限于计算机硬件设备驱动程序的下载,还可以应用于其它程序的下载。综上所述,以上下栽计算机硬件设备驱动程序的系统的实施例,通过在计算机中引入代理模块,以及将网络中安装有驱动程序的硬件设备标识、计算机的操作系统环境信息以及计算机的网络连接信息统一存储到一独立的数据库,从而使得网络中当一计算机需要对一硬件设备安装驱动程序或对原有驱动程序进行修复或升级时,该硬件设备所在的计算机可以通过网络自动搜寻具有相同硬件设备,相同操作系统环境的计算机,并且从这些符合条件的计算机中下载对应的驱动程序到本地计算机,以实现在不依赖于硬件制造商服务水平及用户技术水平的情况下,有效地解决硬件设备驱动程序的维护问题。另外,本发明的技术方案与实现方法与传统的方法相比具有更高的实用性和更低的实施成本。传统的技术方案一般需要在网络中构建一个服务器,用来存储众多的驱动程序,而且,为了满足新硬件设备的驱动程序下载需求,还需要不断的维护这个服务器,其工作量相当巨大。对于本发明的技术方案来说,就不需要维护这个驱动程序库,一旦某个计算机成功安装了新硬件的驱动程序,那么其他用户即可通过本发明的系统和方法远程下载该驱动程序,并可以在本机上进行安装/修复/升级,而这一切基本上都可以自动完成。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。权利要求1、一种下载计算机硬件设备驱动程序的方法,其特征在于,包括:接收指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息;根据所述驱动程序下载请求消息中的硬件标识以及所述操作系统环境信息查询数据库得到安装有所述硬件设备驱动程序的计算机列表;所述数据库存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;所述计算机列表至少包括计算机的网络连接信息;从所述计算机列表中选择一或多个计算机,根据所选计算机的网络连接信息下载所述驱动程序到本地计算机。2、根据权利要求1所述的方法,其特征在于,根据所述硬件标识以及所述操作系统环境信息查询数据库得到安装有所述硬件设备驱动程序的计算机列表包括根据所述硬件标识查询数据库得到具有所述硬件标识对应的计算机硬件设备的计算机中间列表;根据所述操作系统环境信息查询所述计算机中间列表得到具有所述操作系统环境的计算机列表。3、根据权利要求1所述的方法,其特征在于,根据所述硬件标识以及所述操作系统环境信息查询数据库得到安装有所述硬件设备驱动程序的计算机列表包括根据所述操作系统环境信息查询数据库得到具有所述操作系统环境的计算机中间列表;根据所述硬件标识查询所述计算机中间列表得到具有所述硬件标识对应的计算机硬件设备的计算机列表。4、根据权利要求1所述的方法,其特征在于,在根据所述硬件标识以及所述操作系统环境信息查询数据库之前还包括读取安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息存储至数据库。5、根据权利要求l-4所述的任一方法,其特征在于,从所述计算机列表中选择一或多个计算机具体为从所述计算机列表中优先选择一或多个当前网络状态为连接状态的计算机。6、根据权利要求4所述的方法,其特征在于,在根据所述硬件标识以及所述操作系统环境信息查询数据库之前还包括读取安装有驱动程序的硬件设备的驱动程序信息存储至数据库。7、才艮据权利要求6所述的方法,其特征在于,若所述驱动程序信息包括驱动程序兼容等级,则从所述计算机列表中选择一或多个计算机具体为从所述计算机列表中根据驱动程序兼容等级优先选择一或多个计算机。8、根据权利要求6所述的方法,其特征在于,若所述驱动程序信息包括驱动程序特征值,则在从所述计算机列表中选择一或多个计算机之后,根据所选计算机的网络连接信息下载所述驱动程序到本地计算机之前还包括计算所选计算机中所述驱动程序的当前特征值,若当前特征值与计算机列表中的驱动程序特征值一致,则根据该计算机的网络连接信息下载所述驱动程序到本地计算机。9、根据权利要求1所述的方法,其特征在于,在根据所选计算机的网络连接信息下载所述驱动程序到本地计算机之后还包括在本地计算机上安装/修复/升级所述驱动程序。10、根据权利要求9所述的方法,其特征在于,在本地计算机上安装/修复/升级所述驱动程序之后,还包括将安装有所述驱动程序的硬件设备的硬件标识、本地计算机的操作系统环境信息、以及本地计算机的网络连接信息存储至数据库。11、根据权利要求l所述的方法,其特征在于,若根据所述硬件标识以及所述操作系统环境信息查询数据库未发现安装有所述硬件设备驱动程序的计算机,则通过广播方式查询网络中的计算机,得到安装有所述硬件设备驱动程序的计算机列表。12、一种计算机,其特征在于,包括一代理模块,用于发送指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息。13、根据权利要求12所述的计算机,其特征在于,所述代理模块还包括一上传模块,用于读取安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息并存储至数据库。14、一种服务器,其特征在于,包括数据库,用于存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;查询模块,与所述数据库连接,用于接收驱动程序下载请求消息,并根据驱动程序下载请求消息中的硬件标识以及搡作系统环境信息查询所述数据库得到安装有所述硬件设备驱动程序的计算机列表;以及下载模块,与所述查询模块连接,用于从所述计算机列表中选择一或多个计算机,根据该计算机的网络连接信息下载所述驱动程序到本地计算机。15、一种计算机,其特征在于,包括一代理模块,用于发送指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息;所述代理模块还包括一下载模块,用于从计算机列表中选择一或多个计算机,根据该计算机的网络连接信息下载所述驱动程序到本地计算机。16、根据权利要求15所述的计算机,其特征在于,所述代理模块还包括一上传模块,用于读取安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息并存储至数据库。17、一种服务器,其特征在于,包括数据库,用于存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;查询模块,与所述数据库连接,用于接收驱动程序下载请求消息,并根据驱动程序下载请求消息中的硬件标识以及操作系统环境信息查询所述数据库得到安装有所述硬件设备驱动程序的计算机列表。18、一种下载计算机硬件设备驱动程序的系统,包括通过网络连接的服务器及至少一台计算机,其特征在于,所述每一计算机包括代理模块,用于发送指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息;所述服务器包括数据库,用于存储安装有驱动程序的硬件设备的硬件标识、硬件设备所在计算机的操作系统环境信息、以及计算机的网络连接信息;以及查询模块,与所述代理模块及所述数据库连接,用于接收驱动程序下载请求消息,并根据驱动程序下载请求消息中的硬件标识以及操作系统环境信息查询所述数据库得到安装有所述硬件设备驱动程序的计算机列表;所述代理模块或所述服务器还包括下载模块,与所述查询模块连接,用于从所述计算机列表中选择一或多个计算机,根据该计算机的网络连接信息下载所述驱动程序到本地计算机。全文摘要本发明涉及一种下载计算机硬件设备驱动程序的方法,其中包括接收指定硬件设备的驱动程序下载请求消息,所述驱动程序下载请求消息中包含有硬件设备的硬件标识及所述硬件设备所在计算机的操作系统环境信息;根据所述驱动程序下载请求消息中的硬件标识以及所述操作系统环境信息查询数据库得到安装有所述硬件设备驱动程序的计算机列表;从所述计算机列表中选择一或多个计算机,根据所选计算机的网络连接信息下载所述驱动程序到本地计算机。本发明还涉及计算机、服务器及下载计算机硬件设备驱动程序的系统。本发明通过硬件标识以及操作系统环境信息在网络中自动搜寻匹配的驱动程序,有效地解决硬件设备驱动程序的维护问题。文档编号G06F9/445GK101382894SQ20071012137公开日2009年3月11日申请日期2007年9月5日优先权日2007年9月5日发明者张兴明,成建峰,王松山,白昌俊申请人:北京软通科技有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1