【C#】【winform】Microsoft Visual Studio Installer Project 打包应用程序全部过程

提示:只针对扩展包来完成打包的工作过程。

文章目录


前言

在做完C#和winform的开发,完成之后,需要做一些打包的工具,在这个过程中遇到一些问题,所以记录下我的操作过程和遇到的异常情况。


一、Microsoft Visual Studio Installer Project 是什么?

支持快速打包的插件扩展

二、安装

1.安装Microsoft Visual Studio Installer Project

在扩展--->搜搜 Microsoft Visual Studio Installer Project,安装,然后等待下载完成,完成之后关闭Visual Studio,等待一会会自动弹出界面安装完成该扩展

三、安开始打包

1.添加setup

1.在解决方案上面右键,添加-新建项目

2.搜索setup,如图选择setup project,一直下一步,最后会在解决方案管理器里面生成一个setup样式的文件如图:


3.这边就可以开始配置打包的相关功能

1.在setup项目上面右键->view->文件系统
  • 1.Application Folder:软件的文件等,可以在这个下面导入文件或者是文件夹内容。
  • 2.Users Desktop:桌面,可以设置在桌面的快捷按键工。
  • 3.剩下的那个是在菜单栏里面的快捷方式,同时可以设置图标
2.Application Folder上面右键-->add-->项目输出,选择主输出,确定,右边会生成文件
3.制作应用的快捷按键和图标

Application Folder里面找到主输出相关字样,右键,创建快捷方式,如图,在产生的快捷方式右键剪切,复制到Users Desktop

如图,选择复制过来的快捷方式,查看属性 :可以变更里面的name:快捷按键的名字,icon,可以选择图标,需要是.con格式的(.icon的分辨率不能太大,建议是128,或者64*64,太大了可能就不显示了

然后用同样的操作复制快捷方式到user programs menu里面,同样操作。后面就可以在任务栏显示出来该软件的快捷方式和图标

三.打包生成

在setup项目上面右键,可以生成或者是重新生成,生成成功之后,可以选择安装,那么就可以安装该软件到电脑上面,卸载会卸载该软件,在文件资源管理器...打开可以看到软件,是一个exce和msi.安装需要这两个都存在。

四.可能遇到的问题

1.在安装的界面,有更加细节的功能添加,比如在安装界面可以输入相关数据,然后,软件可以获取到输入的这些数据,比如lience的作用等。可以在view-自定义操作里面操作。
2.出现有些功能不能正常的使用,需要管理员权限才能使用的情况

解决的办法:在App_All 右键,属性-安全性-启用clickOnce,这个时候会新增到一个文件

找到:

复制代码
<requestedExecutionLevel level="asInvoker" uiAccess="false" />

替换为:
 <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

保存之后,在到属性里面去除勾选clickOnce;


然后重新生成打包,就可以用管理员的权限来运行打包生成的软件。

总结

打包总的来说还不是很难的一个过程,但是还是需要很多地方去了解和技术和知识的累积。

相关推荐
时光追逐者15 小时前
TIOBE 公布 C# 是 2025 年度编程语言
开发语言·c#·.net·.net core·tiobe
观无15 小时前
固高运动控制卡(GST800)基础应用分享
c#
flysh0517 小时前
如何利用 C# 内置的 Action 和 Func 委托
开发语言·c#
逑之18 小时前
C语言笔记1:C语言常见概念
c语言·笔记·c#
福大大架构师每日一题19 小时前
2026年1月TIOBE编程语言排行榜,Go语言排名第16,Rust语言排名13。C# 当选 2025 年度编程语言。
golang·rust·c#
wangnaisheng19 小时前
【C#】gRPC的使用,以及与RESTful的区别和联系
c#
JosieBook19 小时前
【开源】基于 C# 和 Halcon 机器视觉开发的车牌识别工具(附带源码)
开发语言·c#
龙潜月七19 小时前
做一个背单词的脚本
数据库·windows·c#·aigc·程序那些事
寻星探路19 小时前
【Python 全栈测开之路】Python 基础语法精讲(一):常量、变量与运算符
java·开发语言·c++·python·http·ai·c#
故事不长丨20 小时前
深度解析C#文件系统I/O操作:File类与FileInfo类的核心用法与场景对比
c#·文件系统·file·fileinfo·i/o操作·i/o流