zoukankan      html  css  js  c++  java
  • C# Installer Projects 打包工具

    Installer Projects(Microsoft Visual Studio Installer Projects)
     
    vs => 菜单栏 => 工具 => 扩展和更新
    https://marketplace.visualstudio.com/items?itemName=VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects
     
    创建打包项目:
    新建项目 => 其他项目类型 => Visual Studio Installer  =>Setup Project
     
    文件夹说明:
    Application Folder:应用程序包含的文件设置。
    User's Desktop:用户桌面快捷方式设置。
    User's Programs Menu:用户启动菜单的快捷方式设置。
    Author = 作者
    Manufacturer = 公司名称
    ProductName = 应用程序名称
    InstallAllUsers = True 效果:“控制面板”程序中会显示公司的名称,安装时默认为“任何人”
     
    Application Folder (应用程序文件夹) 属性 DefaultLocation = [ProgramFilesFolder][Manufacturer][ProductName]
    对应名称:[系统主目][公司名][应用程序名称],安装时会创建两层的文件路径,需要删除 [Manufacturer]
     
    卸载功能实现:C:WindowsSystem32msiexec.exe
    添加msiexec.exe,创建快捷方式,并设置属性 Arguments=/x {1F9A0104-4787-42CE-ADF4-F1F4DD170399}
    利用系统提供的msiexec.exe,如何在卸载时将全部文件及目录都清除以及删除数据库文件

    msdn有这个参考  https://social.msdn.microsoft.com/Forums/windows/en-US/3b6d340e-fe68-4e96-8e24-6b49869dfe6b/msiexec-uninstall?forum=winformssetup
    msiexec/x {Product Code} " just as Cosmin Pirvu said and the msiexec.exe will help you to uninstall your applications.
    Command-Line Options:
    http://msdn.microsoft.com/en-us/library/aa367988.aspx
    UninstallApplication Function:
    http://msdn.microsoft.com/en-us/library/aa375095.aspx
    Or you can use custom action and override the Uninstall function:
    Installer.Uninstall Method:
    http://msdn.microsoft.com/en-us/library/system.configuration.install.installer.uninstall.aspx
     
    添加依赖文件添加注册表项目
    通过选中安装程序项目,然后右键,在弹出的菜单里面找到【View】,即可以添加注册表项目,按照提示一步一步操作即可。
    另外有些打包的程序,需要在安装前或者安装后做一些额外的操作,都可以通过自定义操作来实现,如主程序安装好了以后,还得安装一个windows服务程序,再安装另外一个自动升级程序,都可以通过这里来实现。
  • 相关阅读:
    JavaScript 原型和原型链 prototype
    javascript dom 表单元素之 radio
    JavaScript Dom 表单元素之 checkbox
    JavaScript DOM 表单元素之 select
    JavaScript-ECMAScript 之模块
    Javascript--ECMAScript 之 this
    Javascript-ECMAscript--Array.prototype.slice() 方法
    JavaScript -ECMAScriopt: Array.prototype.slice.call()详解及转换数组的方法
    JavaScript-ECMASCript apply call bind
    requests的深入刨析及封装调用
  • 原文地址:https://www.cnblogs.com/rickyliu/p/11904245.html
Copyright © 2011-2022 走看看