• Visual Studio 2017


    最近有对一个Windows应用程序少许维护和修改。修改之后要发布新的exe安装文件,打包exe文件时,遇到了很头疼的问题,还好最后解决了,记录一下。

    Visual Studio版本:Visual Studio 2017

    Visual Studio 2017 打包插件

    新建项目->其他项目类型->Visual Studio Installer->Setup Project

    如果其他项目类型中没有选项(Visual Studio Installer),点击“工具”,选择“拓展和更新”,点击联机,搜索“Microsoft Visual Studio 2017 Installer Projects”,安装该插件。

    选择主输出

    新建项目之后,默认自动打开File System,右键点击Application Folder,添加输出,选择主输出

    创建快捷图标

    右键点击“主输出 from xxx”,选择“Create ShortCut to 主输出 from xxx”,新增快捷方式,可以重新命名。选择快捷方式,左键长按拖动至User's Desktop

    右键点击快捷方式,选择属性窗口

    可自选快捷方式的显示图标icon

    自定义操作

    右键点击项目

    如果该项目由必选的驱动需要安装,可以将该驱动安装exe文件添加到Application Folder中,选择添加“自定义操作”,选择该驱动安装文件,会在执行文件时,调用驱动的安装。

    插件的好处和缺陷

    好处:Visual Studio 2017自带插件,使用方便,比下载安装其他打包软件要方便的多。
    缺陷:(下述缺陷很可能是因为,我没有弄清楚该插件的深入使用方法)

    1. 驱动安装流程执行结束之后,无法继续主安装流程。
    2. 无法将所需framework环境打包进exe文件。

    打包.NET Framework环境

    生成的时候,报错,点击提示的报错,跳转至微软官网如何:创建本地化的引导程序包
    看文档看半天并不能解决。搜索了很久,终于找到一篇文章【C#】vs2017 发布工具 Visual Studio Installer 发布包遇到的问题处理经验
    按照该文章的方式找到路径:
    C:Program Files (x86)Microsoft SDKsClickOnce BootstrapperPackagesDotNetFX461
    将下载的文件NDP461-KB3102436-x86-x64-AllOS-ENU.exe复制到该路径下。
    最后虽然能生成成功,但是并不是我想要的打包成一个exe文件,很显然,可能需要对插件更了解吧,我是没找到解决办法。

    InstallShield

    官网
    又是一番折腾,下载安装,InstallShield安装包不小,下载和安装的时间花费不短。
    参照使用InstallShield打包windriver驱动
    下载地址:InstallShield 2018(软件打包工具)
    很不幸,证书是2016的,不是2018的,最后打包的时候会出现报错:Failed to verify digital signature of IsUiServices.dll
    报错类似: InstallShield 2015 错误 Failed to verify digital signature of IsUiServices.dll

    InstallShield 的优点和缺点

    功能强大是优点,也是缺点,因为功能强大也意味着操作复杂。

    Inno Setup

    官网
    Inno Setup操作简单,最后会生成一个后缀iss的脚本文件。
    可以自己写function。对我来说,可能会更喜欢GUI操作。Advanced Installer闪亮登场。

    Advanced Installer

    下一篇文章着重介绍Advanced Installer,非常好用,推荐指数五星。

  • 相关阅读:
    SQL第3课:具有约束的查询(第2部分)
    SQL第1课:SELECT查询
    idea快捷键
    Vue基础
    分布式基础
    数据结构-线性表
    常用算法
    数据结构-概述
    Django使用Jinja2模板引擎
    宿主机nginx使用容器php-fpm处理php请求
  • 原文地址:https://www.cnblogs.com/AlienXu/p/8964005.html
Copyright © 2020-2023  润新知