installshield学习笔记----编译调试构建

上传人:沈*** 文档编号:107900793 上传时间:2022-06-15 格式:DOC 页数:46 大小:706KB
返回 下载 相关 举报
installshield学习笔记----编译调试构建_第1页
第1页 / 共46页
installshield学习笔记----编译调试构建_第2页
第2页 / 共46页
installshield学习笔记----编译调试构建_第3页
第3页 / 共46页
亲,该文档总共46页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateInstallShield2010学习笔记-编译调试构建qweInstallShield学习笔记调试项目 Revision HistoryDATEREVISIONAUTHORDESCRIPTIONTable of Contents1前言12编译(COMPILE)22.1编译选项设置22.2编译功能导航32.3编译信息输出33调试(DEBUG)43.1调试选项设置43.2调试功能导航53.3调试功能介绍63.4调试信息输出73.5在客户终端机上调试74构建(BUILD)84.1构建单个EXE文件84.2批处理构建85版本(RELEASE)95.1版本向导(Release Wizard)91 前言本文档是笔者在学习InstallShield IDE的过程中,查阅InstallShield 2009 IDE的联机帮助,结合个人学习心得体会,写出的学习笔记。鉴于篇幅有限,本文仅就InstallShield IDE提供的编译,调试,和构建功能作了一些基本介绍,仅供新手入门作参考之用。若读者有意深入研究高级进阶内容,请参考InstallScript IDE(集成开发环境)自带的联机帮助,或者在网上搜寻参考资料 ( 附:InstallShield社区论坛:, 2 编译(Compile)2.1 编译选项设置用户可以先在InstallShield IDE中定义编译相关设置,请注意这些设置仅对当前被打开的项目有效。用户从Build菜单列表中选择Settings菜单项,然后在弹出的对话框里打开Compile/Link 标签页,如下图所示:对于上面对话框中各设置项的作用,下表作了详细说明:属性名属性值(例子)使用说明Preprocessor DefinesUSAGE = “Internal”设置预处理常量。此例中定义了名为USAGE的常量,可以在编译时直接被脚本文件使用。比如在主脚本中可以这样用:#ifdef USAGE / 执行一些代码#endifInclude PathesScript,C:IS_ProjectsAAScript Files指定上面的预定义值的使用范围,在这里指定的路径下面的所有script文件,都可以引用该值(注:多路径用逗号隔开,允许嵌入路径相关的变量)Maximum Warnings50指定最多显示的警告(warning)的条数,此例中设为50条Warning Level选择以下列表项目之一:None,Level 1,Level 2,或Level 3 (默认)None - 不显示警告消息。Level 1 显示InstallShield不能处理的任何系统警告。Level 2 显示Level 1消息,如果字符串长度超过限制则追加另一条消息。Level 3 (默认) 显示所有警告消息Maximum Errors50指定最多显示的错误(error)的条数,此例中设为50条Compile before build选中,或不选中该复选框若选中,在build release之前会自动编译脚本Warnings as errors选中,或不选中该复选框若选中,会把警告(warning)当成错误(error)来处理。那么当script编译时有警告时,InstallShield不会继续执行下去Generate inline debugging information选中,或不选中该复选框若选中,安装脚本中创建的对象的调试信息将在编译时被打包进安装程序中(一般仅用于开发阶段)Libraries(.obl)后缀为.obj文件的路径指定编译时需要链接的对象库文件(*.obl)的完整路径(允许嵌入路径相关的变量),若有多个路径则用逗号隔开2.2 编译功能导航当开发者改动了项目的setup script后,可以先编译此项目,以及早发现脚本语法错误及其它的配置问题。在项目已经打开的情况下,开发者可以从Build菜单列表中选择Compile菜单,或者在工具条上点击Compile按钮,从而启动编译当前项目。如下图所示: 2.3 编译信息输出当编译完成后,InstallShield IDE下面的输出窗口(Output Window)中的Compile标签页会打开,显示编译输出的文本信息(成功或者失败),如下图所示的Compile窗口输出:当本次编译失败时,毗邻的Tasks标签页会列出出错的代码行号和源头。当用户可以双击其中某一行时,脚本编辑窗口(Script Editor)自动跳转定位到脚本中的该行,如下图所示的Tasks窗口输出:3 调试(Debug)3.1 调试选项设置用户可以先在InstallShield IDE中定义调试相关设置,请注意这些设置仅对当前被打开的项目有效。用户从Build菜单列表中选择Settings菜单项,然后在弹出的对话框里打开Run/Debug标签页,如下图所示:下表详细说明了该对话框中各设置项的作用:属性名属性值(例子)使用说明Setup Command Line Arguments其值可以是任何一个字符串。比如此例中输入的是自定义的一串选项值这里输入的字符串会保存在系统变量CMDLINE中,通过InstallShield运行的安装可以直接调用其值。开发者一般用它来定义一些开关类选项,控制setup script的行为。Generate MIF File选中,或不选中该复选框若选中,通过InstallShield运行安装时,会生成一个管理信息格式(.mif)的文件。(注:当此复选框选中时,后面两个文本框会被激活)MIF FilenameMIF文件的文件名这里输入的文件名(.mif)会在InstallShiled运行安装的时候产生。若留为空,默认文件名为Setup.mifProduct Serial Number产品序列号这里输入的序列号会写入上面生成的.mif文件中3.2 调试功能导航InstallShield IDE提供了一个代码级别的调试器,可以供开发者深入脚本代码内部,去定位错误或者输出调试信息。开发者可以从Build菜单列表选择Debug菜单,或者按下键盘上的F5按键,从而启动脚本调试器。 3.3 调试功能介绍当开发者点击了Debug菜单或者按钮后(见3.1 调试功能导航所示图片),InstallShield IDE首先会build出安装程序,然后弹出调试器窗口供开发者使用,其界面如下:调试器窗口工具栏上有一些用于调试的功能按钮(在Debug菜单列表中也可以找到对应的菜单项)。各功能按钮的用途详见下表:按钮图标按钮名称按钮功能Open点击按钮,选择并打开本地磁盘文件,浏览其内容Toggle Breakpoint点击按钮,在光标所在行添加断点;若该行已有断点,点击此按钮将取消它Go点击按钮,调试器会运行脚本代码到下一断点处停止Break点击按钮取消正在运行的调试。此按钮跟上一按钮是互斥操作。Step Into点击按钮执行下一行语句。如果该行调用了用户自义函数,调试器也会步入该函数体逐步执行Step Over点击按钮执行下一行语句。如果该行调用了用户自义函数,调试器不会步入该函数体,而是在该函数被调用完之后的一行继续执行Step Out点击按钮从当前被调用的函数体中内部跳出。比如开发者先使用Step Into按钮 步入了一个函数体内部,然后可以点击此Step Out按钮从该函数体内部跳出到外面调用行,继续执行Show Next Statement点击按钮显示当前脚本中下一处声明(我们在Degger窗口中滚屏浏览代码后,可点击此按钮快速定位到当前脚本的执行处)3.4 调试信息输出调试器窗口下部有两个窗口,在脚本被执行期间,它们会实时显示相关输出信息。l Local窗口实时输出当前被执行函数(自定义)内部的所有局部变量(local variables)的值。该窗口里面的信息只可读,不可修改。见下面左图.l Watch窗口实时输出用户自行添加的监控项(watch)的值,观测项可以是变量名或常量名,用户可以通过右键菜单添加或者在表格中直接输入。见下面右图. 3.5 在客户终端机上调试前面的四小节(3.13.4),我们讨论的是在开发者本机上利用InstallShield IDE的调试方法。在现实情况下,我们编译出来的的安装程序在本机上测试正常,然而发布给客户后,在客户的终端机器上却出现各种问题。因为客户机器上面一般没有安装InstallShield IDE开发环境,我们也不可能用开发者常规的方式来进行调试,这时候我们就要使用下面的步骤进行在客户机器上进行现场调试:1 从开发者本机上InstallShield安装目录System下面,找到名为ISDbg.exe程序,拷贝到将要执行调试的客户机器上面的任一文件夹(注:在该目录下有其帮助文档ISdbg.chm,可以一并拷贝过去,以便客户参考)。2 接着在客户机器上面,打开一个命令行窗口,敲入下面的命令来注册这个exe程序(假设其目录为C:debug):C:debugISDbg.exe REGSERVER3 在开发者本机上编译并构建安装程序(若以前已经构建过,此步可以省略)。4 从开发者本机上找该项目构建出来的文件夹(包括Disk Images子文件夹),拷贝到将要执行调试的客户机器上的任一文件夹。例如,假设开发者本机上该项目的根目录是:C:IS_ProjectsAGIS,那么要拷贝的文件夹是C:IS_ProjectsAGISMediaSINGLE_EXE_IMAGEDisk ImagesDisk1(注:以上路径中最后一层Disk1,在实际情况下可能是Disk2,Disk3等等,请酌情选择。另外,如果开发者机器上的目录可以共享给将要执行调试的客户机器,这一步可以省略)5 在客户机器上,打开一个命令行窗口,使用/d参数调用安装程序(比如Setup.exe),该参数后面紧跟将要生成的log文件的路径,比如下面的命令行例子:C:debugSetup.exe /d”C:debug”此时安装程序界面会照常弹出,供客户操作完成安装。同时InstallShield的Debugger窗口也会显示,并随着客户在安装程序界面上的操作,该窗口会实时显示当前执行的代码,并输出当前的局部变量,当然客户也可以自己添加的监控项(参见3.4 调试信息输出)4 构建(Build)4.1 构建单个EXE文件在项目编译没有错误发生的情况下,我们可以构建出最终的可执行型安装程序(*.exe)。这个操作非常简单,用户可以在Build菜单列表中选择Build 或Refresh Build,然后等待项目编译和构建完毕,在项目的$MediaSINGLE_EXE_IMAGEPackage目录下会看到生成的EXE文件,见下图:(注:Build会执行完整的构建,而Refresh Build只会重建上次build之后被修改的部分)4.2 批处理构建用户也可以使用批构建(Batch Build)方式,一次构建预先定义的各个版本(release)和单个的EXE程序文件。在InstallShield IDE中,打开Build菜单列表,选择Batch Build菜单项,然后会看到如下左图所示的对话框。勾选之后,点击Build按钮,即开始了批构建。完毕后,在项目的Media文件夹下面可以看到各自生成的子文件夹,如下右图所示: 5 版本(Release)在安装程序被发布给测试人员或者最终用户之前,开发者应该创建一个对应的版本(release)。一个版本配置了一些安装相关的信息,也包含了将被发布到软盘,光盘,文件夹,或者其它媒介载体上的文件。创建版本最常见的方式是使用InstallShield IDE自带的版本向导(Release Wizard)。5.1 版本向导(Release Wizard)版本向导(Release Wizard)是InstallShield提供的一个辅助功能,它提供了十五个连续的配置页面,引导用户逐步填入各类配置信息,最后根据收集的配置信息生成该版本所包含的数据文件和执行文件,这些文件可以被直接打包发送给最终用户,或者烧录到光盘等媒介载体作为安装盘。在InstallShield IDE界面上,点击菜单栏上的Build菜单,然后在其展开的列表中点击菜单(或在工具栏上点击按钮), 此时版本向导对话框会弹出。下面我们对它的十五个配置页面逐一说明(注:某些配置页面仅在某些特定类型的安装项目才出现):1 第一个页面,是Welcome页面,请直接点击Next按钮进入下一页面。2 第二个页面,是Specify a Release页面,可以输入一个新release name或者选择现有的某个release。3 第三个页面,是Media Type页面,可以选择CD-ROM, Custom, Network Image等作为此版本发布使用的媒介载体(注:如果选择的类型是Custom,页面下面的Format Size文本框会激活,供用户输入)4 第四个页面,是General Options页面,配置安装程序的一些属性信息。5 第五个页面,是Password页面,允许设置一个密码,在安装程序运行之前会要求用户输入该密码并验证。6 第六个页面,是Platforms页面,选择安装程序支持的所有操作系统平台。(注:如果安装程序中的某个component关联的平台,没有在这个页面选中,那么该component不会被打包到这个release中)7 第七个页面,是Setup Languages页面,选择安装程序支持的所有语言,从而最终用户在运行该安装程序时可以选择以某种语言安装。8 第八个页面,是Features页面,选择需要打包进安装程序的features。9 第九个页面,是Media Layout页面,选择以Cabinet File, CDROM Folder, 或Custom格式来打包features所包含的文件。 (注:若选择Custom,下一页面会是Custom Feature Layout,跟第八个页面类似,此处不表)10 第十个页面,是User Interfaces页面,选择某个皮肤文件(*.skin),应用给安装程序。11 第十一个页面,是Internet Options页面,配置安装程序在被运行时跟internet相关的一些选项。12 第十二个页面,是Digital Signature页面,可以为安装程序添加数字证书。13 第十三个页面,是Update页面,配置以Update模式运行安装时的行为,可以选择全部重新安装,或者只安装此页面中被选择的组件。14 第十四个页面,是Postbuild Options页面,配置当前build完成之后额外执行的一些动作,比如上传拷贝一些文件,执行批处理脚本等。15 第十五个页面,是Summary页面,汇总显示了前面所有页面收集的配置信息。若确认没有问题,可以点击Finish按钮开始创建release (选项Build the Release选择应该被勾选上);若想修改某部分配置,可以点击Back按钮回退到对应页面进行修改。-
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!