具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1是根据本发明实施例的软件安装包的生成方法的流程示意图。如图1所示,根据本发明实施例的软件安装包的生成方法包括:
步骤S102,获取业务软件的版本信息、待打包文件及待打包文件信息,根据业务软件的版本信息及待打包文件生成配置文件并记录该配置文件对应的信息。
步骤S104,创建软件安装包,在软件安装包的头部写入业务软件的安装单元(或称为安装程序、安装单元程序)。
步骤S106,在软件安装包的安装单元后依次写入配置文件对应的信息、配置文件、待打包文件信息、待打包文件、尾部结构体信息,生成业务软件的软件安装包。
通过上述方法,在打包的时候将安装单元打包到文件的头部,该安装单元中包含着安装的相关复杂逻辑判断,并相应的在软件安装包后续部分写入相应的信息,在安装该软件安装包时,整个安装过程可以由该安装单元自动进行处理,保证了所有安装的业务软件的正常使用,既能满足平台软件与业务软件的匹配,又可确保所有安装业务软件的兼容性以及业务软件各版本之间切换的灵活性。下文中将结合图3对上述方法进行详细描述。
优选地,在上述方法中,业务软件的版本信息可以进一步包括业务软件对应的以下信息至少之一:手机制式、平台、业务类型、业务软件版本号、平台版本号;待打包文件信息可以进一步包括以下至少之一:当前文件路径、文件名称、文件大小、安装后的平台主程序路径、文件版本号;配置文件信息可以进一步包括以下至少之一:配置文件大小、配置文件名称、配置文件所在的路径;尾部结构体信息可以进一步包括以下至少之一:安装单元的文件大小、待打包文件的总个数、定位尾部结构体的常量信息。
上述信息即安装单元在安装软件安装包时需要的信息,可以根据实际情况选取其中的一个或多个,也可以添加更多的信息。打包完成后,生成的软件安装包的结构如图2所示。
优选地,通过安装单元执行生成业务软件的软件安装包的步骤可以进一步包括但不限于:
步骤1,从注册表中读取本地平台软件的安装信息;
步骤2,从软件安装包中读取配置文件对应的信息及配置文件;
步骤3,判断当前安装的业务软件是否能够在本地平台软件上运行,如果否,则提示用户本地平台软件版本过低,需要安装高版本的平台软件,退出安装;
步骤4,如果当前安装的业务软件能够在本地的平台软件上运行,则继续判断本地是否已安装了当前安装业务软件的更高版本,如果是提示用户是否需要安装比当前版本低的业务软件,如果用户选择需要,则将本次要安装的业务软件以及与该业务软件冲突的业务软件记录在业务软件卸载配置文件中,如果不需要,则退出安装;
步骤5,如果本地没有比当前安装的业务软件的更高版本的业务软件,则继续判断本地安装目录下是否存在该业务软件包含的文件的更高版本文件,如果否,则安装该业务软件并将该业务软件对应的信息写入业务软件安装配置文件中;
步骤6,如果本地安装目录下存在该业务软件包含的文件的更高版本文件,则提示用户是否卸载所有含有该高版本文件的业务软件,如果用户选择是,则将本次安装的业务软件以及与该业务软件相冲突的业务软件写入业务软件卸载配置文件中,如果否,则安装该业务软件并将该业务软件对应的信息写入业务软件安装配置文件中。
上述安装单元通过执行上述步骤,即可将上述生成的软件安装包,安装在相应的平台上。在安装过程中,进行了多次判断与选择,既保证了所有安装的业务软件的正常使用,又能满足平台软件与业务软件的匹配,同时也可确保所有安装业务软件的兼容性以及业务软件各版本之间切换的灵活性。
优选地,步骤1和步骤2之间,还可以进一步包括以下处理:
步骤7,读取当前运行的业务软件的尾部结构体信息;
步骤8,判断该尾部结构体信息是否完整正确,如果否,则提示文件格式不正确,结束安装,如果是,则确定进行步骤2。
优选地,在步骤2和步骤3之间,还可以进一步包括以下处理:
步骤9,将读取到的业务软件的版本信息按照预定的业务软件命名规则生成业务软件名,与目前正在安装的业务软件名进行比较,如果不一致,则提示当前使用的业务软件版本信息有误,退出安装;
步骤10,如果一致,则读取目前已安装的业务软件信息并显示给用户以确认是否安装,如果否,则退出安装;
步骤11,如果安装,则判断本地平台软件是否正在运行,如果是,则提示用户关闭平台软件,之后循环判断平台软件是否正在运行,如果该平台软件未在运行,则确定执行步骤3。
通过在整个安装流程中添加上述步骤,可以使整个流程更为严密完整,确保软件安装包被正确、完整的安装。下文中将结合图4对上述软件安装包安装方法进行详细描述。
根据本发明实施例的软件安装包的卸载方法包括(下文中将结合图5对下述软件安装包卸载方法进行详细描述):
步骤1,加载业务软件安装配置文件,从业务软件安装配置文件中读取当前已安装的业务软件信息。
步骤2,根据业务软件卸载配置文件判断本次卸载是否是为了安装新的业务软件,如果否,则显示目前已安装的所有业务软件,以使用户从所有业务软件中选择需要卸载的业务软件,然后响应于用户选择需要卸载的业务软件的操作,逐个卸载选择的业务软件,如果用户选择了取消,则退出卸载。
步骤3,若果根据业务软件卸载配置文件判断本次卸载是为了安装新的业务软件,则再次提示用户确认本次卸载是否是为了安装新的业务软件,如果用户选择否,则显示目前已安装的所有业务软件,以使用户从所有业务软件中选择需要卸载的业务软件,然后响应于用户选择需要卸载的业务软件的操作,逐个卸载选择的业务软件,如果用户选择了取消,则退出卸载。
步骤4,如果确认本次卸载是为了安装某个业务软件,则将与该新的业务软件冲突的所有业务软件全部显示出来,以使用户从与该新的业务软件冲突的所有业务软件中选择需要卸载的业务软件,然后响应于用户选择需要卸载的业务软件的操作,逐个卸载选择的业务软件,如果用户选择了取消,则退出卸载。
通过上述卸载方法,即可实现各业务软件的智能卸载,确保各业务软件的卸载不会影响其它业务软件的正常使用。
下面结合实例以及图3、图4、图5对上述优选实施例进行详细说明。需要说明的是,由于通常的软件开发高版本都是在低版本基础上功能的进一步扩展,满足高版本对低版本的各种兼容。因此在本发明实施例中,平台软件高版本一定满足兼容低版本,如某个业务软件适用的平台版本为V1.0,则V1.0以上的平台版本一定满足业务软件的正常使用;对于每个插件或者文件版本亦如此,高版本一定是兼容低版本的。但是反之低版本不一定能兼容高版本。
图3是根据本发明实例的软件安装包的生成方法的流程示意图。如图3所示,软件安装包的打包过程包括:
步骤S302:收集打包业务软件的相关版本信息,包含业务软件的制式、平台、业务类型、业务软件版本号和适用的平台版本号。
步骤S304:收集待打包的文件,包括文件名、对应的文件路径以及该文件相对于平台主程序的路径。
步骤S306:根据前两步收集的信息生成配置文件,并且记录当前生成的配置文件名称及所在的路径。这里配置文件命名根据步骤S302收集的信息按一定规则生成,配置文件的内容包含步骤S302和步骤S304收集的所有内容。
步骤S308:获取收集到的各个待打包文件的版本号,对于插件,其版本号在程序中设置,对于文本配置文件,其版本号在文本中记录。
步骤S310:在预先设定的目录下创建安装包程序,其中安装包命名根据步骤S302收集的信息按照一定规则生成。
步骤S312:将安装单元写入安装包的头部。
步骤S314:紧接着在安装单元的后面依次写入配置文件信息和配置文件,配置文件信息里主要记录了配置文件的大小,便于读取配置文件时定位文件的位置和大小。
步骤S316:依次将收集的待打包文件信息和待打包文件写入到配置文件后面,待打包文件信息包含该对应文件名称、大小、相对平台主程序路径、文件版本号。
步骤S318:在打包文件尾部写入尾部结构体信息,主要包含安装单元的文件大小、打包文件的总个数以及定位该尾部结构体本身的一个常量信息。
上述打包步骤完成后,就会生成一个软件安装包。如图2所示,安装单元被打包在业务软件的头部,其中包含了安装过程的所有逻辑处理,启动打包好的业务软件后,即触发安装单元运行,如图4所示,运行步骤如下:
步骤S402:从注册表中读取平台软件的安装信息,判断平台软件是否已安装,若未安装,提示用户先安装平台软件,退出业务软件安装;若已安装平台软件,获取当前平台软件的安装路径。
步骤S404:读取当前运行的业务软件的尾部结构体信息,获得该业务软件中安装单元的大小、打包文件的总个数以及定位该尾部结构体的常量信息。
步骤S406:根据步骤S404读取情况判断尾部结构体信息是否完整正确(主要看读取到的定位尾部结构体的常量信息是否正确),若相关信息不正确,认为该业务软件打包不完整,进入步骤S408;若相关信息完全符合,则认为该业务软件打包完整,进入步骤S410。
步骤S408:该业务软件打包不完整,提示用户文件格式不正确,返回错误,结束安装。
步骤S410:该业务软件打包完整,开始读取配置文件信息,因为该文件是附在安装单元后面的,从业务软件的起始处往后移动安装单元对应大小字节即找到配置文件信息,读取相关信息,获取到配置文件的大小。
步骤S412:再往后读取对应配置文件大小字节的内容即为配置文件,从配置文件中可以获取到该业务软件的相关版本信息,包含该业务软件对应的手机制式、平台、业务类型、业务软件版本号以及该业务软件适用的平台软件版本。
步骤S414:将步骤S412读取到的业务软件版本信息按照业务软件命名规则生成业务软件名,然后和目前正在安装的业务软件名进行比较,若不一致,则认为软件名中的版本号信息被修改过,软件描述不正确,进入步骤S416;否则进入步骤S418。
步骤S416:软件内部记录的版本信息与软件名本身描述的版本信息不一致,提示用户当前使用的业务软件版本信息有误,错误返回,这一步主要防止软件名被修改过,导致用户安装的业务软件或版本不是自己所期望的。
步骤S418:从平台软件安装目录下的业务软件安装配置文件中读取目前已安装的业务软件信息,包含已安装的业务软件名称、对应的版本号、业务软件包含的所有文件及其相对于平台主程序的相对路径(每次安装好一个业务软件都会把对应的安装信息写入业务软安装配置文件中,便于安装和卸载时查找目前的业务软件安装信息)。
步骤S420:显示当前业务软件的安装信息给用户进行确认,包含该业务软件对应的手机制式、平台、业务类型、版本号、适用的平台版本号,如果用户选择安装,进入步骤S422,否则用户选择取消则退出安装。
步骤S422:判断平台软件是否正在运行,若正在运行进入步骤S424,否则进入步骤S426。
步骤S424:提示用户关闭平台软件,然后进入步骤S422。
步骤S426:判断当前安装的业务软件能否运行在本地的平台软件上,通过从注册表中读取本地当前安装平台软件的版本,然后与业务软件适用的平台版本进行比较,如果本地平台软件版本低于业务软件适用的平台版本,则认为业务软件无法运行在本地平台软件上,进入步骤S428,否则本地平台软件版本高于或者等于业务软件适用的平台版本,则认为业务软件能运行在本地平台版本上,进入步骤S430。
步骤S428:提示用户本地平台软件版本过低,用户需要安装高版本的平台软件,错误返回。
步骤S430:判断本地是否已安装了当前安装业务软件的更高版本,步骤S418中已读取到了目前的业务软件安装信息,可以查看是否已安装了相同的业务软件,若安装了相同的业务软件再进行版本号的比较,如果本地已安装了相同的业务软件并且本地版本高于当前安装的业务软件版本,进入步骤S432;否则如果本地未安装该业务软件,或者本地安装的业务软件和当前业务软件版本相同或者低于该业务软件版本,进入步骤S436;
步骤S432:询问用户是否继续安装当前的低版本业务软件,如果用户选择“是”,进入步骤S434,选择“否”则退出业务软件的安装。
步骤S434:将本次要安装的业务软件以及与该业务软件冲突的业务软件(即本地已安装的比该业务软件版本高的业务软件)记录在业务软件卸载配置文件中,便于下次卸载时智能识别,退出本次安装。
步骤S436:本地不存在当前安装业务软件的更高版本,则继续判断本地安装目录下是否存在该业务软件包含的文件的更高版本,例如本地安装的别的业务软件中含有X文件,而当前安装的业务软件中也含有X文件,并且本地的X文件版本要比当前安装的X文件版本高。如果不存在,则进入步骤S438,否则进入步骤S442。
步骤S438:安装业务软件,从业务软件中的配置文件后面开始读取第一个文件信息,文件信息中记录了对应文件的名称、相对路径、文件大小和版本号,从第一个文件信息后面位置读取对应文件长度大小的文件即为第一个文件,将其释放到相应的目录下(由步骤S402获取到的平台软件安装路径和此处的文件信息中记录的相对路径来计算该文件的释放目录)。紧接着从第一个文件的尾部开始读第二个文件信息……依次类推,读取所有的文件,将其释放到对应的目录下。这里通过计数累计,当读取的文件个数与尾部文件结构体信息中记录的文件个数相同时,说明文件读取释放完毕,转步骤S440。
步骤S440:将安装的业务软件相关信息写入业务软件安装配置文件中,包含业务软件名称、版本号、业务软件包含的各个文件以及各文件相对于平台主程序的相对路径。为防止该安装配置文件被随意篡改,对该配置文件进行相关加密操作。至此,业务软件安装成功,结束。
步骤S442:询问用户是否卸载所有含有该高版本文件的业务软件,例如本地存在与当前业务软件相同的文件X,且本地的X版本比较高,询问用户是否删除所有包含X的业务软件。如果“是”则进入步骤S446,“否”则进入步骤S444。
步骤S444:安装业务软件,基本处理过程同步骤S438差不多,区别在于释放文件的时候判断如果本地存在比该文件版本更高的同名文件,则跳过该文件不释放,接着读取下一个文件。安装完成后转步骤S440。
步骤S446:将本次安装的业务软件以及与该业务软件相冲突的业务软件(即所有包含与该业务软件相同的高版本文件的业务软件)写入记录在业务软件卸载配置文件中,便于下次卸载时智能识别,退出本次安装。
需要说明的是,业务软件卸载配置文件中仅记录最近一次安装失败的业务软件和与其冲突的业务软件,即每次写入新的记录时都会清空上次的记录,以防止连续安装多个软件记录多条记录导致逻辑混乱的现象发生,所以每次卸载时仅仅能智能识别其上次安装失败的业务软件。
对应的卸载方法如图5所示,该卸载方法主要包括:
步骤S502:从平台安装目录下加载业务软件安装配置文件,读取并解析当前已安装的业务软件信息,包含业务软件名称、版本号、业务软件包含的所有文件、对应的版本号以及文件的相对路径。
步骤S504:判断本次卸载是否是为了安装某个业务软件。通过加载业务软件的卸载配置文件,读取并解析相关信息,查看该文件中是否记录了上次安装失败的业务软件A。如果是,则说明上次业务软件A由于有版本冲突而未安装成功,读取到与业务软件A冲突的所有业务软件,转步骤S506;否则,如果该卸载配置文件中内容为空,则说明上次未出现某个业务软件安装失败的情况,转步骤S510。
步骤S506:提示信息与用户确认本次卸载是否是为了安装业务软件A?如果用户选择“是”,转步骤S508,选择“否”则转步骤S510。
步骤S508:将与业务软件A冲突的所有业务软件全部显示出来,默认全部选择,待用户进一步选择确定,转步骤S512。
步骤S510:显示目前已安装的所有业务软件,待用户从中选择需要卸载的业务软件,转步骤S512。
步骤S512:若用户选择了需要卸载的业务软件并确定则转步骤S514,否则如果用户取消则转步骤S516。
步骤S514:逐个卸载用户选择卸载的软件,在卸载每个业务软件的时候,逐个判断该业务软件包含的文件是否在其它已安装的业务软件中也存在,若存在则不删除该文件,否则去相应目录下删除对应的文件。每卸载完一个业务软件后,更新一次业务软件安装配置表,删除已卸载软件对应的记录,同时更新当前业务软件信息。
步骤S516:退出本次卸载。
图6是根据本发明实施例的软件安装包的生成装置的结构示意图。如图6所示,根据本发明实施例的软件安装包的生成装置包括:
获取模块62,用于获取业务软件的版本信息、待打包文件及待打包文件信息,根据业务软件的版本信息及待打包文件生成配置文件并记录该配置文件对应的信息。
创建模块64,用于创建软件安装包,在软件安装包的头部写入安装单元。
写入模块66,用于在软件安装包的安装单元后依次写入配置文件对应的信息、配置文件、待打包文件信息、待打包文件、尾部结构体信息。
上述装置生成的软件安装包具有特殊的结构,在打包的时候将包含安装的相关复杂逻辑判断安装单元打包到文件的头部来让程序自动处理,并相应的在软件安装包后续部分写入相应的信息。在安装该软件安装包时,整个安装过程可以由该安装单元自动进行处理,保证了所有安装的业务软件的正常使用,既能满足平台软件与业务软件的匹配,又可确保所有安装业务软件的兼容性以及业务软件各版本之间切换的灵活性。
优选地,上述业务软件的版本信息可以进一步包括业务软件对应的以下信息至少之一:手机制式、平台、业务类型、业务软件版本号、平台版本号;待打包文件信息可以进一步包括以下至少之一:当前文件路径、文件名称、文件大小、安装后的平台主程序路径、文件版本号;配置文件信息可以进一步包括以下至少之一:配置文件大小、配置文件名称、配置文件所在的路径;尾部结构体信息可以进一步包括以下至少之一:安装单元的文件大小、待打包文件的总个数、定位尾部结构体的常量信息。
上述信息即安装单元在安装软件安装包时需要的信息,跟以根据实际情况选取其中的一个或多个,也可以添加更多的信息。
优选地,上述安装单元可以进一步包括(下述子单元附图中未示出):
第一安装子单元,用于从注册表中读取平台软件的安装信息;
第二安装子单元,用于读取配置文件对应的信息及配置文件;
第三安装子单元,用于判断当前安装的业务软件是否能够在本地平台软件上运行,如果否,则提示用户本地平台软件版本过低,需要安装高版本的平台软件,退出安装;
第四安装子单元,用于在当前安装的业务软件能够在本地的平台软件上运行时,判断本地是否已安装了当前安装业务软件的更高版本,如果是,则提示是否需要安装比当前版本低的业务软件,如果需要,则将本次要安装的业务软件以及与该业务软件冲突的业务软件记录在业务软件卸载配置文件中,如果不需要,则退出安装;
第五安装子单元,用于在本地没有比当前安装的业务软件的更高版本的业务软件时,判断本地安装目录下是否存在该业务软件包含的文件的更高版本文件,如果否,则安装该业务软件并将该业务软件对应的信息写入业务软件安装配置文件中;
第六安装子单元,用于在本地安装目录下存在该业务软件包含的文件的更高版本文件时,提示用户是否卸载所有含有该高版本文件的业务软件,如果是,则将本次安装的业务软件以及与该业务软件相冲突的业务软件写入业务软件卸载配置文件中,如果否,则安装该业务软件并将该业务软件对应的信息写入业务软件安装配置文件中。
优选地,上述安装单元还可以进一步包括(下述子单元附图中未示出):
第七安装子单元,用于读取当前运行的业务软件的尾部结构体信息;
第八安装子单元,用于判断该尾部结构体信息是否完整正确,如果否,则提示文件格式不正确,结束安装。
优选地,上述安装单元还可以进一步包括(下述子单元附图中未示出):
第九安装子单元,用于将读取到的业务软件的版本信息按照预定的业务软件命名规则生成业务软件名,与目前正在安装的业务软件名进行比较,如果不一致,则提示当前使用的业务软件版本信息有误,退出安装;
第十安装子单元,用于读取目前已安装的业务软件信息并显示给用户以确认是否安装,如果否,则退出安装;
第十一安装子单元,用于判断本地平台软件是否正在运行,如果是,则提示关闭平台软件,并循环判断平台软件是否正在运行。
在具体实施过程中,安装单元即可通过上述子单元完成软件安装包的整个安装过程。
图7是根据本发明实施例的软件安装包的卸载装置的结构示意图。如图7所示,根据本发明实施例的软件安装包的卸载装置包括:
读取模块702,用于读取业务软件安装配置文件,获取当前已安装的业务软件信息;
第一判断模块704,用于判断本次卸载安装是否是为了安装某个业务软件;
第一判断模块706,用于再次提示用户确认本次卸载是否是为了安装新的业务软件;
第一卸载模块708,用于显示目前已安装的所有业务软件,以使用户从所有业务软件中选择需要卸载的业务软件,响应于用户选择需要卸载的业务软件的操作,逐个卸载选择的业务软件,如果用户选择了取消则退出卸载;
第二卸载模块710,用于显示该新的业务软件冲突的所有业务软件,以使用户从与该新的业务软件冲突的所有业务软件中选择需要卸载的业务软件,响应于用户选择需要卸载的业务软件的操作,逐个卸载选择的业务软件,如果用户选择了取消则退出卸载。
卸载装置相对比较独立,用户启用该装置即可独立运行,为了方便管理,该装置最好统一在平台软件中一起打包发布。
在具体实施过程中,上述的本发明的各模块、单元、子单元可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们也可以用计算装置可执行的程序代码来实现,因此上述模块、单元、子单元的划分只是一种优选的例子。
从整体上来说,上述软件安装包的生成装置,主要是用于:(A)收集打包业务软件版本信息和待打包的文件信息,其中业务软件版本信息包含该业务软件的业务名称和版本号以及该业务软件适用的平台版本,待打包文件信息包含文件的名称及相对路径;(B)根据收集信息生成对应的配置文件,记录对应配置文件路径和名称;(C)创建打包软件,头部写入安装单元程序,后面依次写入配置文件和待打包的各个文件,其中配置文件和待打包的各文件都是先写入文件信息后写入文件内容,打包软件尾部写入标志结构体信息,记录相关文件大小和个数,并用于标志该文件已完整打包。
安装单元即为打包软件头部写入的安装程序,主要是用于:(A)从注册表中读取平台软件的安装信息,获取平台软件的安装路径;(B)读取打包软件尾部结构体信息,判断打包软件的完整性;(C)读取配置文件,判断打包软件版本信息的正确性;(D)从业务软件安装配置文件中读取本地已安装的业务软件信息;(E)判断平台软件是否正在运行,若平台软件正在运行中,提示用户关闭平台软件,在确认平台软件未运行后与用户确认业务软件安装信息;(F)在用户确认信息并启动安装后,判定当前的平台软件版本是否满足业务软件需求,若平台软件版本低于业务软件需求,则提示用户安装高版本平台软件;(G)判断要安装的业务软件在本地是否已有更高版本,若已安装了更高版本的业务软件,如果用户需要回退到低版本,则将本次安装的业务软件以及与之冲突的本地存在的高版本软件记录在卸载配置文件中,供用户后续卸载时程序的智能判断,并且提示用户先卸载对应高版本软件,如果用户不需回退低版本,则停止软件的安装;(H)判断要安装的业务软件包含的各文件在本地是否存在更高版本,若不存在则可直接安装,否则的话需要用户确认是否需要卸载含有高版本文件的各业务软件,如果需要卸载,则将本次要安装的业务软件及与之冲突的所有业务软件记录在卸载配置文件,如果不需要卸载,则安装业务软件的时候当遇到本地版本比业务软件中文件版本高时,对应文件跳过去不释放。(I)当安装完所有的业务软件,将文件都释放到对应目录下后,在安装配置文件中记录下本次安装的业务软件名称、版本号、该业务软件包含的所有文件及其对应的路径。
上述卸载装置用于实现业务软件的智能灵活卸载,主要是用于:(A)读取业务软件安装配置文件,获取当前已安装的业务软件信息;(B)读取业务软件卸载配置文件,判断本次卸载安装是否是为了安装某个业务软件,如果是则显示所有与该业务软件冲突的业务软件,供用户选择确认,如果本次卸载不是为了安装某业务软件,则显示本地已安装的所有业务软件供用户选择确认要卸载的软件;(C)根据用户选择要卸载的业务软件逐个进行卸载,卸载每个业务软件的时候,逐个判断该业务软件包含的文件是否在本地已安装的其它业务软件中也存在,若存在则不删除该文件,否则去相应目录下删除对应的文件。卸载完成后更新业务软件安装配置文件和卸载配置文件。
从以上的描述中,可以看出,相较于现有技术,本发明提供的方法及装置可以使业务软件自动安装在平台软件所在目录下,无需用户选择设置,且能保证所有安装的业务软件的正常使用,既能满足平台软件与业务软件的匹配,又可确保所有安装业务软件的兼容性以及业务软件各版本之间切换的灵活性,并且可以实现各业务软件的智能卸载,确保各业务软件的卸载不会影响其它业务软件的正常使用。
综上所述,本发明主要针对基于插件技术二次开发的业务软件安装的特殊需求,将其所有安装逻辑判断及处理放入安装单元程序中,并将安装单元程序打包在文件的头部,而将其它打包需要的文件附加其后,从而在启动业务软件后自动启动安装单元程序,让软件按自动按用户需求进行安装。对于多个业务软件的安装、卸载的智能处理则是通过配置文件记录的方法来解决,为了防止配置文件被恶意更改,对配置文件进行了相应的加密处理。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。