一种自动安装软件的方法及装置的制作方法

文档序号:6363702阅读:225来源:国知局
专利名称:一种自动安装软件的方法及装置的制作方法
技术领域
本发明涉及信息安全领域,尤其涉及一种自动安装软件的方法及装置。
背景技术
早期需要使用Key之前,需要在电脑中安装相应的驱动程序和软件以识别和读取Key中的信息。而后,随着电脑中操作系统(如WindowsXP等操作系统)预置了 USB驱动,逐渐免去安装驱动程序,而使用操作系统预置的USB驱动。目前,为了使得Key的使用更方便,出现了无驱无软Key。无驱无软Key不需要人工手动安装驱动(通过电脑操作系统预置的USB驱动来实现),插入电脑相应的USB接口即可使用。无驱无软Key的原理是将用户所需的用户程序以iso文件格式写入到Key的存储区中,从而可以作为虚拟光驱自动运行,不用手工安装软件。但现有的iso文件内容为驱动安装包,占用较大的存储空间,对Key的硬件要求较高;而且现有的无驱无软Key在升级过程中,需要人工参与进行,操作较为繁琐。

发明内容
本发明提供了一种自动安装软件的方法及装置,以克服上述Key内iso文件较大、占用较大的存储空间,从而使得Key的生产成本高的缺陷。本发明实施例提供一种自动安装软件的方法,包括步骤A 接收到触发信息后获取下载地址;步骤B 根据所述下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C ;步骤C 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B ;步骤D 从所述最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤E,否则结束;步骤E 判断当前用户是否为管理员,是则执行步骤G,否则执行步骤F ;步骤F 创建管理员权限进程,并判断创建是否成功,是则执行步骤G,否则结束;步骤G 安装所述最新驱动安装包。其中,在所述步骤A中获取下载地址之前包括步骤A’,步骤A’:接收所述触发信息,判断是否需要下载最新驱动安装包,是则执行步骤A,否则结束。其中,所述步骤A’包括当接收到第一触发信息时,所述装置被启动,判断本地是否已安装无驱无软Key的驱动程序,是则结束,否则执行步骤A。其中,所述步骤A包括步骤All 根据预设地址从所述网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤A13,否则执行步骤A12 ;步骤A12 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤All ;
步骤A13 从所述配置文件中获取备用的下载地址,顺序执行步骤B。其中,所述配置文件中备用的下载地址设置一条,所述步骤B包括根据所述备用的下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C。其中,所述配置文件中备用的下载地址设置多条,所述步骤B包括步骤Bll 将所述配置文件中备用的第一条下载地址作为当前下载地址;步骤B12 根据所述当前下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B13 ;步骤B13 判断所述配置文件中备用的下载地址是否用完,是则执行步骤C,否则执行步骤B14;步骤B14:将所述配置文件中备用的下一条下载地址作为当前下载地址,返回步骤 B12。其中,所述步骤A包括获取预设的下载地址。其中,所述步骤A包括步骤A21 获取第一下载地址和预设地址;步骤A22 根据所述预设地址从所述网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤A24,否则执行步骤A23 ;步骤A23 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤A22 ;步骤A24:从所述配置文件中获取备用的第二下载地址,顺序执行步骤B。其中,所述配置文件中备用的第二下载地址设置一条,所述步骤B包括步骤B21 根据所述第一下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B22 ;步骤B22 根据所述备用的第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C。其中,所述配置文件中备用的第二下载地址设置多条,所述步骤B包括步骤B31 根据所述第一下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B32 ;步骤B32 将所述配置文件中第一条备用的下载地址作为当前第二下载地址;步骤B33 根据当前第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B34 ;
步骤B34 判断所述配置文件中备用的第二下载地址是否用完,是则执行步骤C,否则执行步骤B35 ;步骤B35 将所述配置文件中下一条备用的第二下载地址作为当前第二下载地址,返回步骤B33。其中,所述步骤A包括获取第一下载地址和预设地址;所述步骤B包括步骤B41 根据所述第一下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B42 ;步骤B42 根据所述预设地址从所述网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤B44,否则执行步骤B43 ;步骤B43 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B42 ;步骤B44 将所述配置文件中第一条备用的下载地址作为当前第二下载地址;步骤B45 根据当前第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B46 ;步骤B46 判断所述配置文件中备用的第二下载地址是否用完,是则执行步骤C,否则执行步骤B47 ;步骤B47 将所述配置文件中下一条备用的第二下载地址作为当前第二下载地址,返回步骤B45。其中,所述步骤A包括获取第一下载地址和预设地址;所述步骤B包括步骤B51 根据所述第一下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B52 ;步骤B52 根据所述预设地址从所述网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤B54,否则执行步骤B53 ;步骤B53 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B52 ;步骤B54 根据所述配置文件中的第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C。其中,所述步骤A包括获取第一下载地址和预设地址;所述步骤B包括分别根据所述第一下载地址和预设地址从所述网络服务器上下载最新驱动安装包和配置文件,并分别判断所述最新驱动安装包和配置文件是否下载成功;如两者均未下载成功,则执行步骤C ;如只有所述最新驱动安装包下载成功,则执行步骤D ;如只有所述配置文件下载成功,则根据配置文件中的第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则结束;如两者均下载成功,则根据所述配置文件中的下载地址从所述网络服务器上下载最新驱动安装包,并检测根据所述第一预设地址下载的最新驱动安装包和根据所述第二下载地址下载的最新驱动安装包的版本号的高低,顺序执行步骤D ;所述步骤D具体为从版本号最高的最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤E,否则结束。其中,所述第一触发信息为无驱无软KEY插入计算机的触发信息或点击安装按钮的触发信息。其中,在所述步骤A中的获取下载地址之前包括步骤A”,所述步骤A”包括步骤A”1 当接收到第二触发信息时,根据预设地址从所述网络服务器上下载配置文件,并判断下载是否成功,是则执行步骤A” 3,否则执行步骤A” 2 ;步骤A”2 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤A”l,重新进行下载;步骤A” 3 比较配置文件中的最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述配置文件中的驱动版本号较高,则执行步骤A,如本地已安装驱动程序的版本号较高,则结束。其中,所述步骤A包括从所述配置文件中获取下载地址。其中,所述配置文件中的下载地址设置一条,所述步骤B包括根据所述获取的下载地址从所述网络服务器上下载最新驱动安装包。其中于,所述配置文件中的下载地址设置多条,所述步骤B包括步骤B61 将所述获取的第一条下载地址作为当前下载地址;步骤B62 根据当前下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B63 ;步骤B63:判断所述获取的下载地址是否用完,是则执行步骤C,否则执行步骤B64 ;步骤B64 将所述获取的下一条下载地址作为当前下载地址,返回步骤B62。其中,所述步骤A包括当接收到第二触发信息时,获取预设的下载地址。其中,所述步骤B和步骤D之间包括步骤B’,所述步骤B判断为是后执行所述步骤B,,步骤B’ 比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如所述本地已安装驱动程序的版本号较高,则结束。其中,所述步骤A包括当接收到第二触发信息时,获取第一下载地址和预设地址;所述步骤B包括分别根据所述第一下载地址和预设地址从所述网络服务器上下载最新驱动安装包和配置文件,并分别判断所述最新驱动安装包和所述配置文件是否下载成功,如两者均未下载成功,则执行步骤C ;如只有所述最新驱动安装包下载成功,则比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如所述本地已安装驱动程序的版本号较高,则结束;如只有所述配置文件下载成功,则根据所述配置文件中备用的下载地址从所述网络服务器上下载最新驱动安装包,并判断下载是否成功,是则比较所述最新驱动安装包的版本号和所述本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如所述本地已安装驱动程序的版本号较高,则结束;如下载不成功,则结束;如两者均下载成功,则根据所述配置文件中的备用地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则检测根据所述第一预设地址下载的最新驱动安装包、根据所述备用地址下载的最新驱动安装包的版本号和所述本地已安装驱动程序的版本号的高低,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如所述本地已安装驱动程序的版本号较高,则结束;如下载不成功,则结束;步骤D具体为从版本号最高的最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤F,否则结束ο
其中,所述第二触发信息为无驱无软KEY插入计算机且到达更新周期的触发信息或点击升级按钮的触发信息。其中,所述步骤G具体为覆盖安装所述最新驱动安装包。其中,在所述步骤A中接收到触发信息和获取下载地址之间包括步骤AOl 判断其是否与所述网络服务器建立了连接,是则执行步骤A03,否则执行步骤A02 ;步骤A02 与所述网络服务器建立连接,并判断连接是否成功,是则执行步骤A03,否则结束;步骤A03 检测当前用户是否为管理员,是则获取下载地址,顺序执行步骤B,否则执行步骤A04;步骤A04 判断当前计算机中的操作系统是否高于预设系统,是则执行步骤A05,否则执行步骤A06;步骤A05 判断用户账户控制界面是否被打开,是则结束,否则执行步骤A06 ;步骤A06 输出提示信息,等待用户确认;步骤A07 接收用户输入的信息,判断所述信息是否为确认继续的信息,是则获取下载地址,顺序执行步骤B,否则结束。本发明实施例又提供一种自动安装软件的装置,包括接收模块用于接收触发信息;获取模块用于在所述接收模块接收到触发信息后获取下载地址;下载判断模块用于根据所述下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功;第一判断模块用于在所述下载判断模块判断下载不成功时,判断下载次数是否超过预设重试次数;获取判断模块用于在所述下载判断模块判断下载成功时,从所述最新驱动安装包中获取签名证书,并判断所述签名证书是否合法;第二判断模块用于在所述签名证书合法时,判断当前用户是否为管理员;创建判断模块用于当前用户不为管理员是,创建管理员权限进程,并判断创建是否成功;安装模块用于在管理员权限下安装所述最新驱动安装包。其中,所述装置还包括第三判断模块用于在接收到触发信息时,判断是否需要下载最新驱动安装包。其中,所述触发信息包括第一触发信息或第二触发信息;所述第一触发信息为无驱无软KEY插入计算机的触发信息或点击安装按钮的触发信息;所述第二触发信息为无驱无软KEY插入计算机且到达更新周期的触发信息或点击升级按钮的触发信息。其中,所述获取模块包括第一获取单元用于在所述接收模块接收到触发信息后获取第一下载地址和/或预设地址;
第二获取单元用于获取配置文件中备用的第二下载地址;所述下载判断模块还用于根据所述预设地址从所述网络服务器上下载配置文件,并判断是否下载成功。其中,所述装置还包括第一检测模块用于检测最新驱动安装包的版本号与本地已安装的驱动程序的版本号的高低;所述安装模块具体用于在管理员权限下覆盖安装所述最新驱动安装包。其中,所述装置还包括第四判断模块用于判断所述装置是否与所述网络服务器建立了连接;建立判断模块用于在所述第四判断模块判断为否时,将所述装置与所述网络服务器建立连接,并判断连接是否成功;第二检测模块用于在所述装置与所述网络服务器建立连接成功时,检测当前用户是否为管理员;第五判断模块用于在所述当前用户不为管理员时,判断当前计算机中的操作系统是否高于预设系统;第六判断模块用于在所述第五判断模块判断为是时,判断用户账户控制界面是否被打开;输出模块用于在所述第五判断模块和第六判断模块判断为否时,输出提示信息,等待用户确认;接收判断模块用于接收用户输入的信息,判断所述信息是否为确认继续的信息。本发明达到的有益效果本发明中只将用于下载的程序以iso文件格式写入无驱无软Key中,通过预设下载地址访问服务器从而直接下载无驱无软Key的驱动安装包,或者通过预设地址访问服务器并下载配置文件,再根据配置文件中的下载路径访问服务器下载无驱无软Key的驱动安装包,而未直接将驱动安装包以iso文件格式存储在无驱无软Key中,从而减小了无驱无软Key内用于存储驱动安装包的空间,达到节省硬件资源、缩减成本的效果;当到达更新时间时,对无驱无软Key的已安装程序实现自动更新,而无需人工参与,简化升级操作过程。


