在应用程序部署过程中,有时候为了确保软件能够正常运行,往往会对操作系统的相关组件进行检测。当发现操作系统某些组件不满足系统的安装要求时,会提醒用户并结束当前的安装进程(或者由用户决定是继续还是结束)。如在安装“税企通”(一个税务局提供的网上发票认证系统)的过程中,就要求浏览器必须是IE6.0以上的版本。否则的话,某些功能的使用就会出现问题。如Oracle数据库安装过程中,会检测是否有固定的IP地址等等。
在应用程序部署过程中,这是一项非常必要的检测工作。因为这项措施可以提高应用程序的兼容性,让用户感受最新的体验。那么在VisualStudio平台中如何实现这个需求呢?且听笔者慢慢道来。
一、对引导程序的初步认识。
在VisualStudio平台中,主要是通过一个叫做“引导程序”的组件来完成这项检测工作的。引导程序通过一组简单的XML清单来进行编程。这个清单指定引导程序管理组件安装所需要的所有元数据。
如在应用程序安装过程中(点Setup启动安装进程),安装进程就会检测操作系统是否已经满足了系统要求的条件。如果检测发现缺少某个或者某些必备的要件(如浏览器版本过低),则引导程序就会显示一个安装对话框,详细列出(具体详细的程度需要根据开发人员的定义来看)缺少的组件并显示其许可协议。当检测到必备要求没有全部满足时,用户有两个选择。一是放弃当前的进程,二是继续当前的安装进程。在设置时,开发人员可以让用户只能够选一(即放弃当前安装进程)或者二选一。如果所有的必备要件都满足的话,那么引导程序就会正常启动安装进程。
二、安装程序包中是否要包含必备组建的原文件?
当应用程序检测到某些要件不具备时,用户可能需要安装某个组件。此时用户又有两个选择。一是暂时结束当前的安装进程,然后下载这个组件的源文件并进行安装。二是通过引导程序的界面,直接安装必须具备的组件。这个方式显然更便于用户的操作。但是其也有一个前提条件,即组建的源程序必须包含在安装程序包中,或者要提供一个源程序所在的路径。
特别是在团队项目中,最后打包的负责人一定要向相关的控件提供者是否可以在应用程序中附带可再发行的文件。一般情况下,如果简单的负责操作就可以重新发布系统比别的组件并且这个组建本身的体积也不是很大的情况下,则可以将这个文件包包含在安装程序中,以便于用户的操作。相反,如果这个组件的安装还依赖于其他组件或者组件本身的大小比应用程序还大,那么最好还是采用独立的程序包为好。
三、清单文件的管理与创建。
在引导程序检测系统所必备的要件过程中,清单文件是核心。说的白一点,就是引导程序将清单文件中的内容与操作系统现有的状况进行对比,最后列出不满足的情况。可见,清单文件对于这个检测作业的重要性。
在VisualStudio平台中,对清单文件的创建做的并不完善。因为没有提供一个现成的向导来创建清单文件。系统开发人员必须手动创建清单文件。而且这个清单文件必须满足一定的规则,也就是说,必须遵循Windows软件开发工具包中的程序架构元素描述的特定架构。为了减少工作量,提供清单文件的准确性,笔者建议开发人员可以先参考其他开发人员的模板,然后建立一个适合自己的样板并保存。以后需要用到清单文件的时候,只需要在这个基础上进行稍微的调整即可(架构不需要调整,只需要更改相关的内容即可)。不过值得安慰的是,在VisualStudio集成的安装程序器会在生成程序包的时候验证这个清单文件的准确性。防止错误的程序清单导致应用程序无法正常使用。
四、确定哪些是操作系统必备的组件。
在引导程序中添加检测作业,最关键的步骤就是确定哪些内容是必备要件。如果多了一项,那么是画蛇添足,给用户带来额外的麻烦。如果少了一项,那无疑会影响系统后续的运作。故要确定哪些是操作系统必备的组件,可能有一定的难度。在实际工作中,有时候可能需要几个版本后才能够最终确定一个可用的版本。而且还需要随着后续应用软件的升级而不断的调整。
- 相关阅读:
- ·企业部署正确BYOD才能减负 否则将背道而驰
//cio.zol.com.cn/446/4464535.html - ·企业部署底层架构 如何选择开源Linux
//cio.zol.com.cn/441/4411040.html - ·Windows服务器安全部署的五大策略
//cio.zol.com.cn/440/4404734.html - ·企业移动信息化如何闯过开发部署关
//cio.zol.com.cn/433/4336104.html - ·企业成功部署移动BI需要考虑哪些因素?
//cio.zol.com.cn/432/4329346.html