部署ASP.NET的三大技术(下) (1)

asp.net

提纲:

一、不同类型的部署编辑器

二、文件系统编辑器

三、注册表编辑器

四、文件类型编辑器

五、自定义操作编辑器

六、启动条件编辑器

七、用户界面编辑器

八、部署IIS配置信息

九、VS.NET安装项目 VS. 其他部署方案

正文:

在本文的第一部分中,我们看到了如何用各种不同的方式来部署一个ASP.NET Web应用,包括XCOPY部署、VS.NET的“复制项目”功能、VS.NET的Web安装项目。在这一部分,我们将了解如何利用VS.NET Web安装项目提供的功能,构建复杂的Windows安装程序。在此过程中,我们还将看到如何使用VS.NET Web安装项目模板提供的诸多部署编辑器。

一、不同类型的部署编辑器

当我们部署一个应用程序时,可能需要执行各种特殊的安装操作,例如设置目标服务器上安装目录的结构、添加注册键、检查启动条件,以及调整安装过程中出现的用户界面。VS.NET提供的Web安装项目非常强大、灵活,我们可以轻而易举地完成上述任务。VS.NET提供了下列部署编辑器:

⑴ 文件系统编辑器:将文件加入到安装包。

⑵ 注册表编辑器:定义要在目标机器上创建的注册键。

⑶ 文件类型编辑器:允许将文件扩展名关联到应用程序,当用户打开带有指定扩展名的文件时,应用程序自动启动。

⑷ 用户界面编辑器:指定和设置在目标计算机上进行安装的过程中显示的预定义对话框的属性。

⑸ 自定义操作编辑器:指定安装结束时在目标计算机上执行的附加操作,例如运行将服务器组件与特定消息队列相关联的程序。自定义操作必须编译为.dll或.exe文件,或者作为脚本或程序集添加到某个项目中,只有这样才能添加到部署项目中。自定义操作只能在安装结束后运行。

⑹ 启动条件编辑器:指定要成功运行安装程序必须满足的条件。例如,检查特定版本的操作系统。如果用户在不满足该条件的系统上安装,安装将不能进行。

接下来我们通过实例深入了解上述各种编辑器的使用。

二、文件系统编辑器

从这个编辑器的名称也可以猜出,文件系统编辑器的功能是将项目输出文件、程序集和其他文件加入到部署项目的特定目录。有了这个编辑器,我们还可以指定这些文件要安装到用户计算机的哪一个目录位置。文件系统编辑器可以用如下方式打开:选择菜单“视图”→“编辑器”→“文件系统”。

文件系统编辑器预定义了许多特殊文件夹,我们可以选择这些文件夹作为应用程序的安装目录。有了这些文件系统编辑器定义的特殊文件夹,我们甚至能够在不知道确切路径的情况下,选择目标计算机上的安装位置。文件系统编辑器提供的预定义文件夹主要包括:

⑴ 应用程序文件夹:应用程序文件夹通常可以用[ProgramFilesFolder][Manufacturer][ProductName]路径表示,其中Manufacturer(厂商)和ProductName的值从项目属性的设置获取。

⑵ Global Assembly Cache文件夹:即全局程序集缓冲区文件夹。允许将程序集安装成目标计算机上的共享程序集。

⑶ 用户桌面:即保存桌面项目的位置。该文件夹的默认路径是[DriveName]\Documents and Settings\[UserName]\Desktop,其中UserName是当前正在执行安装的用户的名字。

⑷ 用户的“程序”菜单:用户计算机上放置“程序”菜单项目的位置。默认路径是[DriveName]\Documents and Settings\[UserName]\Start Menu\Programs,其中UserName是当前正在执行安装的用户的名字。

