• 打包.NET程序


    .NET开发的程序,如果客户端没有.NET框架,需要单独安装.NET框架,为了让客户端可以运行自己开发的软件时更方便,需要为程序打包成安装包,并且当机器没有.NET框架时,能自动安装.NET框架。

    下面是我开发的一个小软件,用.NET2.0开发的,.NET框架包只有22.4M,方便打包。

    打开VS,新建一个安装项目,右键项目,选择视图->文件系统,在应用程序文件夹的右键,添加文件,把需要安装后部署的文件添加进来,如图:

    然后把运行的exe程序建立快捷方式,改名后放到用户桌面,这样安装程序安装后,就会在桌面多一个快捷方式,快捷方式的文件名可以随意更改。

    然后设置项目依赖.NET2.0的框架,右键项目->属性,点击系统必备:

    系统必备组件需要为.NET Framework2.0,组件的安装位置选择“从与我的应用程序相同的位置下载系统不必备组件”,这样会把.NET框架分离出来放到打包的安装程序里。

    然后双击项目下面显示的“检测到的依赖项”,启动条件下的.NET Framework的属性窗口,选择Version为.NET2.0。这样安装程序就配置完毕了。项目的属性窗口可以修改Manufacturer、ProductName等。

    如果需要增加开机启动等,可以通过视图的机器选项修改。

    项目生成后,打包的安装程序就生成出来了,但安装后,桌面的快捷方式右键属性,快捷方式的目标会找不到文件,也不能从快捷方式直接点击“打开文件位置”。

    根据相关文章介绍,这是VS的问题,需要用其他工具修改下,可以用ORCA修改程序内部shortcut的Target的值。

    首先从File里找到FileName为需要启动的软件名称,复制File的值,如这里的_BFCE93....

    复制值后,找到Shortcut,把Name为复制的快捷方式名称的Target属性的值修改为刚才复制的值,并且以[#开始,]结尾

    比如这里修改Target的值为[#_BFCE93CC00B349D7987888F5F4FCBF8E],修改完成后保存,然后再重新安装打包好的安装程序,现在桌面的快捷方式就能定位到具体的启动程序了。

  • 相关阅读:
    [leetcode] 17. 电话号码的字母组合
    C++17 Fold Expressions
    多线程----NSOperation
    CGD---1--开辟并发新线程
    彻底解决_OBJC_CLASS_$_某文件名", referenced from:问题(转)
    ios 内存使用陷阱 和imageNamed 、imageWithContentsOfFile:(转)
    (转)unbalanced calls to begin/end appearance transitions for uiviewcontroller的解决方法
    ios开发种证书
    使用CAShapeLayer与UIBezierPath画出想要的图形
    定位子字符串的位置
  • 原文地址:https://www.cnblogs.com/Lawson/p/2829108.html
Copyright © 2020-2023  润新知