C#之二十二 WIN应用程序的安装部署

简介: C#之二十二 WIN应用程序的安装部署

视频课堂https://edu.csdn.net/course/play/7621

C#程序设计及宿舍管理系统实战

https://edu.csdn.net/course/detail/27107

.NET应用程序的部署

 

很多软件在使用时都需要经过安装才能够使用。安装程序就是一个被打包的应用程序。你可以将应用程序打包成易于部署的形式,然后再安装到目标系统或服务其上。部署是将应用程序安装到另一台机器上的过程,一般通过执行安装程序来完成。

部署应用程序时,你可以使用以下策略:

⊙ XCOPY部署

⊙使用VS创建部署

XCOPY部署

 

XCOPY部署是因MS-DOSXCOPY命令而得名。XCOPY命令用于将某个目录及其子目录中的文件拷贝到需要运行的应用程序的目标计算机。

XCOPY部署的局限性:

★    要求具备所有文件,而这些文件必须位于应用程序所在的目录中,以便在运行时使用。

★    目标计算机必须安装.NETFramework。

★   不能用于部署需要使用数据库或共享组件的应用程序。需要在其上安装程序的客户计算机,必须安装有数据库和共享组件。

使用VS创建部署

首先我们简单了解一下安装的步骤:

1、创建部署工程,其方法与创建窗体的方法略有相同,只是我们需要的是在项目类型中选择其他项目-à安装和部署,如下图:

 

 

2.我们需要添加安装的应用程序,如下图:

 

 

 

3、我们要创建快捷方式

 

 

1、测试生成

Net应用程序编译器

.Net应用程序编译器也叫文件系统编译器

,它与于向部署工程中添加输出项,如.exe和.dll文件,以及readme.tex等附加文件。该编译器也用于在目标计算机上指定文件夹,用来存放输出文件和附加文件。


怎样打开文件系统编译器呢?有两种方法:


①          我们在部署工程项目的菜单栏中选择视图-à编译器-à文件系统;


②          在解决方案资源管理器窗口中单击文件系统编译器按钮。


部署工程中的文件系统编译器如下图所示:




文件夹操作



使用文件系统编译器的好处是我们可以在部署工程中添加子文件夹、特殊文件夹或自定义文件夹。特殊文件夹指一些预定义的Windows文件夹,如果把这些文件夹作为目标计算机上的目标文件夹,就无需为文件夹指定具体路径。



文件系统编译器的应用



使用文件系统编译器我们可以实现以下操作:


①          添加特殊文件夹


②          添加自定义文件夹


③          添加子文件夹


④          删除文件夹


⑤          添加或移除工程输出


⑥          添加或移除文件


⑦          添加或移除快捷方式

注册表编译器

当我们安装应用程序时,我们需要在计算机的注册表中添加注册表键和值。


那么怎样打开注册表编译器呢?很简单,我们只需在部署工程中选择视图-à编译器-à注册表,或者我们也可单击在解决方案资源管理器窗口中单击文件系统编译器按钮。下图就是注册表编译器视图:




注册表编译器是以层级的方式,显示了目标计算机上的注册表。它与Windows注册表编译器的布局类似,由导航窗格和详细信息窗格组成。



注册表编译器的应用



应用注册表编译器,我们可以实现以下操作:


①         添加或删除注册表键


②         添加或删除注册表键的值


③         将现有的注册表文件导入注册表编译器


 

文件类型编译器

 

文件类型编译器用于指定计算机上的文件类型和文件关联关系。如:假设有个工作表(扩展名为.xls),Windows将可执行的文件与文件类型关联起来,因此双击扩展名为.xls的文件后,系统将启动.exe文件。


怎样打开文件类型编译器呢?我们只要在部署工程中选择视图-à编译器-à文件类型。



文件类型编译器的应用



应用文件类型编译器,我们可以实现以下操作:


①         添加或移除文件类型


②         添加或移除操作项


     

用户界面编译器

 

我们在创建部署工程时,除了系统自动生成的一些对话框外,我们也可以添加自定义对话框。我们可以通过在部署工程中选择视图-à-编译器à用户界面,来打开用户界面编译器。用户界面编译器如下图所示:




用户界面编译器中显示的对话框共有以下类型:


①          Start对话框:在安装过程开始前显示;


②          Progress对话框:用于根据已经完成的比例,以可视的方式向用户描述安装过程的进展情况;


③          End对话框:在安装过程结束后显示,用于告知用户安装过程是否成功。



用户界面编译器的应用



通过用户界面编译器,我们可以实现以下操作:


①         添加或删除对话框


②         自定义安装对话框

自定义操作编译器

 

在安装过程中或安装完成后,我们可以应用Installer执行一些附加的自定义操作。需要执行的自定义操作必须被编译为.dll或.exe文件,并通过文件系统编译器添加到部署工程中。选择部署工程中的视图-à-编译器à自定义操作,来打开自定义操作编译器。部署工程中的自定义操作编译器如下图所示:




自定义操作编译器由四部分组成,即安装、提交、回滚和卸载。每个部分代表安装过程中的一个阶段,并确定了自定义操作的执行顺序。



