专利名称:终端设备的驱动安装方法及装置的制作方法
技术领域:
本发明涉及计算机领域,特别是涉及ー种终端设备的驱动安装方法及装置。
背景技术:
目前,基本上所有的设备的提供厂商,都会在终端设备中提供该设备的驱动,用来在个人计算机(Personal Computer,简称为PC)电脑上设置该设备的端ロ。在系统进行设备驱动加载的过程中,尤其是在Vista和Win7系统中,都是先从网络侧进行相关驱动的搜索,而这个过程往往需要很长的时间,如果在网络侧没有找到相关驱动,才会在本地进行驱动的搜索并进行加载,这样就导致用户在插入終端设备以后,需要等待很长时间才可以正常加载设备的驱动并使用该终端设备,降低了用户的使用体验。 也就是说,系统在加载设备驱动吋,根据系统默认的设定,一般是需要先从网络搜索驱动,然后在本地进行驱动的搜索,这种方法导致在系统加载终端设备的过程中,花费很长时间,而绝大多数的終端设备,都会提供自己的驱动,用于系统加载终端设备,完全没有必要进行网络搜索,从而浪费很多时间用于驱动的捜索。
发明内容
本发明提供一种终端设备的驱动安装方法及装置,以解决现有技术中需要首选从网络侧捜索需要加载的终端设备的驱动而导致的終端设备加载时间过长的问题。本发明提供一种终端设备的驱动安装方法,包括调用驱动安装程序,并将驱动安装程序设置为直接从本机捜索驱动程序;通过驱动安装程序从本机进行驱动程序的捜索,并安装捜索到的驱动程序。本发明还提供了一种终端设备的驱动安装装置,包括调用模块,用于调用驱动安装程序;设置模块,用于将驱动安装程序设置为直接从本机捜索驱动程序;捜索模块,用于通过驱动安装程序从本机进行驱动程序的捜索;安装模块,用于安装捜索到的驱动程序。本发明有益效果如下通过在进行安装驱动时,操作注册表,改变系统搜索的方式为从本机进行驱动程序的捜索,解决了现有技术中需要首选从网络侧搜索需要加载的终端设备的驱动而导致的終端设备加载时间过长的问题,能够提高系统安装终端设备驱动速度,从而提高了用户体验。
图I是本发明实施例的終端设备的驱动安装方法的流程图;图2是本发明实施例的終端设备的驱动安装方法的详细处理流程图;图3是本发明实施例的在驱动安装程序中添加关闭系统网络捜索功能的流程图4是本发明实施例的終端设备的驱动安装装置的结构示意图。
具体实施例方式为了解决现有技术中需要首选从网络侧搜索需要加载的终端设备的驱动而导致的終端设备加载时间过长的问题,本发明提供了一种终端设备的驱动安装方法及装置,以下结合附图以及实施例,对本发明进行进一歩详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。方法实施例根据本发明的实施例,提供了一种终端设备的驱动安装方法,图I是本发明实施例的終端设备的驱动安装方法的流程图,如图I所示,根据本发明实施例的终端设备的驱动安装方法包括如下处理步骤101,调用驱动安装程序,并将驱动安装程序设置为直接从本机捜索驱动程 序;具体地,在步骤101中,将驱动安装程序设置为直接从本机捜索驱动程序具体包括如下处理步骤I、使用注册表打开函数(RegOpenKeyEx)打开注册表中相应的驱动查询子键,该相应的驱动查询子键为[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\wmdows\Driverbea rching]ナ健;步骤2、通过注册表键值获取函数(RegQueryValueEx)获取子键中第一注册表搜索匹配驱动方式(DontSearchWindowsUpdate)的键值和第二注册■表搜索匹配驱动方式(DontPromptForffindowsUpdate)的键值;在步骤2中,具体包括如下处理I、将子键的句柄HKEY存储在第一变量中,例如,key变量;2、通过注册表键值获取函数从第一变量中获取句柄,根据句柄从子键中获取第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值;3、将第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值分别存储于第二变量(例如,DontSearch变量)和第三变量(例如,DontPrompt变量)中。步骤3、判断第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值是否都等于1,如果判断为是,则使用注册表关闭函数(RegCloseKey)关闭注册表,如果判断为否,则使用注册表键值设置函数(RegSetValueEx)将第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值都设置为1,再使用注册表关闭函数关闭注册表。在步骤3中,判断第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值是否都等于I具体包括如下处理判断第二变量(例如,DontSearch变量)和第三变量(例如,DontPrompt变量)中的键值是否都等于I。在步骤3中,使用注册表键值设置函数将第一注册表搜索匹配驱动方式键值和第ニ注册表搜索匹配驱动方式键值都设置为I具体包括如下处理使用注册表键值设置函数调用第一变量(例如,key变量)将第二变量(例如,DontSearch变量)和第三变量(例如,DontPrompt变量)中的键值设置为I。
步骤102,通过驱动安装程序从本机进行驱动程序的捜索,并安装捜索到的驱动程序。也就是说,在实际应用中,当调用设备驱动安装程序时,在驱动安装程序代码里面,使用注册表打开函数打开注册表中的驱动查询子键,通过注册表键值获取函数获取第一注册表搜索匹配驱动方式、第二注册表搜索匹配驱动方式的值,如果这两个键值不等于1,则使用注册表键值设置函数把第一注册表搜索匹配驱动方式、第二注册表搜索匹配驱动方式两个键值设置成为1,最后使用注册表关闭函数关闭即可。这样系统调用捜索驱动程序时,可以直接从本机进行搜索,从而实现快速安装的效果。从上述处理可以看出,本发明实施例的技术方案克服了现有终端设备在系统加载驱动过程中需要花费较长 时间进行网络驱动搜索的问题,而是直接进行本机驱动的捜索。因为各个厂商都是自己提供加载终端设备驱动,在安装完成程序完成以后,驱动必定在本机存放,而无需系统进行网络搜索,这样对于用户来说,当插入设备以后,可以很快的找到驱动,并且使用设备,从而提高了用户的使用体检,同时满足了运营商对于时间上的需求。以下结合附图,对本发明实施例的上述技术方案进行详细的说明。图2是本发明实施例的終端设备的驱动安装方法的详细处理流程图,如图2所示,包括如下处理步骤201,在終端设备使用以前,系统需要调用相应的驱动程序,安装驱动程序需要系统调用专门的安装程序,当第一次使用某种设备的时候,系统调用相应的驱动安装程序;步骤202,修改驱动安装程序,在驱动安装程序里面添加关闭系统网络捜索功能;步骤203,驱动安装程序安装完成;步骤204,驱动安装程序在进行驱动安装吋,仅搜索本地驱动程序,并完成该驱动程序的安装。通过修改系统搜索网络驱动的功能,实现系统在加载驱动的时候,直接从本地进行驱动搜索,大大提高了加载驱动的速度。图3是本发明实施例的在驱动安装程序中添加关闭系统网络捜索功能的流程图,如图3所示,包括如下处理步骤301,在调用驱动安装程序吋,使用注册表打开函数打开驱动查询子键,并且把打开的句柄HKEY存放在key变量中,用于后面的操作。步骤302,调用注册表键值获取函数,并且使用保存在key变量中的句柄获取第一注册表搜索匹配驱动方式和第二注册表搜索匹配驱动方式的键值,并且分别存放于第二变量和第三变量中保存起来。步骤303,对第二变量和第三变量进行判断,确定是否两个变量的值都是1,如果两个变量的值都是1,则进行驱动程序的安装,如果不是,则执行步骤304。步骤304,调用注册表键值获取函数,并且使用key变量去设置第二变量和第三变量的值为1,从而达到提高系统加载驱动程序的速度。综上所述,本发明实施例通过在进行安装驱动时,操作注册表,改变系统搜索的方式为从本机进行驱动程序的捜索,解决了现有技术中需要首选从网络侧搜索需要加载的终端设备的驱动而导致的終端设备加载时间过长的问题,能够提高系统安装终端设备驱动速度,从而提闻了用户体验。装置实施例根据本发明的实施例,提供了一种终端设备的驱动安装装置,图4是本发明实施例的終端设备的驱动安装装置的结构示意图,如图4所示,根据本发明实施例的終端设备的驱动安装装置包括调用模块40、设置模块42、捜索模块44、以及安装模块46,以下对本发明实施例的各个模块进行详细的说明。 调用模块40,用于调用驱动安装程序;设置模块42,用于将驱动安装程序设置为直接从本机捜索驱动程序;设置模块42具体包括子键打开模块、键值获取模块、注册表处理模块子键打开模块使用注册表打开函数(RegOpenKeyEx)打开注册表中相应的驱动查询子键,该驱动查询子键为[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\windows\DriverSearching]子键;键值获取模块通过注册表键值获取函数获取子键中第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值;注册表处理模块判断第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值是否都等于I,如果判断为是,则使用注册表关闭函数关闭注册表,如果判断为否,则使用注册表键值设置函数将第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值都设置为1,再使用注册表关闭函数关闭注册表。优选地,键值获取模块可以将子键的句柄HKEY存储在第一变量中,例如,key变量;可以通过注册表键值获取注册表键值获取函数,并通过注册表键值获取函数从第一变量中获取句柄,根据句柄从子键中获取第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值;可以将第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值分别存储于第二变量(例如,DontSearch变量)和第三变量(例如,DontPrompt变量)中。在判断第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值是否都等于I是,注册表处理模块可以判断第一变量(例如,DontSearch变量)和第三变量(例如,DontPrompt变量)中的键值是否都等于I。并且,在使用注册表键值设置函数将第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值都设置为I吋,设置模块42可以使用注册表键值设置函数调用第一变量(例如,key变量)将第二变量(例如,DontSearch变量)和第三变量(例如,DontPrompt变量)中的键值设置为I。捜索模块44,用于通过驱动安装程序从本机进行驱动程序的捜索;安装模块46,用于安装搜索到的驱动程序。也就是说,在实际应用中,当调用模块40调用设备驱动安装程序时,在驱动安装程序代码里面,设置模块42使用注册表打开函数打开注册表中的驱动查询子键子键,通过注册表键值获取函数获取键值第一注册表搜索匹配驱动方式、第二注册表搜索匹配驱动方式的值,如果这两个键值不等于1,则使用注册表键值获取函数把第一注册表搜索匹配驱动方式、第二注册表搜索匹配驱动方式两个键值设置成为1,最后使用注册表关闭函数关闭即可。这样搜索模块44可以直接从本机进行搜索,从而实现快速安装的效果。从上述处理可以看出,本发明实施例的技术方案克服了现有终端设备在系统加载驱动过程中需要花费较长时间进行网络驱动搜索的问题,而是直接进行本机驱动的捜索。因为各个厂商都是自己提供加载终端设备驱动,在安装完成程序完成以后,驱动必定在本机存放,而无需系统进行网络搜索,这样对于用户来说,当插入设备以后,可以很快的找到驱动,并且使用设备,从而提高了用户的使用体检,同时满足了运营商对于时间上的需求。以下结合附图,对本发明实施例的上述技术方案进行详细的说明。图2是本发明实施例的終端设备的驱动安装方法的详细处理流程图,如图2所示,包括如下处理步骤201,在終端设备使用以前,系统需要调用相应的驱动程序,安装驱动程序需要调用专门的安装程序,当第一次使用某种设备的时候,调用模块40调用相应的驱动安装程序;步骤201,设置模块42修改驱动安装程序,在驱动安装程序里面添加关闭系统网络搜索功能; 步骤203,驱动安装程序安装完成;步骤204,驱动安装程序在进行驱动安装时,捜索模块44仅搜索本地驱动程序,安装模块46完成该驱动程序的安装。通过修改系统搜索网络驱动的功能,实现系统在加载驱动的时候,直接从本地进行驱动搜索,大大提高了加载驱动的速度。图3是本发明实施例的在驱动安装程序中添加关闭系统网络捜索功能的流程图,如图3所示,包括如下处理步骤301,在调用模块40驱动安装程序时,设置模块42使用注册表打开函数打开驱动查询子键,并且把打开的句柄HKEY存放在key变量中,用于后面的操作。步骤302,设置模块42调用函数注册表键值获取函数,并且使用保存在key变量中的句柄获取第一注册表搜索匹配驱动方式和第二注册表搜索匹配驱动方式的键值,并且分别存放于第二变量和第三变量中保存起来。步骤303,设置模块42对第二变量和第三变量进行判断,确定是否两个变量的值都是1,如果两个变量的值都是1,则进行驱动程序的安装,如果不是,则执行步骤304。 步骤304,设置模块42调用注册表键值获取函数,并且使用key变量去设置变量第ニ变量和第三变量的值为1,从而达到提高系统加载驱动程序的速度。综上所述,本发明实施例通过在进行安装驱动时,操作注册表,改变系统搜索的方式为从本机进行驱动程序的捜索,解决了现有技术中需要首选从网络侧搜索需要加载的终端设备的驱动而导致的終端设备加载时间过长的问题,能够提高系统安装终端设备驱动速度,从而提闻了用户体验。尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、増加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。
权利要求
1.一种终端设备的驱动安装方法,其特征在于,包括 调用驱动安装程序,并将所述驱动安装程序设置为直接从本机搜索驱动程序; 通过所述驱动安装程序从本机进行驱动程序的搜索,并安装搜索到的驱动程序。
2.如权利要求I所述的方法,其特征在于,将所述驱动安装程序设置为直接从本机搜索驱动程序具体包括 使用注册表打开函数打开注册表中的相应子键; 通过注册表键值获取函数获取所述子键中第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值; 判断所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值是否都等于1,如果判断为是,则使用注册表关闭函数关闭注册表,如果判断为否,则使用注册表键值设置函数将所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值都设置为1,再使用所述注册表关闭函数关闭注册表。
3.如权利要求2所述的方法,其特征在于,所述通过注册表键值获取函数获取所述子键中第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值具体包括 将所述子键的句柄存储在第一变量中; 通过所述注册表键值获取函数从所述第一变量中获取所述句柄,根据所述句柄从所述子键中获取所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值; 将所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值分别存储于第二变量和第三变量中。
4.如权利要求3所述的方法,其特征在于,判断所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值是否都等于I具体包括 判断所述第一变量和所述第二变量中的键值是否都等于I。
5.如权利要求4所述的方法,其特征在于,使用注册表键值设置函数将所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值都设置为I具体包括 使用所述注册表键值设置函数调用所述第一变量将所述第二变量和所述第三变量中的键值设置为I。
6.一种终端设备的驱动安装装置,其特征在于,包括 调用模块,用于调用驱动安装程序; 设置模块,用于将所述驱动安装程序设置为直接从本机搜索驱动程序; 搜索模块,用于通过所述驱动安装程序从本机进行驱动程序的搜索; 安装模块,用于安装搜索到的驱动程序。
7.如权利要求6所述的装置,其特征在于,所述设置模块具体用于 使用注册表打开函数打开注册表中的相应子键; 通过注册表键值获取函数获取所述子键中第一注册表搜索匹配驱动方式键值和第二注册表搜索匹配驱动方式键值; 判断所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值是否都等于1,如果判断为是,则使用注册表关闭函数关闭注册表,如果判断为否,则使用注册表键值设置函数将所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值都设置为1,再使用所述注册表关闭函数关闭注册表。
8.如权利要求7所述的装置,其特征在于,所述设置模块具体用于 将所述子键的句柄存储在第一变量中; 通过所述注册表键值获取函数从所述第一变量中获取所述句柄,根据所述句柄从所述子键中获取所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值; 将所述第一注册表搜索匹配驱动方式键值和所述第二注册表搜索匹配驱动方式键值分别存储于第二变量和第三变量中。
9.如权利要求8所述的装置,其特征在于,所述设置模块具体用于 判断所述第一变量和所述第二变量中的键值是否都等于I。
10.如权利要求9所述的装置,其特征在于,所述设置模块具体用于 使用所述注册表键值设置函数调用所述第一变量将所述第二变量和所述第三变量中的键值设置为I。
全文摘要
本发明公开了一种终端设备的驱动安装方法及装置。该方法包括调用驱动安装程序,并将驱动安装程序设置为直接从本机搜索驱动程序;通过驱动安装程序从本机进行驱动程序的搜索,并安装搜索到的驱动程序。借助于本发明的技术方案,能够提高系统安装终端设备驱动速度,从而提高了用户体验。
文档编号G06F9/445GK102662685SQ20121005569
公开日2012年9月12日 申请日期2012年3月6日 优先权日2012年3月6日
发明者张可 申请人:中兴通讯股份有限公司