Winform打包和部署

2018-09-21 基于C#的本地服务器和客服端 基于C#的本地服务器和客服端 下面来实现本地的服务器 首先创建一个服务器项目 1. 代码如下 先引用类库 using System.Net; using System.Net.Sockets; 在main中实现调用 static void Main(string[] args) ... 阅读详情
我们经常会遇到这样的问题:自己开发好了一个Winform系统,如何使之可以平稳的运行在没有安装.NET Framework 的操作系统上?这就涉及到打包和部署的内容,通过打包和部署形成安装程序,实现WinForm应用软件正常的安装在客户的操作系统上。另一方面同时需要考虑通过打包和部署形成卸载程序,将该应用软件卸载掉,达到方便客户使用的目的。
本章重点介绍Winform系统打包和部署的概念,通过实例介绍如何进行打包和部署的方法。
u本章的学习目标:
n了解打包和部署的概念
n掌握简单打包和部署的方法
n掌握复杂打包和部署的方法

8-1           Winform打包和部署介绍

本节学习目标:
n了解Winform打包模式
n了解部署项目应遵循的基本步骤

8-1-1 简介

1.打包模式

为应用程序打包有很多种方法,其中包括:
n安装程序文件(使用 Microsoft Windows 安装程序)
nCAB 文件项目
n合并模块
要将合并模块添加至部署项目,请执行以下步骤:在“解决方案资源管理器”中选择部署项目。单击“项目”→“添加”→“合并模块”。使用“添加模块”对话框选择要添加的合并模块。

 2.部署应用程序

  可以使用下列其中一种方式部署 Winform 应用程序 :
n运行安装程序
n使用 Internet 下载并部署 CAB 程序包
n使用 XCOPY 将文件复制到目标文件夹中
n使用系统管理服务器将应用程序部署到几台目标计算机上

8-1-2 创建部署项目

1.新建部署项目应遵循如下步骤:

(1).打开现有或新的 WindForms 应用程序
(2).单击“文件”→“新建”→“项目”,打开“新建项目”对话框
(3).从“项目类型”列表中选择“安装和部署项目”文件夹(如图8-1)
(4).在对话框右边的“模板”列表中选择所需的部署项目类型
    不同的类型有:
n安装项目
nWeb 安装项目
n合并模块项目
n安装向导
nCab 项目
图8-1  新建项目举例图

2.可用于 Winform 应用程序的模板的说明

项目类型
说  明
安装项目
用于为 Winform 应用程序创建安装程序
Web 安装项目
Visual Studio.NET 还支持在 Web 服务器上部署。使用此方法在 Web 服务器上安装文件将自动处理与注册和配置相关的问题
合并模块项目
可以由多个应用程序共享的程序包和组件。例如,如果应用程序有五个实用程序文件,则可以将它们打包到一个合并模块项目中,然后合并到任何应用程序中
安装向导
它是一个向导,指导用户快速完成创建安装程序的步骤。可以自定义安装向导,以便在安装期间添加更多文件或练习更多控件
Cab 项目
生成用于下载到 Web 浏览器的 Cab 文件
表8-1 安装项目类型

8-2            简单的打包和部署

本节学习目标:
n配置应用程序文件夹
n配置应用程序菜单
n配置用户桌面快捷文件
n配置快捷文件图标
n配置卸载快捷文件的基本步骤
n生成安装卸载包文件
  在安装项目类型中,比较适合Winform 应用程序创建安装程序部署的是表8-1的第一项。下面,我们通过实例学习怎么进行简单的Winform 应用程序的打包和部署。

8-2-1 案例学习:Visual Studio2005环境下建立简单的打包和部署系统

1. 新建安装部署项目

打开Visual Studio2005,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定。详见图8-2所示。
图8-2  新建安装部署项目示意图

2. 配置安装系统文件

