VC++NET编程讲座之七.doc_第1页
VC++NET编程讲座之七.doc_第2页
VC++NET编程讲座之七.doc_第3页
VC++NET编程讲座之七.doc_第4页
VC++NET编程讲座之七.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VC+.NET编程讲座之七程序的安装和部署摘要本文先来介绍安装和部署前的准备,然后用向导创建一个安装和部署项目,并修改项目的属性,最后讨论如何使用自己的标题图像、添加序列号对话框及生成程序菜单项和桌面图标。安装和部署前的准备一旦应用程序项目开发好了之后,就要创建一个安装程序供用户进行安装。早期的安装程序大多数是使用InstallShield来制作的,InstallShield一个最大的特点是可以使用其内嵌的脚本语言InstallScript来定制自己的安装过程和安装界面。不过,现在我们还有一个更简便的选择,那就是使用Visual Studio .NET来创建程序安装和部署项目。在将程序发布之前,我们需要将应用程序项目生成进行重新配置,即将原来默认的Debug(调试)版本变成了Release(发布)版本。具体步骤如下:(1) 启动Visual Studio .NET,打开上一讲的单文档应用程序项目Viewer。(2) 打开生成菜单,单击配置管理器,弹出对话框。(3) 在活动的解决方案配置中选择Release,结果如图1所示。图1 配置管理器对话框(4) 单击关闭按钮。打开生成菜单,单击生成解决方案。生成完后,关闭该解决方案。需要说明的是,在用MFC应用程序向导创建的项目中,可以有Win32 Debug和Win32 Release两个版本。这两个版本的区别是:Debug版本的运行程序有相应的调试信息代码,而Release版本的运行程序则没有,但Release版本的运行程序经过代码的优化,其程序的运行速度被最大加速。因此一般来说,当用户在将开发的应用程序发布给用户之前,应将项目调试后将其编译成Win32 Release版本。编译和生成后的有关文件被放置在项目名文件夹下的Release子文件夹中。对于Debug版本,其编译和生成后的有关文件被放置在Debug子文件夹中。Visual Studio.NET不仅提供了创建基于Windows 或基于Web的应用程序和组件的安装程序的工具,也提供了创建用于下载的.Cab 文件的工具。与InstallShield不同的是,Visual Studio.NET使用Microsoft Windows Installer来提供程序安装和配置的功能。Visual Studio.NET为用户安装和部署项目提供四种类型的模板:合并模块项目、安装项目、Web 安装项目和 Cab 项目。此外还提供了两个安装程序向导,可帮助我们完成创建部署项目的过程。下面我们使用安装向导来创建一个安装项目。(1) 打开文件菜单,选择新建-项目,弹出新建项目对话框。(2) 单击左侧的项目类型安装和部署项目,选择右侧的安装向导模板,输入项目名称ViewerSetup,指定一个项目位置,如图2所示。图2 新建项目对话框 (3) 单击确定按钮,出现如图3所示的对话框。图3 向导第1步对话框(4) 单击下一步按钮,出现如图4所示的对话框。这里,可以选择安装项目类型以及重新发布的打包类型。图4 向导第2步对话框(5) 保留默认的选项,单击下一步按钮,出现向导第3步对话框。单击添加按钮,在弹出的添加文件对话框中,将前面的Viewer应用程序可执行文件添加进来,结果如图5所示。图5 向导第3步对话框(6) 单击下一步按钮,出现如图6所示的对话框,显示出我们在前面几个步骤中作出的选择内容。图6 向导第4步对话框(7) 单击完成按钮,系统开始创建。需要说明的是,单击上一步按钮可对前面的操作进行修改。(8) 打开项目,选择添加-合并模块,选定用于MFC应用程序本地化支持的两个模块,一个是MFC_Loc_FE.msm(东南亚地方)和VC_MFC.msm(MFC的支持),单击打开按钮。生成和测试(1) 打开生成菜单,单击生成解决方案,系统就会在指定项目位置下的ViewerSetupDebug中为该安装项目生成一个ViewerSetup.msi安装文件。(2) 在解决方案资源管理器中,右击顶层节点ViewerSetup,从弹出的快捷菜单中单击安装,启动Windows Installer,进行应用程序的安装过程。开始出现的是安装欢迎对话框,如图7所示。图7 欢迎对话框(3) 单击下一步按钮,进入选择安装文件夹对话框,如图8所示。图8 选择安装文件夹对话框(4) 单击下一步按钮,进入确认安装对话框,如图9所示。图9 确认安装对话框(5) 单击下一步按钮,系统开始安装,并显示安装进度,最后显示安装完成对话框,如图10所示。图10 安装完成对话框(6) 单击关闭按钮,退出安装。这就是ViewerSetup默认的安装过程。修改项目属性(1) 在解决方案资源管理器中,单击顶层目录的ViewerSetup。在属性窗口中出现如图11所示的属性。图11 项目属性具体属性含义可参见MSDN中的说明,需要注意的是:1、为保证UpgradeCode、PackageCode和ProductCode三种属性值的唯一性,最好保留其默认值。2、在Windows资源管理器中选定某安装程序文件(.msi),右击鼠标,从弹出的快捷菜单中选择属性命令,则Author、Description、Keywords和Subject等属性显示在其属性对话框的摘要标签页上。而在应用程序安装后,属性Author、Description、Manufacturer、ManufacturerUrl、SupportPhone和SupportUrl显示在支持信息对话框中,如图12所示,该内容可从系统的添加/删除程序对话框中相应程序的查看支持信息得到。图12 支持信息对话框(2) 在属性窗口中,将Author属性内容改为丁有和。Author用来指定应用程序或组件的作者名或联系人。(3) 将Manufacturer属性内容改为计算机编程维护与技巧杂志社。Manufacturer用来指定应用程序或组件的开发公司或发行商。(4) 将ManufacturerUrl属性内容改为,ManufacturerUrl用来指定Manufacturer的网址。(5) 将ProductName属性内容改为 文本浏览器 (注意文本前后要留有空格)。ProductName用来指定在目标计算机上安装应用程序或组件时用于描述该应用程序或组件的公共名称。默认为部署项目的名称。(6) 将Subject属性内容设为文本浏览器。Subject用来指定在目标计算机上安装应用程序或组件时用于描述该应用程序或组件的其他信息。(7) 将Title属性内容改为文本浏览器。Title用来指定安装程序的标题。默认情况下,Title属性与部署项目的名称相同。(8) 右击解决方案管理器顶层目录ViewerSetup,从弹出的快捷菜单中选择重命名,键入文本浏览器安装后按Enter键。(9) 打开生成菜单,单击重新生成解决方案。(10) 打开项目菜单,单击安装,看看出现的界面的变化。使用自己的标题图像标题图像是用来显示在安装对话框中的位于标题栏下方的图像,它是宽度为 500 像素、高度为 70 像素的位图。下面就来改变对话框中的安装标题图像。(1) 打开Windows中的画图工具,并将其图像大小设置为500 x 70。(2) 在最右侧添加一个用于产品标识的图像(自己构造),结果如图13所示,将该位图保存到Banner.bmp文件中。图13 制作标题位图(3) 在Visual Studio .NET中,打开项目菜单,选择添加-文件,将刚才创建的Banner.bmp文件添加当前安装项目中。(4) 打开视图菜单,选择编辑器-用户界面,在窗口中显示出用户界面编辑器,如图14所示。图14 用户界面编辑器在用户界面编辑器中,安装过程中所出现的对话框均在这里以树视图形式显示出来。用户界面分为一般安装和管理员安装两大类。一般安装用于最终用户运行安装程序时将显示的对话框,管理员安装部分用于系统管理员将安装程序上载到网络位置时将显示的对话框。(5) 单击欢迎使用,将在属性窗口中出现这个对话框的属性,其中BannerBitmap属性用来指定对话框的标题图像的。(6) 在属性窗口中,单击BannerBitmap属性栏右侧的下拉按钮,从弹出的列表中选择(浏览),出现如图15所示的对话框。图15 选择项目中的项对话框(7) 双击应用程序文件夹,出现前面添加的标题图像文件Banner.bmp,选中它,单击确定按钮。这样,该对话框的标题图像就设置好了。类似的,还可以为其他所有的对话框进行设置。(8) 重新生成并安装,结果出现的欢迎使用对话框如图16所示。图16 定制后的欢迎使用对话框添加序列号验证对话框程序安装时往往需要序列号为限制非法安装,下面就来实现。(1) 在用户界面编辑器中,右击安装下的启动节点,从弹出的快捷菜单中选择添加对话框,出现如图17所示的对话框。图17 添加对话框(2) 由于序列号是产品的一种客户信息,因此我们单击客户信息,然后单击确定按钮。(3) 在用户界面编辑器中,将客户信息节点拖放到欢迎使用与安装文件夹之间。(4) 在客户信息属性窗口中,将BannerBitmap属性修改为Banner.bmp。(5) 将SerialNumberTemplate属性修改成。SerialNumberTemplate属性决定文本框在对话框中的显示方式,并确定是仅对序列号的格式进行验证,还是按照 Windows 安装程序算法对序列号进行验证。SerialNumberTemplate属性的有效可编辑字符可以是#?%,其中#表示要求输入一个数字,该数字将不包括在验证算法中。%表示要求输入一个数字,该数字将包括在验证算法中。?表示要求输入一个字母数字字符,该字符将不包括在验证算法中。表示要求输入一个大写字母或一个数字。表示该字符左边或右边的所有字符在对话框中都不可见。 (6) 将ShowSerialNumber属性设置为True,结果如图18所示。图18 修改的客户信息属性(7) 这样,重新生成安装后,出现如图19所示的客户信息对话框。图19 客户信息对话框需要说明的是,若自己验证序列号,也就是说序列号等于某个字符串,则需要进行自定义操作。由于自定义操作需要更多的底层代码,因此这里不作讨论。生成程序菜单项和桌面图标在Windows中运行程序的最常用快捷方式是在程序中创建菜单项或在桌面中创建快捷图标。下面就来创建。1. 生成程序菜单项(1) 在文件系统编辑器中,右击用户的程序菜单,弹出快捷菜单,将鼠标指针指向菜单中的添加,弹出子菜单,单击子菜单中的文件夹。将该文件夹名称改为文本浏览器。(2) 单击文本浏览器,在右侧列表视图窗口处右击鼠标,弹出快捷菜单,单击创建新的快捷方式。弹出如前面的图15所示的选择项目中的项对话框。(3) 在对话框中,双击应用程序文件夹,然后单击Viewer.exe,单击确定按钮。(4) 单击创建的快捷方式Viewer.exe 的快捷方式,在属性窗口中将Name属性改成运行 文本浏览器。(5) 在属性窗口中,单击Icon属性右则的下拉按钮,从中选择(浏览),在弹出的图标对话框中,单击浏览按钮,在选择项目中的项对话框中,选中应用程序文件夹后,单击右侧的添加文件,将Viewer项目文件夹中的Viewer.ico文件添加。(6) 单击Viewer.ico,再单击确定按钮。此时图标对话框如图20所示。图20 图标对话框 (7) 单击当前图标中的图标,然后单击确定按钮,这里属性窗口中的属性变成如图21所示的内容。图21 修改后的程序快捷方式属性需要说明的是:Arguments属性用来为所选的自定义操作指定命令行参数。仅适用于.exe自定义操作。ShowCmd属性用来为通过快捷方式启动的应用程序指定窗口状态(正常vsdscNormal、最小化vsdscMinimized或最大化vsdscMaximized)。Target属性用来指定目标计算机上由快捷方式启动的应用程序的路径和文件名。Transitive属性用来确定在目标计算机上安装或重新安装应用程序或组件时,安装程序是否重新计算选定的文件夹、文件、注册表键或注册表值的Condition属性。此属性是一项高级功能,应谨慎使用,一般使用其默认值False。WorkingFolder属性用来指定文件夹的名称,在目标计算机上的该文件夹中安装选定快捷方式的目标应用程序。(8) 在左侧单击文本浏览器,将其AlwaysCreate属性设为True。(9) 重新生成安装后,在开始菜单中的所有程序中中出现如图22所示的程序菜单。图22 安装后的程序菜单项2. 创建桌面图标(1) 在文件系统编辑器中,单击用户桌面,将其AlwaysCreate属性设为True。(2) 在编辑器的右侧窗口处,右击鼠标,从弹出快捷菜单中选择创建新的快捷方式。弹出如前面的图15所示的选择项目中的项对话框。(3) 在对话框中,双击应用程序文件夹,然后单击Viewer.exe,单击确

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论