自定义操作编译器的应用



应用自定义操作编译器,我们可以实现以下操作:


①    添加自定义操作项


②    删除自定义操作项

启动条件编译器

 

应用程序能否运行可能取决于多种因素,如文件是否完备、目标计算机的操作系统版本,以及注册表键。因此,要想运行应用程序,我们必须确保自己的计算机上安装了合适的操作系统版本。怎样打开启动条件编译器呢?和其它编译器一样,我们选择视图-à-编译器à启动条件,即可打开启动条件编译器。启动条件编译器如下图所示:




通过启动条件编译器,我们可以添加启动条件:


①     文件启动条件:检测我们的计算机上是否存在某个文件。如不存在,安装过程将发生回滚;


②     注册表启动条件:检测我们的计算机上是否存在某个注册表项;


③     Windows Installer启动条件:检测我们的计算机上是否存在WindowsInstaller组件;


④     .Net Framework 启动条件:检测我们的计算机上是否安装了.NET运行时文件;


⑤     互联网信息服务(IIS)启动条件:检测我们的计算机上是否安装了IIS。


 


启动条件编译器的应用



应用启动条件编译器,我们可以实现以下操作:


①     添加文件启动条件


②     添加注册表启动条件


③     添加Windows Installer启动条件


④     添加.Net Framework 启动条件


⑤     添加IIS启动条件

————————————————

版权声明:本文为CSDN博主「云和数据.张晨光」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

小结

在本章中,我们主要学习了:

u          常用的两种部署策略:·XCOPY部署

·安装和部署工程

u          使用VS创建部署

u          在部署工程中的各种编译器

·文件系统编译器

·注册表编译器

·文件类型编译器

·用户界面编译器

·自定义操作编译器

·启动条件编译器

实践项目

 

对QQ应用程序进行打包安装

 

目录
相关文章
|
17天前
|
C#
C#||应用框体设计计算器
C#||应用框体设计计算器
|
13天前
|
开发框架 前端开发 .NET
LIMS(实验室)信息管理系统源码、有哪些应用领域?采用C# ASP.NET dotnet 3.5 开发的一套实验室信息系统源码
集成于VS 2019,EXT.NET前端和ASP.NET后端,搭配MSSQL 2018数据库。系统覆盖样品管理、数据分析、报表和项目管理等实验室全流程。应用广泛,包括生产质检(如石化、制药)、环保监测、试验研究等领域。随着技术发展,现代LIMS还融合了临床、电子实验室笔记本和SaaS等功能,以满足复杂多样的实验室管理需求。
24 3
LIMS(实验室)信息管理系统源码、有哪些应用领域?采用C# ASP.NET dotnet 3.5 开发的一套实验室信息系统源码
|
7天前
|
开发框架 前端开发 调度
C#基于Quartz.NET实现任务调度并部署Windows服务
C#基于Quartz.NET实现任务调度并部署Windows服务
|
1月前
|
存储 运维 BI
基于C#-VC-MSSQL开发的全套PACS系统源码 3D PACS系统源码:可实现医学影像获取、存档、观片、处理、打印多项应用
PACS的功能价值在于通过连接不同的影像设备,存储与管理图像,图像的调用与后处理,实现资源共享,降低成本,达到提高工作效率、提升医疗水平的目地;
30 1
基于C#-VC-MSSQL开发的全套PACS系统源码  3D PACS系统源码:可实现医学影像获取、存档、观片、处理、打印多项应用
|
1月前
|
存储 监控 C#
在上网行为管理软件中实现C#的跨平台应用
本文介绍了使用C#实现跨平台上网行为管理应用的方法。首先,通过.NET Core SDK创建多操作系统兼容的开发环境。接着,利用HttpClient捕获和记录HTTP请求,示例代码展示了如何捕获请求URL。然后,使用SQLite存储网络行为数据,并提供了创建数据库和插入数据的代码。此外,还讨论了如何跨平台编译应用程序以及如何自动将数据提交到远程服务器。通过这些步骤,可以构建一个能在不同操作系统上运行的上网行为管理系统。
124 3
|
1月前
|
存储 数据采集 API
C# GetField 方法应用实例
C# GetField 方法应用实例
|
1月前
|
JSON 安全 API
C# GetMethod 方法应用实例
C# GetMethod 方法应用实例
|
1月前
|
开发框架 Linux C#
C#编程的跨平台应用
【4月更文挑战第21天】C#与.NET Core的结合使得跨平台应用开发变得高效便捷,提供统一编程模型和高性能。丰富的类库、活跃的社区支持及Visual Studio Code、Xamarin等工具强化了其优势。广泛应用在企业系统、云服务和游戏开发中,虽面临挑战,但随着技术进步,C#在跨平台开发领域的前景广阔。
|
1月前
|
SQL 开发框架 .NET
C#linq表达式的应用
C#linq表达式的应用
17 0
|
1月前
|
程序员 C#
C# 面向对象编程进阶:构造函数详解与访问修饰符应用
构造函数是一种特殊的方法,用于初始化对象。构造函数的优势在于,在创建类的对象时调用它。它可以用于为字段设置初始值
52 1