在点击图8-2的确定后,将进入到安装系统文件的配置界面中,如图8-3所示。
图8-3 安装系统文件的配置界面图
u实验步骤(1):
鼠标左键点击“应用程序文件夹”,在打开的右侧界面中单击鼠标右键,在弹出的快捷菜单中选择“添加”->“文件”,如图8-4所示。
图8-4  创建可执行文件快捷方式示意图
u实验步骤(2):
在打开的文件选择界面中,添加某文件夹中具体的文件,这类文件主要包括两种:.EXE文件或者是.dll文件。一般而言,一个C# Winform应用程序在Visual Studio2005平台下开发的时候,会自动将这两种文件生成在你的Winform应用程序所在目录下的bin文件夹里面的Debug子文件夹下面,其中.EXE为可执行文件,而.dll文件的来源多是用户自定义编辑的类库文件,或者是第三方的动态链接库文件,如果你的项目之中存在上述两种情况,那么请你务必将这些文件一并作为打包文件放进来。我们以第二章应用软件为例进行打包,图8-5为最终找寻的.EXE文件或者是.dll文件所在之处。其实一个比较简单的办法就是,将你的Winform应用程序所在目录下的bin文件夹里面的Debug子文件夹下面的所有文件全部取来即可。这里有一点提醒读者的是:如果你的项目中有图片或者其他多媒体文件,请你也一并将之选中,放在文件里面。
图8-5  选择动态链接库和可执行文件示意图
选择后的文件将出现在“应用程序文件夹”之中,如图8-6所示。
图8-6  选择可执行文件和动态链接库文件后示意图
    鼠标右键单击“应用程序文件夹”,选择属性窗口,在弹出的属性窗口中将“defaultlocation”属性路径中的"[manufacturer]"去掉,不然的话做好的安装程序默认安装目录会是“c:/programm file/你的用户名/安装解决方案称”。
图8-7 删除属性[manufacturer]示意图
u实验步骤(3):
在图8-6基础上,于右侧栏目单击鼠标右键,添加“文件夹”,并为该文件夹取名为img,如图8-7所示。该img文件夹存储系统的所有图片文件,为启动和卸载文件分别增加快捷图像做前期准备,类型必须为.ICO文件(图标文件)。
图8-8  添加图片文件夹示意图
在点击左侧新建的img文件夹, 于右侧栏目单击鼠标右键,添加“文件”,从你的磁盘中选择两个.ICO文件(图标文件)放置其中即可。如图8-8所示。
图8-9  添加ICO图片文件夹示意图
u实验步骤(4):
本步骤对于卸载软件系统至关重要,如果不添加将无法形成卸载你已经安装的文件。请你再次于右侧栏目单击鼠标右键,添加“文件”,请你在c:/windows/system32文件夹下找寻一个叫msiexec.exe的文件,并将之添加到应用程序文件夹下面。该文件将负责执行卸载你安装的软件。如图8-9所示。
图8-10  添加卸载可执行文件示意图
u实验步骤(5):
本步骤将在应用程序文件中增加系统.Net FrameWork组件,如果不进行这一步,对于没有安装.Net FrameWork组件的操作系统,即便安装了您的应用软件,该系统也无法运行。
打开解决方案管理器,右击你的解决方案名称,选择属性:在打开的属性页中,选择“系统必备”。如图8-10,图8-11所示。
图8-11  选择安装项目属性示意图
图8-12  展开后的系统安装包配置示意图
在图8-11展开的系统必备内容中,将.Net FrameWork2.0组件包和Windows Installer2.0组件包一并选中。如图8-12所示。
图8-13  将.Net FrameWork2.0组件包和Windows Installer2.0组件包一并选中
u实验步骤(6):
截至步骤5,我们完成了对应用程序夹中全部文件的添加工作。本步骤将引导读者开始配置左侧导航条中的“用户的程序菜单”。该菜单将出现在操作系统“开始”栏目的“程序”里面。因此建议以文件夹形式出现,里面包含执行程序和卸载程序两个可执行文件的快捷方式文件。
鼠标左键点击“用户的程序菜单”,在右侧导航栏目中的空白处单击鼠标右键,添加文件夹,假设我们给这个文件夹取名“警匪争霸”。如图8-13所示。
图8-14  “用户的程序菜单”中建立文件夹
在“警匪争霸”文件夹中单击鼠标右键,选择“创建新的快捷方式”。如图8-14所示。
图8-15  创建新的快捷方式
在打开的创建新的快捷方式窗口中,选择“应用程序文件夹”中的可执行文件(.exe文件)。这两个文件分别是:WindowsApplication2.exe(项目可执行文件)和msiexec.exe(卸载软件项目可执行文件)如图8-15所示。
图8-16  添加快捷方式文件
在“应用程序文件夹”中,名称不太适合安装包的命名。请你将这两个快捷方式分别更名为假设的“警匪争霸”和“卸载警匪争霸”,如图8-16所示。
图8-17  为快捷方式文件重新命名
u实验步骤(7):
截至步骤6,我们完成了在开始栏目的程序中添加执行文件夹的任务。此次步骤我们将完成快捷方式文件的图标配置工作。
鼠标右键单击快捷文件“警匪争霸”,在弹出菜单中选择“属性窗口”,在属性窗口之中配置快捷文件“警匪争霸”的icon属性,选择浏览。如图8-17所示。
图8-18  配置快捷文件“警匪争霸”的icon属性
在弹出的“图标”对话框中,点击浏览,寻找应用程序文件夹下面的img文件夹,选择其中的一个ico图标。如图8-18所示。对于“警匪争霸卸载”的快捷方式图标的配置也是一样。
图8-19  选择图标文件
u实验步骤(8):
此次步骤我们将完成对卸载文件注册表的配置工作。按照图8-19,将“解决方案资源管理器”和“属性”窗口进行排列,在“解决方案资源管理器”中单击此次项目,你会看到在“属性”窗口中出现名为productcode属性,该属性为项目操作系统注册表文件的注册编号,拷贝该编号。
图8-20  查看此次安装包注册表编号
鼠标右键点击“卸载警匪争霸”快捷文件,弹出菜单选择属性窗口,将刚才拷贝的注册编号复制到Arguments属性之中,并进行如下修改:在“/x {ProductCode}”,以本次案例为准就是:/x {DC17056E-F331-449C-8409-4A74CE60F383},如图8-20所示。
图8-20  配置卸载快捷方式Arguments属性
u实验步骤(9):
截至步骤8,我们已经完成了“用户程序菜单”的快捷文件配置工作,本次步骤我们将配置桌面快捷文件。用鼠标左键点击“用户桌面”,在右侧栏目中创建快捷方式,添加可执行文件,配置可执行文件快捷方式的图标属性。具体步骤与步骤8基本一致,如图8-21所示。
图8-21  配置桌面快捷方式
u实验步骤(10):
最后,选择菜单“生成”,运行“生成解决方案”。如图8-21所示。
图8-22  生成解决方案
在目标输出路径下可以看见输出的安装包文件,如图8-22所示。
图8-23  生成安装包文件
运行setup.exe文件,既可以安装你的软件到任何的计算机中。图8-23的桌面快捷方式和开始栏目中的程序部分的运行文件。当然,你执行“卸载警匪争霸”,既可以完成对软件的卸载工作。效果图如图8-23和图8-24所示。
图8-24  软件安装步骤
图8-25  软件安装后的程序运行部分
WinForm用微软打包工具打包 下载扩展点击扩展 —> 管理扩展安装完之后重启VS就好了。 阅读详情