作为一个例子,我们假定要把应用程序的某个程序集安装到Global Assembly Cache文件夹。设置方法是:选择菜单“视图”→“编辑器”→“文件系统”,打开文件系统编辑器,然后右击“目标计算机上的文件系统”,选择“添加特殊文件夹”→“Global Assembly Cache文件夹”。加入Global Assembly Cache文件夹之后,它将以“目标计算机上的文件系统”的子节点的形式出现。接下来就可以将必需的程序集加入到Global Assembly Cache文件夹,加入方法是:右击“Global Assembly Cache文件夹”子节点,并选择菜单“添加”→“程序集”,在“组件选择器”对话框中,选择要添加的程序集。将程序集加入到“Global Assembly Cache文件夹”子节点后,安装程序会自动把程序集复制到目标机器的Global Assembly Cache文件夹。

三、注册表编辑器

顾名思义,注册表编辑器用来管理目标机器上的注册表设置。默认情况下,注册表编辑器将显示出标准的Windows注册键,包括HKEY_CLASSES_ROOT、HKEY_CURRENT_USER、HKEY_LOCAL_MACHINE和HKEY_USERS,如图一所示。我们可以在这些键下面添加任意注册键。

图一

由于注册表编辑器显示的内容代表着目标机器上注册表的结构,所以它实际上提供了一个编辑目标机器上注册键的可视化工具,这里加入的注册键将在安装时自动加入到目标机器的注册表中。假设我们要在HKEY_LOCAL_MACHINE下面添加注册键,操作步骤是:右击HKEY_LOCAL_MACHINE,选择菜单“新建Key”,将新加入的子节点命名为Software。现在右击Software节点,加入子节点MyCompany。按照同样的方法,在MyCompany下加入子节点ConfigurationSettings。右击ConfigurationSettings节点,选择“新建”→“字串值”,将字串值的名字改成DBConnectionString,再设置合适的值。设置好之后,注册表编辑器的内容如图二所示。

图二

在目标机器上安装好应用之后,目标机器上的注册表也将包含图二所示的ConnectionString。

四、文件类型编辑器

文件类型编辑器允许设定要求安装程序在目标机器上建立的文件关联,即将特定的文件扩展名关联到对该类文件采取各类操作时要启动的应用程序。建立关联之后,Windows资源管理器中就会出现该类文件的扩展名及其描述。如果应用程序用到了某种自定义的文件类型,而且对这类文件执行各种操作时必须启动独立的外部应用程序,文件编辑器提供的机制是很有用的。

在VS.NET中选择菜单“视图”→“编辑器”→“文件类型”,打开文件类型编辑器。下表显示了将文件扩展名关联到特定的应用程序时,应当设置的重要关联属性。

时间: 2024-09-17 03:34:40

部署ASP.NET的三大技术(下) (1)的相关文章

部署ASP.NET的三大技术(下) (3)

asp.net 除了"启动画面"对话框之外,用户界面编辑器还提供了许多其他预定义的对话框,例如"许可协议"."自述文件"."注册用户"."客户信息"等,这些对话框都可以利用图五的"添加对话框"窗口直接加入. 八.部署IIS配置信息 在准备部署ASP.NET应用程序的时候,一个必须考虑的重要问题是如何在部署应用的同时部署IIS的配置信息.如果用直接复制的方法部署Web应用,例如用XCOPY

部署ASP.NET的三大技术(下) (2)

asp.net 文件类型编辑器允许设置的属性 属性 作用 Name 为该类文件指定一个类型名称. Command 用户对该类文件执行操作时应当启动的应用程序 Extensions 指定该类文件的扩展名 Icon 指定该类文件的图标. Description 有关该类文件的简短描述 五.自定义操作编辑器 允许在安装时运行其他程序.自定义操作的运行顺序与它们在编辑器中的显示顺序相同.可通过鼠标拖动或使用"编辑"菜单上的"剪切"和"粘贴"命令将自定义操

部署ASP.NET的三大技术(上) (3)

