图解C 图解缠论
创始人
2024-04-30 20:20:29
0

Windows Installer的特性

◆和传统的基于脚本的安装工具对比,它基于一个数据驱动的模型,在单个包内提供所有的安装数据和指令

◆它支持自修复功能--程序可以自动重新安装

◆它提供安装时回退到某一步骤的功能

创建发布工程

Visual Studio.NET里提供了四种类型发布工程的模板:

◆安装工程:为基于windows的应用程序建立安装包

◆合并模块工程(.msm):可以被多个程序共享的包组件

◆Web安装工程:为一个web应用程序建立安装包

◆Cab工程(.cab):创建cab文件

与此同时,安装向导也提供了伴随创建发布工程的过程中的帮助步骤:

◆对于一个安装工程,将把需要安装的文件发布到目标计算机的一个程序目录下

◆对于一个Web安装工程,将把需要安装的文件发布到Web服务器的一个虚拟目录下

注意:如果你创建了一个标准发布工程,后来打算发布它到Web上,你必须重新创建一个新工程。

五步制作程序安装包

C#安装包制作***步:打开VS IDE,选择File->New->Setup and Deployment Projects. 选择Setup Wizard。给出存储工程的文件名和存放目录。如图1所示。

Setup

图1 Setup Wizard

C#安装包制作第二步:这里将会显示安装工程向导的对话框的欢迎界面。这是一个简单的四步向导,点击Next,第二步将会询问安装的类型,请选择合适的回答,这里我选择windows应用程序的安装,点击Next。

选择windows应用程序

图2 选择windows应用程序的安装

C#安装包制作第三步:这里向导将会让你添加开发的程序或者组件,以及其他一些所需要的文件,如文档文件等。

添加开发的程序

图3 添加开发的程序或者组件

添加开发的程序

图4 添加开发的程序或者组件


***,你会看到如图5所示的内容:

应用程序文件夹

图5 应用程序文件夹是你的程序和支持文件的安装文件夹

这里,应用程序文件夹是你的程序和支持文件的安装文件夹,而用户的桌面和程序菜单分别是目标系统的桌面和程序菜单。

C#安装包制作第四步:

你可以在制作过程中选择使用如下的编辑器:

文件系统编辑器:可以增加工程的输出,文件和其他一些项到发布工程中,并且指定它们在目标计算机上的安装位置。

注册表设置管理编辑器:可以指定需要加入到目标计算机的注册表中的一些键值。

文件类型管理编辑器:建立目标计算机上的文件关联。

定制处理管理编辑器:可以指定在安装后执行的一些处理(如重启)等。

启动条件管理编辑器:可以为成功完成一次安装指定必须满足的一些条件。

用户界面管理编辑器:你可以用它来设置安装过程中显示的一些预定义的对话框,图7显示了增加一个用户许可证协议和序列号对话框的例子。

设置安装过程中显示的一些预定义

图6 设置安装过程中显示的一些预定义的对话框

设置安装过程

图7 设置安装过程中显示的一些预定义的对话框

C#安装包制作结束语

如果你还在使用传统的安装脚本程序的话,来试试使用Windows Installer吧。如果你购买了正版的Visual Studio.NET,那么它本身就附带提供了Windows Installer。现在是你熟悉和使用它的时候了。

【编辑推荐】

  1. 浅析C#转义字符双引号的实现方法
  2. C#进度条的使用及开发浅析
  3. C#进度条使用之多线程应用浅析
  4. C#进度条实现之异步实例浅析
  5. C#进度条实现实例

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...