VC++ 安装程序制作

VC++ 安装程序制作VC 安装程序制作 2009 10 2510 40 当用 VC 完成应用程序的编制后 如果不为它制作一个安装程序 似乎感到缺少一点什么 你也许急于到市面找制作安装程序的工具 如 CreateInstal iSetup 等 事实上 VC 6 0 的企业版已为我们提供了一套制作安装程序的工具 InstallShiel

VC++ 安装程序制作
2009-10-25 10:40
当用VC++完成应用程序的编制后,如果不为它制作一个安装程序,似乎感到缺少一点什么,

你也许急于到市面找制作安装程序的工具,如”CreateInstall”、” iSetup”等,事实上,VC++6.0
的企业版已为我们提供了一套制作安装程序的工具”InstallShield for Microsoft Visual C++6″,
这是美国著名的”InstallShield”公司捆绑在Visual Studio上的一套安装制作软件。下面我将用一个
实例来详细介绍它的用法,相信会对读者有所帮助。

  一、安装”InstallShield for Microsoft Visual C++6″:

  该程序是在VC++6.0企业版光盘的”Ishield”目录下,在这个目录下运行”Setup”安装该程序。

  二、待安装的部件:

  为了阐述方便,我在这里假定几个需要安装的部件:

  应用程序:Draw.exe所在的目录:c:Draw

  动态链接库:Draw.dll所在的目录:c:Windowssystem

  三、制作安装程序步骤:

  (一)工程向导的使用:

  1、双击InstallShield图标进入程序框架。

  2、程序框架客户区中有一个”Project Wizard”图标,它是工程向导,将会帮助你一步一步建立
安装程序,双击之。

  3、进入Project Wizard-Welcome(欢迎)对话框,分别在相应的编辑框中填写相应的内容,如下所示:

  编辑框名称:(本例程中)填写内容:

  Application(应用程序名):Draw

  Company Name(公司名称):桢菲工作室

  Development(开发平台):Microsoft Visual C++6.0

  Application(应用程序类型):Database Application

  Application Version(版本号):1.0 Application Executable(执行程序名):c:drawdraw.exe

  你可根据自己情况,填写相应信息,填完后,按[下一步]进入Choose Dialog(选择对话框)界面。

  4、在这里面,InstallShield为你提供了许多友好对话界面,你可以选择其中的一部分为工程所
用,并可以通过Preview进行效果预览,本例中选择了如下三组:

  Setup Type(安装类型对话框)

  Choose Destination Location(安装路径选择对话框)

  Setup Complete(安装结束对话框)

  按[下一步]进入Choose Target Platforms(选择目标平台)界面。

  5、在这里,要选择的是你的应用程序发布的操作平台,本例中选择Windows 95,按[下一步]进入
Special Language(语言选择)界面。

  6、遗憾的是该版本的语言只有一种选择,也就是”English”,选中后按[下一步]进入Setup Type
(安装类型)界面。

  7、选择Custom(用户型),按[下一步]进入Special Component “组件定义”界面。

  8、组件是由文件组构成的,在这里选择”Program Files”程序文件组,并在本例中增加一个Mydll组件,
按[下一步],进入File Groups(文件组)界面。

  9、在该界面中选择:

  Program Executable Files执行文件组Program Dlls程序动态链接库组按[下一步],进入Summary
(摘要表)。

  10、摘要表中列出了以上每步的清单,在确认后按[完成],InstallShield向导将自动为你生成安装
程序的所有工程,注意这只是一个空架子,你还要做进一步的工作。

  (二)内容的添加:

  1、打开File Groups(文件组)窗口,可以看到两组组名,分别双击出现Links,右击之在下拉式菜单
中选择Insert Files链入相应的文件,如下所示:

  文件组名相应文件

  ”Program Executable Files”c:Drawdraw.exe

  ”Program Dlls”c:Windowssystem Draw.dll

  2、打开Component(控件组)窗口,有两组组件名,在每一个组件右边对应一个列表,在其中的
Included File Groups (包含的文件组)中加入相应文件组名(双击出现添加文件组对话框,选择先前
设置的组名即可),本例如下:

  组件名包含的文件组”Program Files” Program Executable Files

  ”MyDll” Program DLLs

  3、选择Media(媒介)窗口,在这里,我们要确定将发布程序制作到什么媒介上,如各种大小的磁盘
