C# Winform 打安装包
一、下载安装扩展程序
安全起见,我们使用官方的打包工具 Microsoft Visual Studio Installer Projects
点击: 扩展 >> 管理扩展 >> 联机 >>输入:Microsoft Visual Studio Installer Projects >> 搜索 选择第一个 下载
无法下载,请参考:https://blog.csdn.net/weixin_46681279/article/details/132429147
下载完成后,点击右下角关闭。关闭visual studio 2022 软件后才会弹出安装界面。如果没有弹出,可以右键 >> 任务管理器,找到visual studio 的进程杀死即可。然后弹出安装界面 install ,点击 Modify 等它安装完成。
二、创建 打包项目
右键 解决方案 >> 添加 >> 新建项目 >> 输入:setup >> 选择 Setup Project >> 下一步
输入项目名称:{你的项目名称},项目位置:{选择你的项目存放位置},我这里图方便,直接放在桌面。点击创建
三、配置打包内容
1.添加运行程序
右键 Application Folder >> Add >> 文件 >> 选择你项目的Debug文件夹 >> 选择全部文件(Ctrl+A) >> 打开
Debug文件夹 不知道在哪里的,可以右键 你要打包的项目 >> 在资源管理器中打开文件夹 >> 找到第一个文件夹bin >> 点击 Debug 然后复制整个文件路径即可。
注意,这个不能 识别文件夹,如果有文件夹里面包含文件,需要先 Add >> Folder 再 文件夹里的文件添加进来
2.添加卸载程序
2.1 右键 Application Folder >> Add >> 文件 >> 数据路径:C:\Windows\System32 >> 输入文件名:msiexec.exe >> 打开
2.2 找到添加进来的 msiexec.exe 右键,选择 Create Shortcut to msiexec.exe
2.3 右键我们的 setup项目,在属性中找到并复制 ProductCode 的值。然后找到刚才创建的 Shortcut to msiexec.exe,左键点击在属性中找到 Arguments。把刚才复制的值粘贴上来,并在前面加上 /X 空格。如果ProductCode 的值是{123},那么Arguments的值就是 /X {123}
2.4 将 Shortcut to msiexec.exe 拖动到 User‘s Programs Menu 中
3.添加运行环境
3.1 右键 Application Folder >> Add >> 项目输出 >> 选择项目 >> 主输出 >> 确定
3.2 找到刚才生成的 “主输出 from...”,右键 创建快捷方式
3.3 把创建成功的快捷方式 “Shortcut to 主输出...” 拖动到 User‘s Desktop 中
3.4 右键我们的 setup项目,点击 属性。点击 Prerequisites,选择安装系统必备组件,这里一般默认就行,主要看是否遗漏。然后 确定 确定 即可。
4. 配置icon图标
4.2 点击 User’s Desktop,点击 "Shortcut to 主输出..."。在属性中找到 Icon,找到Browse, 选择你传入icon图片的文件夹 Application Folder 找到icon图片,确定。
5.修改名称
分别找到桌面User’s Desktop 的 快捷方式,修改 Name,我们不要使用系统的。卸载快捷方式的名称也是一样修改一下。
4.生成安装包
右键我们的 setup项目,点击生成。biubiubiu... 数3下就生成成功啦。
5. 常见问题
打包失败:找不到依赖项,获取引用失败
找不到依赖包,主要是NuGet包设置那里,下载的包不在当前项目下,去掉这个勾选,重新生成项目即可
文件存在引用失败,这里以 引用 SQLLite.db 文件为例,引用失败原因是有程序在引用这个文件,比如数据库管理软件中已打开,关闭即可。
6. 验证安装包
所谓小心使得万年船,自己测试没有问题再给客户使用,这是最基本的礼仪。在输出目录,我们找到生成的安装包。
由于是开发环境无需配置新环境,我们这里直接安装 电池管理应用程序。
运行程序,测试正常,Icon图标翻车,有待改进...
卸载测试,点击卸载。安装目录清空,搞完收工...