相关推荐

vs2012打包部署winForm和WPF应用

当我们在一台有开发环境的机器上,开发出来一个软件时,怎样跑在没有装开发环境的机器上,当然在这里我不讨论跨平台。我用开发环境是vs2012,下面是我打包和部署的过程。 首先有必要说一下,传统的打包部署过程。 1.winForm程序打包(wpf程序部署也一样) 首先我们需要建立一个项目,winform的任意项目,我们可以简单的加一句话,比如在窗体里加一个标签,然后把它的text属性设置为“Hel

u011626294的专栏 4280

8-1 Winform打包和部署

我们经常会遇到这样的问题:自己开发好了一个Winform系统,如何使之可以平稳的运行在没有安装.NET Framework 的操作系统上?这就涉及到打包和部署的内容,通过打包和部署形成安装程序,实现WinForm应用软件正常的安装在客户的操作系统上。另一方面同时需要考虑通过打包和部署形成卸载程序,将该应用软件卸载掉,达到方便客户使用的目的。 本章重点介绍Winform系统打...

weixin_34101784的博客 340

Winform 打包和部署

1. 新建安装部署项目打开Visual Studio2005,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定。详见图8-2所示。图8-2  新建安装部署项目示意图2. 配置安装系统文件在点击图8-2的确定后,将进入到安装系统文件的配置界面中,如图8-3所示。图8-3 安装系统文件的配置界面图u实验步骤(1):鼠标左键点击“应用程序文件夹”,在打开的右侧界面中单击鼠标右键,在弹出的快捷菜单中选择“添加”->“文件”,如图8-4所示。图8-4  创建可执行文件快捷方式