或光盘上,本例是用1.44M软盘作为发行媒介的,双击Media Build Wizard(媒介制作向导),出现
Media Name(媒介名)对话框,填写一个新名称,如:1.44New,按[下一步]进入Disk Type(磁盘类型)
对话框,选择3.5英寸Diskette-1.44 Mbytes,按[下一步]进入Build type (建造类型),选择Full Build
(全面构造),按[下一步]进入Tag File(标志文件),填入相应信息,按[下一步]进入摘要表,确认后按
[完成],向导自动完成各项工作。

  4、细心的你会发现,在选择Media(媒介)窗口中多了一个名叫1.44New的选项,右击之,选
Send Media to (向媒介发送),对!不要忘记将一张空白软盘插入驱动器,现在你可以休息一下了,
等着InstallShield为你制作好安装程序了。

  (三)补充内容:

  在以上方法中,我们用的安装程序界面是它的缺省位图界面,你可以换成自己喜欢的位图,方法如下:

  在你已完工的安装程序软盘上找到Setup.bmp位图文件,删除它,将你所需的位图拷贝到软盘,
并将该位图文件名改成Setup.bmp。

  制作一个非常好的、讲究的安装程序,决不止以上这些内容,这需要不断地摸索来积累经验,
此文也意在抛砖引玉,希望给大家有所启示。
















































































































版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/221003.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午7:09
下一篇 2026年3月17日 下午7:09


相关推荐

  • childNodes详解

    childNodes详解定义和用法 childNodes 属性返回节点的子节点集合 以 NodeList 对象 提示 您可以使用 length 属性来确定子节点的数量 然后您就能够遍历所有的子节点并提取您需要的信息 浏览器支持所有主流浏览器都支持 childNodes 属性 语法 element childNodes 技术细节返回值 NodeList 对象

    2026年3月19日
    1
  • swagger2 注解说明 ( @ApiImplicitParams )

    swagger2 注解说明 ( @ApiImplicitParams )Api 用在请求的类上 表示对类的说明 tags 说明该类的作用 可以在 UI 界面上看到的注解 value 该参数没什么意义 在 UI 界面上也看到 所以不需要配置 ApiOperation 用在请求的方法上 说明方法的用途 作用 value 说明方法的用途 作用 notes 方法的备注说明 ApiImplicitP 用在请求的方

    2025年11月27日
    6
  • 腾讯发布自研AI CLI工具CodeBuddy Code,限时免费,国产Claude Code来了!居然还有个隐藏入口(附教程)

    腾讯发布自研AI CLI工具CodeBuddy Code,限时免费,国产Claude Code来了!居然还有个隐藏入口(附教程)

    2026年3月16日
    4
  • layui 单选框、多选框radio 元素判断是必填项 lay-verify=‘required‘

    layui 单选框、多选框radio 元素判断是必填项 lay-verify=‘required‘简单验证复选框,单选框必填例子代码:<!DOCTYPEhtml><html><head><metacharset=”utf-8″><title>layui</title><metaname=”renderer”content=”webkit”><metaht…

    2022年5月30日
    154
  • Java–String、StringBuilder及StringBuffer区别及性能对比

    Java–String、StringBuilder及StringBuffer区别及性能对比【学习背景】主要是想通过OpenJDK提供的JMH工具测试下String、StringBuilder及StringBuffer字符串拼接的效率如何~关于JMH的介绍及具体使用,我的这篇博文中有介绍:Java–☀️面试官:LinkedList真的比ArrayList添加元素快?❤️‍本文通过OpenJDKJMH带你揭开真相《⭐建议收藏⭐》当然,除了主要验证三者的字符串拼接效率之外,还会对三者做一些区别分析及常见面试问题总结,希望加深自己对这三者的认知,分享出来,也希望能帮助到有需要的小伙伴~

    2022年6月28日
    24
  • 热拔插概念[通俗易懂]

    热拔插概念[通俗易懂]我们日常经常用到的电脑外设日益增多,如键盘、鼠标、耳机或音箱、U盘或移动硬盘、无线移动上网卡、显示器、笔记本电池、打印机、摄像头、数码相机、手机,还有无线路由器、宽带猫等,哪些可以热插拔,哪些必须关机

    2022年8月2日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号