图1为本发明实施例一提供的一种自动安装软件的方法流程图;图2为本发明实施例二提供的一种实现第一次安装过程的自动安装软件的方法流程图;图3为本发明实施例三提供的一种实现升级过程的自动安装软件的方法流程图;图4为本发明实施例四提供的一种自动安装软件的装置方框图;图5为本发明实施例四提供的一种实现第一次安装驱动程序的自动安装软件的装置方框图;图6为本发明实施例四提供的一种实现升级驱动程序的自动安装软件的装置方框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式做进一步的详细描述。实施例一本发明实施例一提供的一种自动安装软件的方法,在进行本实施例的方法前,无驱无软Key已与计算机建立了连接,如图1所示,包括步骤A 接收到触发信息后获取下载地址;在本实施例中,在所述步骤A中的获取下载地址之前包括步骤A’,步骤A’ 接收所述触发信息,判断是否需要下载最新驱动安装包,是则执行步骤A,否则结束;在第一次安装过程中,步骤A’具体为当接收到第一触发信息时,所述装置被启动,判断本地是否已安装无驱无软Key的驱动程序,是则结束,否则获取下载地址;在步骤A中获取的下载地址可以为最新驱动包的直接下载地址和/或配置文件的预设地址。在升级安装过程中,当接收到第二触发信息时,先根据预设地址下载配置文件,当配置文件中的驱动版本号高于本地已安装驱动程序的版本号时,从配置文件中获取备用的下载地址;或者当接收到第二触发信息时,直接获取预先设置的下载地址;本实施例中,所述第一触发信息为无驱无软KEY插入计算机的触发信息或点击安装按钮的触发信息;所述第二触发信息为无驱无软KEY插入计算机且到达更新周期的触发信息或点击升级按钮的触发信息。步骤B 根据所述下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C ;本实施例中,步骤B中可以根据获取的下载地址从网络服务器上直接下载最新驱动安装包,和/或根据配置文件中备用的下载地址从网络服务器上下载最新驱动安装包;配置文件中备用的下载地址可以设置一条或多条;第一次安装时,配置文件的下载可以在步骤A中进行,也可以在步骤B中进行;在升级安装过程中,当步骤A中获取的是预先设置的下载地址时,当步骤B判断为是时,先执行步骤B’,步骤B’包括比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如本地已安装驱动程序的版本号较高,则结束。步骤C 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B ;步骤D 从所述最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤E,否则结束;
步骤E 判断当前用户是否为管理员,是则执行步骤G,否则执行步骤F ;步骤F 创建管理员权限进程,并判断创建是否成功,是则执行步骤G,否则结束;步骤G 安装所述最新驱动安装包;在升级安装过程中,步骤G具体为覆盖安装所述最新驱动安装包。在本实施例中,在所述步骤A中接收到触发信息和获取下载地址之间还可以包括步骤AOl 判断其是否与网络服务器建立了连接,是则执行步骤A03,否则执行步骤 A02 ;步骤A02 与网络服务器建立连接,并判断连接是否成功,是则执行步骤A03,否则结束;步骤A03:检测当前用户是否为管理员,是则获取下载地址,顺序执行步骤B,否则执行步骤A04;步骤A04 判断当前计算机中的操作系统是否高于预设系统,是则执行步骤A05,否则执行步骤A06;步骤A05 判断用户账户控制界面是否被打开,是则结束,否则执行步骤A06 ;步骤A06 输出提示信息,等待用户确认;步骤A07 接收用户输入的信息,判断所述信息是否为确认继续的信息,是则获取下载地址,顺序执行步骤B,否则结束。(一 )本实施例中,在第一次安装时,步骤A和步骤B对应有以下六种实现方式;(1)步骤A中获取的下载地址为配置文件中备用的下载地址,所述步骤A包括步骤All 根据预设地址从网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤A13,否则执行步骤A12 ;步骤A12 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤All ;步骤A13 从所述配置文件中获取备用的下载地址,顺序执行步骤B。①当所述配置文件中备用的下载地址设置一条,所述步骤B包括根据所述备用的下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C。②当所述配置文件中备用的下载地址设置多条,所述步骤B包括步骤Bll 将所述配置文件中备用的第一条下载地址作为当前下载地址;步骤B12 根据所述当前下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B13 ;步骤B13:判断所述配置文件中备用的下载地址是否用完,是则执行步骤C,否则执行步骤B14;步骤B14:将所述配置文件中备用的下一条下载地址作为当前下载地址,返回步骤 B12。(2)步骤A中获取的下载地址为预先设置的下载地址,所述步骤A包括获取预设的下载地址。(3)步骤A中获取的下载地址为预先设置的第一下载地址和用于下载配置文件的预设地址,且在步骤A中下载配置文件,所述步骤A包括步骤A21 获取第一下载地址和预设地址;步骤A22 根据所述预设地址从网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤A24,否则执行步骤A23 ;步骤A23 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤A22 ;步骤A24 从所述配置文件中获取备用的第二下载地址,顺序执行步骤B。①当所述配置文件中备用的第二下载地址设置一条,所述步骤B包括步骤B21 根据所述第一下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B22 ;步骤B22 根据所述备用的第二下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C。②当所述配置文件中备用的第二下载地址设置多条,所述步骤B包括步骤B31 根据所述第一下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B32 ;步骤B32 将所述配置文件中第一条备用的下载地址作为当前第二下载地址;步骤B33 根据当前第二下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B34 ;步骤B34 判断所述配置文件中备用的第二下载地址是否用完,是则执行步骤C,否则执行步骤B35 ;步骤B35 将所述配置文件中下一条备用的第二下载地址作为当前第二下载地址,返回步骤B33。(4)步骤A中获取的下载地址为预先设置的第一下载地址和用于下载配置文件的预设地址,且在步骤B中下载配置文件,这种实现方式配置文件中备用的下载地址设置多条;所述步骤A包括获取第一下载地址和预设地址;所述步骤B包括步骤B41 根据所述第一下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B42 ;步骤B42 根据所述预设地址从网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤B44,否则执行步骤B43 ;步骤B43 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B42 ;步骤B44 将所述配置文件中第一条备用的下载地址作为当前第二下载地址;步骤B45 根据当前第二下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B46 ;步骤B46 判断所述配置文件中备用的第二下载地址是否用完,是则执行步骤C,否则执行步骤B47;步骤B47 将所述配置文件中下一条备用的第二下载地址作为当前第二下载地址,返回步骤B45。(5)步骤A中获取的下载地址为预先设置的第一下载地址和用于下载配置文件的预设地址,且在步骤B中下载配置文件,这种实现方式配置文件中备用的下载地址设置一条;所述步骤A包括获取第一下载地址和预设地址;所述步骤B包括步骤B51 根据所述第一下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B52 ;步骤B52 根据所述预设地址从网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤B54,否则执行步骤B53 ;步骤B53 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B52 ;步骤B54 根据所述配置文件中的第二下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C。(6)步骤A中获取的下载地址为预先设置的第一下载地址和用于下载配置文件的预设地址,且在步骤B中同时根据第一下载地址和预设地址从网络服务器上下载最新驱动安装包和配置文件;所述步骤A包括获取第一下载地址和预设地址;所述步骤B包括分别根据所述第一下载地址和预设地址从网络服务器上下载最新驱动安装包和配置文件,并分别判断所述最新驱动安装包和配置文件是否下载成功,如两者均未下载成功,则执行步骤C ;如只有所述最新驱动安装包下载成功,则执行步骤D ;如只有所述配置文件下载成功,则根据配置文件中的第二下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则结束;如两者均下载成功,则根据所述配置文件中的下载地址从网络服务器上下载最新驱动安装包,并检测根据所述第一预设地址下载的最新驱动安装包和根据所述第二下载地址下载的最新驱动安装包的版本号的高低,顺序执行步骤D ;步骤D具体为从版本号最高的最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤E,否则结束。(二)本实施例中,在升级安装时,步骤A和步骤B对应有以下几种实现方式;(1)在执行步骤A之前判断是否需要进行升级处理,当需要升级处理时再下载最新驱动安装包,即在所述步骤A中的获取下载地址之前包括步骤A”,所述步骤A”包括步骤A”1 当接收到第二触发信息时,根据预设地址从网络服务器上下载配置文件,并判断下载是否成功,是则执行步骤A” 3,否则执行步骤A” 2 ;步骤A”2 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤A”l,重新进行下载;步骤A” 3 比较配置文件中的最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述配置文件中的驱动版本号较高,则执行步骤A,如本地已安装驱动程序的版本号较高,则结束。所述步骤A包括从所述配置文件中获取下载地址。①当所述配置文件中的下载地址设置一条,所述步骤B包括根据所述获取的下载地址从网络服务器上下载最新驱动安装包。②当所述配置文件中的下载地址设置多条,所述步骤B包括步骤B61 将所述获取的第一条下载地址作为当前下载地址;步骤B62 根据当前下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B63 ;步骤B63:判断所述获取的下载地址是否用完,是则执行步骤C,否则执行步骤B64 ;步骤B64 将所述获取的下一条下载地址作为当前下载地址,返回步骤B62。(2)先根据预先设置的下载地址从网络服务器上下载最新驱动安装包,当最新驱动安装包的版本号高于本地已安装的驱动程序的版本号时,再进行升级处理;
所述步骤A包括当接收到第二触发信息时,获取预设的下载地址;所述步骤B和步骤D之间包括步骤B’,步骤B判断为是后执行步骤B’,步骤B’ 比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如本地已安装驱动程序的版本号较高,则结束。(3)同时根据第一下载地址和预设地址从网络服务器上下载最新驱动安装包和配置文件,针对下载情况的不同进行不同的升级处理过程;所述步骤A包括当接收到第二触发信息时,获取第一下载地址和预设地址;所述B包括分别根据所述第一下载地址和预设地址从网络服务器上下载最新驱动安装包和配置文件,并分别判断所述最新驱动安装包和配置文件是否下载成功,如两者均未下载成功,则执行步骤C ;如只有所述最新驱动安装包下载成功,则比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如本地已安装驱动程序的版本号较高,则结束;如只有所述配置文件下载成功,则根据配置文件中备用的下载地址从网络服务器上下载最新驱动安装包,并判断下载是否成功,是则比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如本地已安装驱动程序的版本号较高,则结束;如下载不成功,则结束;如两者均下载成功,则根据所述配置文件中的备用地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则检测根据所述第一预设地址下载的最新驱动安装包、根据所述备用地址下载的最新驱动安装包的版本号和本地已安装驱动程序的版本号的高低,如最新驱动安装包的驱动版本号较高,则执行步骤D,如本地已安装驱动程序的版本号较高,则结束;如下载不成功,则结束;步骤D具体为从版本号最高的最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤F,否则结束。本实施例的升级过程中,当驱动版本号预设在配置文件中,可以先下载配置文件,再根据配置文件中备用的下载地址从网络服务器上下载最新驱动安装包,再比较最新驱动安装包的版本号与本地已安装的驱动程序的版本号的高低;或依次根据配置文件中备用的下载地址从网络服务器上下载最新驱动安装包,比较所有下载成功你的最新驱动安装包的版本号与本地已安装的驱动程序的版本号的高低,进行升级处理,也可先根据预设的下载地址下载最新驱动安装包,下载不成功时在根据配置文件中备用的下载地址进行下载,或者同时根据预设的下载地址和配置文件中备用的下载地址从网络服务器上下载最新驱动安装包,进行升级处理。具体的从网络服务器上的下载过程可参照上述方式,在此不再赘述。本实施例中,在接收到触发信息时根据下载地址从服务器上下载驱动安装包并进行安装,对无驱无软Key的硬件要求较低,节省生产成本;当接收到的是第一触发信息时,实现第一次安装过程,当接收到的是第二触发信息时,进行升级安装过程,整个安装过程无需人工参与,简化安装操作过程,方便用户使用。实施例二
本发明实施例二提供了一种自动安装软件的方法,实现第一次安装过程,具体以第(4)种方式为例进行说明。当无驱无软Key插入计算机时,通过预设的第一下载地址从网络服务器上下载驱动安装包,如下载成功进行安装过程,如下载不成功再通过预设地址访问服务器并下载配置文件,根据配置文件中备用的第二下载地址从网络服务器上下载所述驱动安装包,如下载成功进行安装过程,如下载不成功则结束。参见图2,本实施例提供的方法包括步骤201 当接收到第一触发信息时所述装置启动,所述装置判断本地是否已经安装所述无驱无软Key的驱动程序,是则结束,否则执行步骤202 ;本实施例中,计算机接收到第一触发信息后加载iso程序即所述装置被启动,所述第一触发信息为无驱无软Key插入计算机的触发信息或用户点击安装按钮的触发信息;步骤201具体为所述装置读取注册表中的标志version,判断version的值是否为1,是则已安装所述无驱无软Key的安装包,否则未安装;步骤202 所述装置判断是否与网络服务器建立了连接,是则执行步骤204,否则执行步骤203 ;本实施例中,步骤202具体为所述装置通过系统函数MternetCheckConnection判断当前网络连接状态;步骤203 所述装置与网络服务器建立连接,并判断连接是否成功,是则执行步骤204,否则结束;具体地,在本实施例中,计算机通过调用系统函数InternetGetConnectedState获取网络状态,通过调用系统函数hternetCheckCormection判断与服务器是否可连接;步骤204 所述装置检测当前用户是否为管理员,是则执行步骤209,否则执行步骤 205 ;具体地,本实施例中,步骤204具体包括步骤204-1 所述装置判断当前进程是否具有管理员权限,是则执行步骤204-2,否则执行步骤205 ;步骤204-2 所述装置获取当前用户和所述当前用户的信息判断当前用户是否为管理员,是则执行步骤209,否则执行步骤205 ;步骤205 所述装置判断当前的操作系统版本是否高于预设的操作系统版本,是则执行步骤206,否则执行步骤207 ;优选地,在本实施例中,所述预设的操作系统为Vista ;步骤206 所述装置判断用户账户控制界面是否已经被打开,是则结束,否则执行步骤207 ;本实施例中步骤206具体为通过读取注册表中UAC的标志,判断UAC的标识是否为预设值,是则已经被打开,否则未被打开;步骤207 所述装置输出提示信息,待用户确认;优选地,在本实施例中,所述提示信息为“当前用户非管理员,安装过程中会需要您输入管理员账户和密码,是否继续?,,;步骤208 所述装置接收用户输入的信息,判断所述输入的信息是否为确认继续的信息,是则执行步骤209,否则结束操作;
步骤209 所述装置获取预设地址和第一下载地址;步骤210 所述装置根据第一下载地址从网络服务器上下载最新驱动安装包,下载完毕后判断是否下载成功,是则执行步骤217,否则执行步骤211 ;在本实施例中,如最新驱动安装包的名称为“ ABOTktup ”,第一下载地址为 "http://www. xxxxx. cn/update/down/ABCDSetup. exe,,;在本实施例中,判断下载是否成功具体为在下载完毕后,根据所述预设存储地址判断最新驱动安装包的本地文件是否存在,存在则下载成功,不存在则下载失败,继续根据预设的固定地址下载配置文件;步骤210和步骤211之间还可包括步骤210’,步骤210判断为否时执行步骤210’ ;步骤210’ 所述装置判断下载次数是否超过预设重试次数,是则执行步骤211,否则返回步骤209 ;本实施例中,也可不执行步骤209和步骤210,步骤208中判断为是时,顺序执行步骤 211 ;步骤211 所述装置根据预设地址从所述服务器中下载配置文件,并判断是否下载成功,是则执行步骤213,否则执行步骤212 ;本实施例中,如所述配置文件的名称为‘‘ABCDVer”,则所述预设地址为http:// www. xxxxx. cn/update/down/ABCVDer. ini ;所述配置文件包含以下内容配置文件格式为[version]version = //最新农行K宝驱动安装包[update]Updatetime = 10// 更新周期设定Adrl = //最新驱动安装包的备用地址1Adr2 = //最新驱动安装包的备用地址2Adr3 = //最新驱动安装包的备用地址3 ;本实施例中,判断是否下载成功具体为在下载完毕后,所述装置根据预设存储地址判断配置文件的本地文件是否存在,存在则下载成功,不存在则下载失败;步骤212 所述装置判断下载次数是否超过预设重试次数,是则结束,否则返回步骤 211 ;步骤213 将所述配置文件中第一条备用的下载地址作为当前第二下载地址;步骤214 所述装置根据当前第二下载地址从网络服务器中下载最新驱动安装包,并判断是否下载成功,是则执行步骤217,否则执行步骤215 ;本实施例中,判断下载是否成功具体为在下载完毕后,所述装置根据所述预设存储地址判断最新驱动安装包的本地文件是否存在,存在则下载成功,不存在则下载失败;步骤215 所述装置判断所述配置文件中的备用地址是否全部用完,是则结束,否则执行步骤216;步骤216 所述装置将所述配置文件中下一条备用的第二下载地址作为当前第二下载地址,返回步骤214;步骤217 所述装置从所述最新驱动安装包的本地文件中获取签名证书;
步骤218 所述装置验证所述签名证书是否合法,是则执行步骤219,否则结束;本实施例中,步骤218具体包括步骤218-1 所述装置通过WinVerifyTrust函数判断所述签名证书是否为合法的 windows签名,是则执行步骤218-2,否则结束;步骤218-2 所述装置判断所述获取的签名证书是否由VeriSign签发,是则执行步骤219,否则结束操作;步骤218-2具体为所述装置从所述签名证书中获取根证,判断所述根证是否与 VeriSign的证书链相符;步骤219:所述装置判断当前用户是否为管理员,是则执行步骤221,否则执行步骤 220 ;本实施中该步骤的判断过程与步骤204相同,不再赘述;步骤220 所述装置创建管理员权限进程,并判断创建是否成功,是则执行步骤 221,否则结束;本实施例中,步骤220具体为所述装置调用系统函数创建管理员权限进程,并获取返回值,判断所述获取的返回值是否为“成功”,是则执行步骤221,否则结束;本实施例中所述系统函数具体为SiellExecuteEx ;步骤221 所述装置在所述计算机上安装所述最新驱动安装包。本实施例中的配置文件也可预先存储在无驱无软Key上的iso文件中,实现过程省去步骤211和步骤212,步骤210判断为否时顺序执行步骤213。本实施例中,根据第一下载地址下载最新驱动安装包的过程和根据预设地址下载配置文件的过程可调换,即步骤210与步骤211-216可调换。本实施例中,也可同时根据第一下载地址和预设地址分别从网上服务器上下载最新驱动安装包和配置文件,再根据配置文件中的所有备用地址下载最新驱动安装包,最后判断所有下载的最新驱动安装包的版本号的高低,并对版本号最高的最新驱动安装包进行安装处理。本实施例中,也可先下载配置文件,根据配置文件中备用的第二下载地址从网络服务器上下载最新驱动安装包,下载不成功时再根据第一下载地址从服务器上下载最新驱动安装包。本实施例通过自动安装驱动包的方法,当无驱无软Key插入到计算机上后,自动从网络服务器上下载驱动安装包并进行安装过程,节省无驱无软Key的硬件资源,降低无驱无软Key的硬件要求。实施例三本发明实施例三提供了一种在升级过程的自动安装软件的方法,具体的以升级过程的第(1)种实现方式且配置文件中设有多条下载地址为例进行说明,即当无驱无软Key 插入计算机并在驱动程序到达更新周期时,装置通过预设地址从网络服务器上下载配置文件,比较本地计算机中已安装的驱动程序的版本号与配置文件中的最新驱动安装包的版本号高低,当配置文件中的最新驱动安装包的版本号较高时,所述装置根据配置文件中的下载地址从网络服务器上下载最新驱动安装包,对计算机中已安装的所述无驱无软Key的驱动程序进行升级处理。如图3所示,包括步骤301 当接收到第二触发信息时,所述装置判断是否与网络服务器建立了连接,是则执行步骤303,否则执行步骤302 ;本实施例中,步骤301具体为通过系统函数MternetCheckConnection判断当前网络连接状态;本实施例中,所述第二触发信息为无驱无软KEY插入计算机且到达更新周期的触发信息或用户点击升级按钮的触发信息;所述装置记录驱动程序最后一次更新时的时间, 当最后一次更新时间与驱动程序第一次安装时的时间的间隔到达预定的更新周期时,生成第二触发信息。步骤302 所述装置与网络服务器建立连接,并判断连接是否成功,是则执行步骤 303,否则结束;具体地,在本实施例中,计算机通过调用系统函数MternetGetConnectecKtate 获取网络状态,通过系统函数hternetCheckCormection判断与服务器是否可连接;步骤303 所述装置检测当前用户是否为管理员,是则执行步骤308,否则执行步骤 304 ;具体地,本实施例中,步骤303具体包括步骤303-1 所述装置通过判断当前进程是否具有管理员权限,是则执行步骤 303-2,否则执行步骤304 ;步骤303-2 所述装置获取当前用户和所述当前用户的信息判断当前用户是否为管理员,是则执行步骤308,否则执行步骤304 ;步骤304:所述装置判断当前的操作系统版本是否高于预设的操作系统版本,是则执行步骤305,否则执行步骤306 ;优选地,在本实施例中,所述预设的操作系统为Vista ;步骤305 所述装置判断用户账户控制界面是否已经被打开,是则结束,否则执行步骤306 ;本实施例中步骤305具体为通过读取注册表中UAC的标志,判断UAC的标识是否与预设值,是则用户账户控制界面已经被打开,否则未被打开;步骤306 所述装置输出提示信息,待用户确认;优选地,在本实施例中,所述提示信息为“当前用户非管理员,安装过程中会需要您输入管理员账户和密码,是否继续?,,;步骤307 所述装置接收用户输入的信息,判断所述输入的信息是否为确认继续的信息,是则执行步骤308,否则结束操作;步骤308 所述装置根据预设地址从网络服务器中下载配置文件,并判断是否下载成功,是则执行步骤310,否则执行步骤309 ;本实施例中,如所述配置文件的名称为“ABCDVer”,则所述固定地址为http:// www. xxxxx. cn/update/down/ABCDVer. ini ;所述配置文件包含以下内容配置文件格式为[version]version = //最新驱动安装包的版本[update]Updatetime = 10//更新周期设定
Adrl = //最新驱动安装包的备用地址1Adr2 = //最新驱动安装包的备用地址2Adr3 = //最新驱动安装包的备用地址3 ;本实施例中判断是否下载成功具体为在下载完毕后,根据预设存储地址判断配置文件的本地文件是否存在,存在则下载成功,不存在则下载失败;步骤309 所述装置判断下载次数是否超过预设重试次数,是则结束,否则返回步骤308,重新进行下载;步骤310 所述装置从所述配置文件中获取最新驱动安装包的版本号,并判断所述获取的版本号是否高于本地已安装的驱动程序的版本号,是则执行步骤311,否则结束;步骤311 所述装置从所述配置文件中获取下载地址;步骤312 所述装置将获取的第一条下载地址作为当前下载地址;步骤313 所述装置根据当前下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤317,否则执行步骤314 ;在本实施例中,判断是否下载成功具体为在下载完毕后,所述装置根据所述预设存储地址判断最新驱动安装包的本地文件是否存在,存在则下载成功,不存在则下载失败,步骤314 所述装置判断所述获取的下载地址是否用完,是则执行步骤316,否则执行步骤315;步骤315 所述装置将所述获取的下一条下载地址作为当前下载地址,返回步骤 313,重新进行下载;步骤316 所述装置判断下载次数是否超过预设重试次数,是则结束,否则返回步骤 312 ;步骤317 所述装置从所述最新驱动安装包中获取签名证书;步骤318 所述装置验证所述签名证书是否合法,是则执行步骤319,否则结束;本实施例中,步骤318具体包括步骤318-1 所述装置通过WinVerifyTrust函数判断所述签名证书是否为合法的 windows签名,是则执行步骤318-2,否则结束;步骤318-2 所述装置判断所述获取的签名证书是否由VeriSign签发,是则执行步骤319,否则结束操作;具体地,从所述签名证书中获取根证,判断所述根证是否与VeriSign的证书链相符;步骤319:所述装置判断当前用户是否为管理员,是则执行步骤321,否则执行步骤 320 ;步骤320 所述装置创建管理员权限进程,并判断创建是否成功,是则执行步骤 321,否则结束;本实施例中,步骤320具体为所述装置调用系统函数创建管理员权限进程,获取返回值,并判断所述返回值是否为“成功”,是则创建成功,否则创建不成功;本实施例中的所述系统函数具体为SiellExecuteEx ;步骤321 所述装置覆盖安装已下载的所述最新驱动安装包。本实施例中,所述装置也可根据预设的下载地址直接从服务器上下载最新驱动安装包,然后比较已安装的驱动程序的版本号与下载的最新驱动安装包的版本号的高低,如下载的最新驱动安装包的版本号较高,则进行升级处理,覆盖安装已下载的所述最新驱动安装包;如已安装的驱动程序的版本号较高,则结束;或者,本实施例中,所述装置同时根据预设的第一下载地址和预设地址从服务器上下载驱动安装包,如两者均未下载成功,则判断下载次数是否超过预设次数,是则结束, 否则重新进行下载;如只有所述最新驱动安装包下载成功,则比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤317, 如本地已安装驱动程序的版本号较高,则结束;如只有所述配置文件下载成功,则根据配置文件中备用的下载地址从网络服务器上下载最新驱动安装包,并判断下载是否成功,是则比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤 317,如本地已安装驱动程序的版本号较高,则结束;如下载不成功,则结束;如两者均下载成功,则根据所述配置文件中的备用地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则检测根据所述第一预设地址下载的最新驱动安装包、根据所述备用地址下载的最新驱动安装包的版本号和本地已安装驱动程序的版本号的高低,如最新驱动安装包的驱动版本号较高,则执行步骤317,如本地已安装驱动程序的版本号较高,则结束;如下载不成功,则结束;步骤317具体为从版本号最高的最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤318,否则结束。本实施例中的自动安装软件的方法,是在软件升级过程中,当接收到第二触发信息时,先下载配置文件,再比较配置文件中的最新驱动安装包的版本号与本地已安装的驱动程序的版本号,当配置文件中的最新驱动安装包的版本号较高时,进行升级处理,无需人工参与自动进行升级,且最新驱动安装包需要从网络服务器上进行下载,节省无驱无软Key 的硬件资源,降低无驱无软Key的硬件要求。实施例四本发明实施例四提供一种自安装软件的装置,如图4所示,包括接收模块401 用于接收触发信息;本实施例中,所述触发信息包括第一触发信息或第二触发信息;所述第一触发信息为无驱无软KEY插入计算机的触发信息或点击安装按钮的触发信息;所述第二触发信息为无驱无软KEY插入计算机且到达更新周期的触发信息或点击升级按钮的触发信息;获取模块402 用于在所述接收模块401接收到触发信息后获取下载地址;本实施例中,所述获取模块402具体包括第一获取单元用于在所述接收模块401接收到触发信息后获取第一下载地址和 /或预设地址;第二获取单元用于获取配置文件中备用的第二下载地址;下载判断模块403 用于根据所述下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功;和/或用于根据所述预设地址从网络服务器上下载配置文件,并判断是否下载成功;所述下载地址包括第一下载地址和\或第二下载地址;
第一判断模块404 用于在所述下载判断模块403判断下载不成功时,判断下载次数是否超过预设重试次数;获取判断模块405 用于在所述下载判断模块403判断下载成功时,从所述最新驱动安装包中获取签名证书,并判断所述签名证书是否合法;第二判断模块406 用于在所述签名证书合法时,判断当前用户是否为管理员;创建判断模块407:用于当前用户不为管理员时,创建管理员权限进程,并判断创建是否成功;安装模块408 用于在管理员权限下安装所述最新驱动安装包。如图5所示,当所述装置用于实现第一次安装驱动程序时,本实施例提供的装置还包括第三判断模块409 用于在接收到触发信息时,判断是否需要下载最新驱动安装包;为提高自动下载软件的安全性,本实施例提供的装置进一步的还包括第四判断模块411 用于判断所述装置是否与网络服务器建立了连接;建立判断模块412 用于在所述第四判断模块411判断为否时,将所述装置与网络服务器建立连接,并判断连接是否成功;第二检测模块413:用于在所述装置与网络服务器建立连接时,检测当前用户是否为管理员;第五判断模块414:用于在当前用户不为管理员时,判断当前计算机中的操作系统是否高于预设系统;第六判断模块415 用于在所述第五判断模块414判断为是时,判断用户账户控制界面是否被打开;输出模块416 用于在所述第五判断模块414和第六判断模块415判断为否时,输出提示信息,等待用户确认;接收判断模块417:用于接收用户输入的信息,判断所述信息是否为确认继续的
fn息ο如图6所示,当所述装置用于实现驱动程序的升级过程时,本实施例提供的装置还包括第一检测模块410 用于检测最新驱动安装包的版本号与本地已安装的驱动程序的版本号的高低;所述安装模块408具体用于覆盖安装所述最新驱动安装包;为提高自动下载软件的安全性,本实施例提供的装置进一步的还包括第四判断模块411 用于判断所述装置是否与网络服务器建立了连接;建立判断模块412 用于在所述第四判断模块411判断为否是,将所述装置与网络服务器建立连接,并判断连接是否成功;第二检测模块413:用于在所述装置与网络服务器建立连接时,检测当前用户是否为管理员;第五判断模块414:用于在当前用户不为管理员时,判断当前计算机中的操作系统是否高于预设系统;第六判断模块415 用于在所述第五判断模块414判断为是时,判断用户账户控制界面是否被打开;
输出模块416 用于在所述第五判断模块414和第六判断模块415判断为否时,输出提示信息,等待用户确认;接收判断模块417:用于接收用户输入的信息,判断所述信息是否为确认继续的
fn息ο本实施例中提供的装置,可以实现无驱无软Key的驱动包装包的第一次安装和安装后进行升级的过程,省去手动操作的过程,且无驱无软Key中只预先存储下载地址或预设地址而不用存储驱动安装包,节省无驱无软Key的硬件资源,降低无驱无软Key的硬件要求。以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
权利要求
1.一种自动安装软件的方法,其特征在于,包括步骤A 接收到触发信息后获取下载地址;步骤B 根据所述下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C ;步骤C 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B ;步骤D 从所述最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤E,否则结束;步骤E 判断当前用户是否为管理员,是则执行步骤G,否则执行步骤F ;步骤F 创建管理员权限进程,并判断创建是否成功,是则执行步骤G,否则结束;步骤G 安装所述最新驱动安装包。
2.如权利要求1所述的自动安装软件的方法,其特征在于,在所述步骤A中获取下载地址之前包括步骤A’,步骤A’ 接收所述触发信息,判断是否需要下载最新驱动安装包,是则执行步骤A,否则结束。
3.如权利要求2所述的自动安装软件的方法,其特征在于,所述步骤A’包括当接收到第一触发信息时,所述装置被启动,判断本地是否已安装无驱无软Key的驱动程序,是则结束,否则执行步骤A。
4.如权利要求3所述的自动安装软件的方法,其特征在于,所述步骤A包括步骤All 根据预设地址从所述网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤A13,否则执行步骤A12 ;步骤A12 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤All ;步骤A13 从所述配置文件中获取备用的下载地址,顺序执行步骤B。
5.如权利要求4所述的自动安装软件的方法,其特征在于,所述配置文件中备用的下载地址设置一条,所述步骤B包括根据所述备用的下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C。
6.如权利要求4所述的自动安装软件的方法,其特征在于,所述配置文件中备用的下载地址设置多条,所述步骤B包括步骤Bll 将所述配置文件中备用的第一条下载地址作为当前下载地址;步骤B12 根据所述当前下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B13 ;步骤B13 判断所述配置文件中备用的下载地址是否用完,是则执行步骤C,否则执行步骤B14 ;步骤B14:将所述配置文件中备用的下一条下载地址作为当前下载地址,返回步骤B12。
7.如权利要求3所述的自动安装软件的方法,其特征在于,所述步骤A包括获取预设的下载地址。
8.如权利要求3所述的自动安装软件的方法,其特征在于,所述步骤A包括步骤A21 获取第一下载地址和预设地址;步骤A22 根据所述预设地址从所述网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤A24,否则执行步骤A23 ;步骤A23 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤A22 ;步骤A24 从所述配置文件中获取备用的第二下载地址,顺序执行步骤B。
9.如权利要求8所述的自动安装软件的方法,其特征在于,所述配置文件中备用的第二下载地址设置一条,所述步骤B包括步骤B21 根据所述第一下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B22 ;步骤B22:根据所述备用的第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C。
10.如权利要求8所述的自动安装软件的方法,其特征在于,所述配置文件中备用的第二下载地址设置多条,所述步骤B包括步骤B31 根据所述第一下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B32 ;步骤B32 将所述配置文件中第一条备用的下载地址作为当前第二下载地址;步骤B33 根据当前第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B34 ;步骤B34 判断所述配置文件中备用的第二下载地址是否用完,是则执行步骤C,否则执行步骤B35 ;步骤B35 将所述配置文件中下一条备用的第二下载地址作为当前第二下载地址,返回步骤B33。
11.如权利要求3所述的自动安装软件的方法,其特征在于,所述步骤A包括获取第一下载地址和预设地址;所述步骤B包括步骤B41 根据所述第一下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B42 ;步骤B42 根据所述预设地址从所述网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤B44,否则执行步骤B43 ;步骤B43 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B42 ;步骤B44 将所述配置文件中第一条备用的下载地址作为当前第二下载地址;步骤B45 根据当前第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B46 ;步骤B46 判断所述配置文件中备用的第二下载地址是否用完,是则执行步骤C,否则执行步骤B47 ;步骤B47:将所述配置文件中下一条备用的第二下载地址作为当前第二下载地址,返回步骤B45。
12.如权利要求3所述的自动安装软件的方法,其特征在于,所述步骤A包括获取第一下载地址和预设地址;所述步骤B包括步骤B51 根据所述第一下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B52 ;步骤B52 根据所述预设地址从所述网络服务器上下载配置文件,并判断是否下载成功,是则执行步骤B54,否则执行步骤B53 ;步骤B53 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B52 ;步骤B54 根据所述配置文件中的第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C。
13.如权利要求3所述的自动安装软件的方法,其特征在于,所述步骤A包括获取第一下载地址和预设地址;所述步骤B包括分别根据所述第一下载地址和预设地址从所述网络服务器上下载最新驱动安装包和配置文件,并分别判断所述最新驱动安装包和配置文件是否下载成功;如两者均未下载成功,则执行步骤C ;如只有所述最新驱动安装包下载成功,则执行步骤D ;如只有所述配置文件下载成功,则根据配置文件中的第二下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则结束;如两者均下载成功,则根据所述配置文件中的下载地址从所述网络服务器上下载最新驱动安装包,并检测根据所述第一预设地址下载的最新驱动安装包和根据所述第二下载地址下载的最新驱动安装包的版本号的高低,顺序执行步骤D ;所述步骤D具体为从版本号最高的最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤E,否则结束。
14.如权利要求3-13任意一项所述的自动安装软件的方法,其特征在于,所述第一触发信息为无驱无软KEY插入计算机的触发信息或点击安装按钮的触发信息。
15.如权利要求1所述的自动安装软件的方法,其特征在于,在所述步骤A中的获取下载地址之前包括步骤A”,所述步骤A”包括步骤A”1 当接收到第二触发信息时,根据预设地址从所述网络服务器上下载配置文件,并判断下载是否成功,是则执行步骤A” 3,否则执行步骤A” 2 ;步骤A”2 判断下载次数是否超过预设重试次数,是则结束,否则返回步骤A”l,重新进行下载;步骤A” 3 比较配置文件中的最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述配置文件中的驱动版本号较高,则执行步骤A,如本地已安装驱动程序的版本号较高,则结束。
16.如权利要求15所述的自动安装软件的方法,其特征在于,所述步骤A包括从所述配置文件中获取下载地址。
17.如权利要求16所述的自动安装软件的方法,其特征在于,所述配置文件中的下载地址设置一条,所述步骤B包括根据所述获取的下载地址从所述网络服务器上下载最新驱动安装包。
18.如权利要求16所述的自动安装软件的方法,其特征在于,所述配置文件中的下载地址设置多条,所述步骤B包括步骤B61 将所述获取的第一条下载地址作为当前下载地址;步骤B62 根据当前下载地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤B63 ;步骤B63 判断所述获取的下载地址是否用完,是则执行步骤C,否则执行步骤B64 ;步骤B64 将所述获取的下一条下载地址作为当前下载地址,返回步骤B62。
19.如权利要求1所述的自动安装软件的方法,其特征在于,所述步骤A包括当接收到第二触发信息时,获取预设的下载地址。
20.如权利要求19所述的自动安装软件的方法,其特征在于,所述步骤B和步骤D之间包括步骤B’,所述步骤B判断为是后执行所述步骤B’,步骤B’ 比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如所述本地已安装驱动程序的版本号较高,则结束。
21.如权利要求1所述的自动安装软件的方法,其特征在于,所述步骤A包括当接收到第二触发信息时,获取第一下载地址和预设地址;所述步骤B包括分别根据所述第一下载地址和预设地址从所述网络服务器上下载最新驱动安装包和配置文件,并分别判断所述最新驱动安装包和所述配置文件是否下载成功,如两者均未下载成功,则执行步骤C ;如只有所述最新驱动安装包下载成功,则比较所述最新驱动安装包的版本号和本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如所述本地已安装驱动程序的版本号较高,则结束;如只有所述配置文件下载成功,则根据所述配置文件中备用的下载地址从所述网络服务器上下载最新驱动安装包,并判断下载是否成功,是则比较所述最新驱动安装包的版本号和所述本地已安装驱动程序的版本号,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如所述本地已安装驱动程序的版本号较高,则结束;如下载不成功,则结束;如两者均下载成功,则根据所述配置文件中的备用地址从所述网络服务器上下载最新驱动安装包,并判断是否下载成功,是则检测根据所述第一预设地址下载的最新驱动安装包、根据所述备用地址下载的最新驱动安装包的版本号和所述本地已安装驱动程序的版本号的高低,如所述最新驱动安装包的驱动版本号较高,则执行步骤D,如所述本地已安装驱动程序的版本号较高,则结束;如下载不成功,则结束;步骤D具体为从版本号最高的最新驱动安装包中获取签名证书,并判断所述签名证书是否合法,是则执行步骤F,否则结束。
22.如权利要求14-21任意一项所述的自动安装软件的方法,其特征在于,所述第二触发信息为无驱无软KEY插入计算机且到达更新周期的触发信息或点击升级按钮的触发信息。
23.如权利要求22所述的自动安装软件的方法,其特征在于,所述步骤G具体为覆盖安装所述最新驱动安装包。
24.如权利要求1所述的自动安装软件的方法,其特征在于,在所述步骤A中接收到触发信息和获取下载地址之间包括步骤AOl 判断其是否与所述网络服务器建立了连接,是则执行步骤A03,否则执行步骤 A02 ;步骤A02 与所述网络服务器建立连接,并判断连接是否成功,是则执行步骤A03,否则结束;步骤A03 检测当前用户是否为管理员,是则获取下载地址,顺序执行步骤B,否则执行步骤A04 ;步骤A04 判断当前计算机中的操作系统是否高于预设系统,是则执行步骤A05,否则执行步骤A06;步骤A05 判断用户账户控制界面是否被打开,是则结束,否则执行步骤A06 ;步骤A06 输出提示信息,等待用户确认;步骤A07 接收用户输入的信息,判断所述信息是否为确认继续的信息,是则获取下载地址,顺序执行步骤B,否则结束。
25.一种自动安装软件的装置,其特征在于,包括接收模块用于接收触发信息;获取模块用于在所述接收模块接收到触发信息后获取下载地址;下载判断模块用于根据所述下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功;第一判断模块用于在所述下载判断模块判断下载不成功时,判断下载次数是否超过预设重试次数;获取判断模块用于在所述下载判断模块判断下载成功时,从所述最新驱动安装包中获取签名证书,并判断所述签名证书是否合法;第二判断模块用于在所述签名证书合法时,判断当前用户是否为管理员;创建判断模块用于当前用户不为管理员是,创建管理员权限进程,并判断创建是否成功;安装模块用于在管理员权限下安装所述最新驱动安装包。
26.如权利要求25所述的自动安装软件的装置,其特征在于,还包括第三判断模块用于在接收到触发信息时,判断是否需要下载最新驱动安装包。
27.如权利要求25所述的自动安装软件的装置,其特征在于,所述触发信息包括第一触发信息或第二触发信息;所述第一触发信息为无驱无软KEY插入计算机的触发信息或点击安装按钮的触发信息;所述第二触发信息为无驱无软KEY插入计算机且到达更新周期的触发信息或点击升级按钮的触发信息。
28.如权利要求25所述的自动安装软件的装置,其特征在于,所述获取模块包括第一获取单元用于在所述接收模块接收到触发信息后获取第一下载地址和/或预设地址;第二获取单元用于获取配置文件中备用的第二下载地址;所述下载判断模块还用于根据所述预设地址从所述网络服务器上下载配置文件,并判断是否下载成功。
29.如权利要求25所述的自动安装软件的装置,其特征在于,还包括第一检测模块用于检测最新驱动安装包的版本号与本地已安装的驱动程序的版本号的高低;所述安装模块具体用于在管理员权限下覆盖安装所述最新驱动安装包。
30.如权利要求25- 任意一项所述的自动安装软件的装置,其特征在于,还包括第四判断模块用于判断所述装置是否与所述网络服务器建立了连接;建立判断模块用于在所述第四判断模块判断为否时,将所述装置与所述网络服务器建立连接,并判断连接是否成功;第二检测模块用于在所述装置与所述网络服务器建立连接成功时,检测当前用户是否为管理员;第五判断模块用于在所述当前用户不为管理员时,判断当前计算机中的操作系统是否高于预设系统;第六判断模块用于在所述第五判断模块判断为是时,判断用户账户控制界面是否被打开;输出模块用于在所述第五判断模块和第六判断模块判断为否时,输出提示信息,等待用户确认;接收判断模块用于接收用户输入的信息,判断所述信息是否为确认继续的信息。
全文摘要
本发明公开一种自动安装软件的方法及装置,所述方法包括步骤A接收到触发信息后获取下载地址;步骤B根据下载地址从网络服务器上下载最新驱动安装包,并判断是否下载成功,是则执行步骤D,否则执行步骤C;步骤C判断下载次数是否超过预设重试次数,是则结束,否则返回步骤B;步骤D从最新驱动安装包中获取签名证书,并判断签名证书是否合法,是则执行步骤E,否则结束;步骤E判断当前用户是否为管理员,是则执行步骤G,否则执行步骤F;步骤F创建管理员权限进程,并判断创建是否成功,是则执行步骤G,否则结束;步骤G安装所述最新驱动安装包。使用本发明提供的方法及装置节省无驱无软Key的硬件资源并降低硬件要求。
文档编号G06F21/00GK102567063SQ20121001928
公开日2012年7月11日 申请日期2012年1月20日 优先权日2012年1月20日
发明者于华章, 陆舟 申请人:飞天诚信科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1