panda158的专栏 809

C#winform程序打包成安装项目,制作安装包(VS2022)

3、右键刚刚生成的主输出文件>创建快捷方式>并将快捷方式拖动到User's Desktop这个文件夹中,可以重命名该快捷方式。2、右键Application Folder >点击 Add>点击项目输出>点击确认后>旁边则会生成一个主输出的文。5、创建卸载程序 右键Application Folder >点击 Add>点击文件>在C盘中搜索。9、右键项目 >生成即可>找到项目文件夹中的 Debug文件夹 得到如下文件,即可安装exe并运行。在vs中找到扩展>管理扩展>搜索。7、将Setup属性。

yigu4011的博客 1万+

C#实现自动升级程序(含客户端和服务端)

程序分成UpdateServer(Web服务应用程序)和一个Client(命令行程序)。UpdateServer提供应用程序的最新版本,应用程序存放在UpdateServer下的AppCenter目录中。Client程序运行时,先从UpdateServer下载最新的版本,然后创建新的应用程序域加载程序执行。

从实验室到生活:构建一份全面的手机相机主观画质评测指南

本文详细介绍了如何从实验室数据转向实际体验,构建全面的手机相机主观画质评测指南。通过基础装备清单、室内外场景实战评测及数据之外的感知艺术,帮助用户发现手机相机在色彩还原、动态范围和夜景模式等方面的真实表现。特别关注主观体验与客观参数的差异,提供实用的评测技巧和报告撰写心法。

weixin_30940783的博客 308

WinForm简单的打包和部署

在安装项目类型中,比较适合WinForm应用程序创建安装程序部署的是安装项目。下面是进行简单的WinForm应用程序的打包和部署。以Visual Studio2010为例。 1、新建安装部署项目 打开VS,单击“文件”,选择“新建”,选择“项目”,选择“其他项目类型”->"安装与部署”->“安装项目”或“安装向导”,然后单击“确定”。 2、配置安装系统文件 (1)单

仰望星空的代码 2万+

Windows系统的Mamba环境配置详细教程(状态空间模型)

causal_conv1d也是安装mamba的依赖必须库。安装完成后,通过pip list可以查看到安装的库。Triton是安装mamba的依赖,需要先安装。上述工作准备好后,按下面步骤安装。直接根据离线文件安装即可。是自己的虚拟环境名字。

2301_77831163的博客 3674

VS2012打包部署WinForm程序基本步骤和一些思考!

最近,用VS2012开发了一个WinForm窗体应用程序,

liuyuliuyu520的专栏 2965

命令行驱动视频剪辑:cutcli与AI自动化工作流实战

在视频内容创作领域,自动化与批量化处理是提升生产效率的关键。传统图形界面工具在应对重复性任务时往往效率低下,而通过命令行接口(CLI)驱动视频生成,则能实现流程的程序化控制。其技术原理在于将视频结构抽象为可编程的指令序列,通过解析命令生成标准化的工程文件。这种模式的核心价值在于将视频制作从手动操作转变为代码驱动,特别适合与AI编程助手集成,实现自然语言到视频草稿的自动转换。应用场景广泛覆盖社交媒体内容批量生产、教育视频自动化生成、数据可视化视频组装等领域。本文以cutcli工具为例,深入解析如何通过命令行与

weixin_42520239的博客 569

YOLO26-seg分割优化:卷积魔改 | 动态蛇形卷积(Dynamic Snake Convolution),实现暴力涨点 | ICCV2023

​​​​​​摘要:本研究对Ultralytics YOLO26进行了全面分析,重点阐述了其关键架构改进及其在实时边缘目标检测中的性能基准测试。YOLO26于2025年9月发布,是YOLO系列最新、最先进的成员,专为在边缘及低功耗设备上实现高效、精确且易于部署的目标而构建。本文依次详述了YOLO26的架构创新,包括:移除了分布焦点损失(DFL);采用端到端的无NMS推理;集成了渐进损失(ProgLoss)与小目标感知标签分配(STAL);以及引入了用于稳定收敛的MuSGD优化器。

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 215

C# Winform打包和部署