asp.net 6.2 VS.NET Web安装项目的特点 VS.NET中的部署项目以Windows Installer的功能为基础,允许我们执行如下操作: ⑴ 读取.写入注册键. ⑵ 在目标服务器的Windows文件系统中创建目录. ⑶ 提供注册组件的机制. ⑷ 提供安装期间从用户收集信息的机制. ⑸ 允许设置启动条件,例如检查用户名字.计算机名字.当前的操作系统.已经安装的软件.是否已经安装了.NET CLR,等等. ⑹ 允许在安装结束后运行自定义的配置程序或脚本. 在下面一节中,我们将了解

部署ASP.NET的三大技术(上) (1)

asp.net 提纲: 一.概述 二.ASP.NET Web应用的结构 三.ASP.NET支持的部署机制 四.用XCOPY命令部署 五.用VS.NET的"复制项目"功能部署 六.用Web安装项目部署 6.1 Windows安装程序 6.2 VS.NET Web安装项目的特点 七.创建Web安装项目 八.安装ASP.NET Web应用程序 九.结束语 正文: 一.概述 在深入到配置和部署ASP.NET Web应用程序的具体步骤之前,理解配置(Setup)和部署(Deployment)之间

部署ASP.NET的三大技术(上) (2)

asp.net 五.用VS.NET的"复制项目"功能部署 VS.NET的"复制项目"功能使我们能够非常轻松地把ASP.NET Web应用部署到目标服务器.这个功能既可以把Web项目复制到同一服务器,也可以复制到不同的服务器. 如果你用VS.NET开发Web应用程序,发布Web应用之前要做的第一件事情是把"活动的解决方案配置"从Debug改成Release,如图三所示,这个选项不仅使编译器优化代码,而且删除所有与调试有关的符号信息,使代码运行速度更

IIS6下部署ASP.NET MVC应用程序

通常在IIS6下部署ASP.NET MVC应用程序的时候,都是直接设置把所有请求都交由ASP.NET的ISAPI处理.MVC是基于ASP.NET的,框架默认对于任何请求都会优先检查物理路径是否存在物理文件,如果存在的话就不通过MVC的路由机制,否则才走路由. 因此,如果在不考虑控制静态资源权限的情况下,可以设置静态资源不通过ASP.NET的ISAPI,而直接由IIS处理,通过这种方式提升一些性能.本文围绕这个主题,详解部署过程. 0.在设计MVC网站的时候,把静态资源统一放在一个文件夹下,建议目

ubuntu16.4下用jexus部署ASP.NET Core环境_实用技巧

上篇文章介绍了下用vs发布部署到iis环境,今天说下ubuntu下部署asp.net core,不需要安装.net core sdk,自带运行时方式部署,利用jexus服务器转发请求到asp.net core. 1.部署准备环境 vmware虚拟机(其他也可以) ubuntu16.04镜像 2.发布环境 win10系统 vs2015 update3 或vs code (也可以用dotnet new -t web 命令创建项目) dotnet sdk DotNetCore.1.0.0-SDK.Pr

一起谈.NET技术,在Mono 2.8上部署ASP.NET MVC 2

我们知道Mono 2.8对ASP.NET MVC 2的完全支持,下面我们就来测试下在Mono 2.8上部署ASP.NET MVC 2应用程序.我的环境是Opensuse 11.3,通过以下命令部署好Mono 2.8的开发环境,之所以说是开发环境是同时会更新MonoDevelop,支持Mono2.8的程序开发: zypper addrepo http://ftp.novell.com/pub/mono/download-stable/openSUSE_11.3 mono-stable zypper

《圣殿祭司的ASP.NET4.0专家技术手册》---- 1-6 VS 2010 SP1安装与三个扩展管理工具

1-6 VS 2010 SP1安装与三个扩展管理工具 圣殿祭司的ASP.NET4.0专家技术手册 2011年3月,微软推出VS 2010 SP1软件补丁,里面包含许多新功能与问题修正,其中与Web开发相关新功能有: IIS 7.5 Express精简版网页服务器的支持(IIS 7.5 Express需额外下载安装): SQL Server CE 4.0的支持(SQL Server CE 4.0需额外下载安装): Razor语法支持: 可部署的依赖性支持(Deployable dependenci