我们经常会遇到这样的问题:自己开发好了一个 Winform 系统,如何使之可以平稳的运行在没有安装 .NET Framework 的操作系统上?这就涉及到打包和部署的内容,通过打包和部署形成安装程序,实现 WinForm 应用软件正常的安装在客户的操作系统上。另一方面同时需要考虑通过打包和部署形成卸载程序,将该应用软件卸载掉,达到方便客户使用的目的。 本章重点介绍 Winform 系统打包和部

HelloLWei的专栏 9926

AI驱动芯片设计的端到端验证:AI应用架构师的全流程指南

想象你要建造一座1000层的超级摩天大楼,每个房间都有独特的功能,管道、电路、电梯系统交织如迷宫。传统的检查方式是派1000个工程师逐层逐房手动检查,耗时十年且仍可能遗漏火灾隐患。这就是今天芯片设计面临的困境:7nm芯片含百亿晶体管,相当于百亿个"房间",传统验证方法(人工编写测试用例、随机仿真)已难以应对。本文的目的,是为AI应用架构师提供一份"AI驱动芯片验证导航图",范围涵盖从验证需求分析到芯片签核的全流程,包括AI模型如何融入传统验证工具链、数据如何驱动验证效率提升、以及端到端闭环系统的构建方法。

2501_92132293的博客 1240

WinForm 应用程序的打包和部署_简单版(图文)

另附一个地址,可供参考,讲解的比较详细:http://www.cnblogs.com/scottckt/archive/2011/05/14/2046313.html 开发好了一个 WinForm 系统,如何使之可以平稳的运行在没有安装 .NET Framework 的操作系统上?这就涉及到打包和部署的内容,通过打包和部署形成安装程序,实现 WinForm 应用软件正常的安装在客户的操作系统

分享经验,共同进步. 1732

使用Captum库对CIFAR数据集进行模型可解释性分析

为了训练模型,我们需要指定损失函数和优化技术。损失函数用于衡量模型的性能,在训练过程中,我们通过调整模型参数来最小化损失。本教程使用。

2501_90323865的博客 177

FCTA/FCTB 前方交通穿行预警/制动系统技术规范

FCTA&FCTB前方交叉路口预警制动系统是针对十字路口和停车场等"鬼探头"场景设计的驾驶辅助系统。系统在自车速度0-40km/h范围内工作,通过角雷达和摄像头检测侧向来车.

未知艺术家的博客 738

winform mysql部署,如何部署和打包具有数据库的c#winform项目

Hi friendsi have an accounting software project that i design with c# winform,the project have about 50 form, they draw their information from my tables in my my database which i created with sql ser...

weixin_33608494的博客 388

【FISCO-BCOS】 八、ubuntu配置Java环境

ubuntu配置Java环境需根据自己的java版本号进行细节修改,本文以jdk11.0.18版本为例。ps:通过此法还可以查看java安装路径,但必须是环境配置成功的情况下才能使用。二、添加Java环境路径。四、检查java环境设置。

naihe_fish的博客 4307

c/s winform打包和部署

1:vs2010新建 安装项目 左边出现3个文件夹 2:点击 第一个文件夹-> “应用程序文件夹” 将 bin 目录下的所以文件 拖进 右边的空白处;c:\windows\system32 文件夹下找寻一个叫 msiexec.exe 也将它拖进来,它负责卸载; 3:点击 “应用程序文件夹” 右击 添加 文件夹 命名为 img 4: 点击 img 将.ico 的两张图片 ...

weixin_34341117的博客 87

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

VB.Net Winform程序的简单打包和部署--<机房收费系统>

我们经常会遇到这样一个问题:自己开发好了一个Winform系统,如何使之可以平稳的运行在没有安装.NET Framework的操作系统上?这就涉及到打包和部署的内容。通过打包和部署形成安装程序,实现Winform应用软件正常的安装在客户的操作系统上。在这里借着"机房收费系统"这个案例,介绍自己尝试的多种打包方法中感觉比较简单的一种方法,简单介绍一下vb.net应用程序打包的步骤,还请高手指点...

网站开发初中级代码参考-转载 233

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

上一篇: C#如何为winform程序打包发布应用(图解教程)
下一篇: 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。
rubychen410
博客等级 码龄19年 32粉丝 95原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值