用.Net Mage工具更新WPF ClickOnce应用程序部署清单
Wpf程序在iis上发布后的文件结构。不像asp.net可以直接在服务器上修改网站目录的web.config文件或其他文件,wpf发布的结构是.application文件和一个Application Files目录,Application Files目录里存放了按发布版本建立的目录,每个目录里是真正的应用程序文件,只不过是都加上了.deploy扩展名。这里的每个文件都不能随意修改,例如要修改.exe.config.deploy中的数据库连接,那就需要在Visual Studio中重新编译程序,然后再发布。显然不可取。


好在微软提供了清单编辑和生成工具Mage,用这个可以解决这个问题。
打开发布的Application Files目录,进入当前发布版本目录(假设是41),把.application文件删除。

回到Application Files目录,当前发布目录41复制一份,目录名加1。

OK,这个新复制的42目录里的配置文件就随便改吧,.exe.config.deploy用记事本打开。
现在该mage上场了。打开新复制的42目录下的.manifest文件,注意这里仍显示的是41,我们就要在这个基础上进行加工。

把版本改成1.0.0.42。
选文件,"填充时为没有.deploy……"去掉勾,点填充。
保存,出现的签名选项,选择证书文件。

接下来打开发布根目录下的.application文件。

版本改成和刚才的.manifest文件一致1.0.0.42。
应用程序引用,选择清单,选新的42目录下的.manifest文件,

保存。选择证书文件,和前面的一致。
用.Net Mage工具更新WPF ClickOnce应用程序部署清单的更多相关文章
- WPF ClickOnce应用程序IIS部署发布攻略
WPF程序非常适合公司内网使用,唯一缺点就是客户端要安装.net框架4.0.优势也很明显,在客户端运行的是一个WinForm程序,自动下载,可以充分利用客户机的性能,而且是以当前的Windows用户权 ...
- 分析现有 WPF / Windows Forms 程序能否顺利迁移到 .NET Core 3.0
本文转自 https://blog.csdn.net/WPwalter/article/details/82859449 使用 .NET Core 3.0 Desktop API Analyzer 分 ...
- 在SoCEDS环境下编译和更新preloader和uboot程序的方法
在SoCEDS环境下编译和更新preloader和uboot程序的方法 前面有介绍preloader在HPS boot过程中的的作用,接下来讲述下用户在SoCEDS环境下改如何编译preloade ...
- WPF浏览器应用程序与JS的互调用(不用WebBrowser)
首先说些题外话,很久没有写博客了,空间里面的大部分文章还是11年写的.那时候刚毕业就来到这家公司,参与到一个Asp.net MVC的项目开发中,这个项目是一个全新的项目,连项目开发框架都没有,亏得领导 ...
- 一步一步部署WPF浏览器应用程序
WPF浏览器应用程序与Silverlight,Asp.net相比,同是发布到服务器,在IE中运行.WPF浏览器应用程序部署起来却相对困难. 相信很多朋友在第一次部署WPF浏览器应用程序时,都遇到&qu ...
- WPF触控程序的开发(一)——有用的资源
迟来的一篇博文,每次都要撞到月末,这个月实在太忙了,除了在公司上班,还接了个单子,用wpf做一个触屏软件,类似iphone的相册功能.先说搭建开发环境吧,我是不可能去买个平板来的,再说基于win7的程 ...
- 如何使Wpf浏览器应用程序被完全信任运行
原文地址链接:http://blogs.microsoft.co.il/maxim/2008/03/05/how-to-run-wpf-xbap-as-full-trust-application/ ...
- WPF触控程序开发(二)——整理的一些问题
上一篇(WPF触控程序开发)介绍了几个比较不错的资源,比较基础.等到自己真正使用它们时,问题就来了,现把我遇到的几个问题罗列下,大家如有遇到其他问题或者有什么好的方法还望赐教. 问题1.如何获取触控点 ...
- WPF 启动唯一程序(项目,exe,实例)
原文:WPF 启动唯一程序(项目,exe,实例) 描述:用户多次快速开启WPF程序的时候 只运行起来 一个 程序(exe) 其他多开的 进程 自动关闭掉 App.xaml.cs文件 protecte ...
随机推荐
- [CareerCup] 18.13 Largest Rectangle of Letters
18.13 Given a list of millions of words, design an algorithm to create the largest possible rectangl ...
- Effective STL(第7条)
第7条:如果容器中包含了通过new操作创建的指针,切忌在容器对象析构前将指针delete掉 //向一个vector中添加多个new出来的对象 void doSomething(){ vector< ...
- NVelocity+Bootstrap tab控件 异常之
异常信息:Encountered "tings" at line 54, column 55.Was expecting one of: "(" ... ...
- CNUOJ 2104 Day6-例3
http://privateoj.cnuschool.org.cn/oj/home/problem.htm?problemID=2104 题的网址 没什么好解释的,用DFS= = 最开始记着把f数组下 ...
- 浅谈Service
一.生命周期: startService()方式启动,Service是通过接受Intent并且会经历onCreate()和onStart().当用户在发出意图使之销毁时会经历onDestroy():( ...
- 最实用的IT类网站及工具大集合[转]
1.聚合数据 大家在开发过程中,可能会用到各种各样的数据,想找一些接口来提供一些数据.比如天气预报查询,火车时刻表查询,彩票查询,身份证查询等等.有了这个接口,直接调用即可.各种各样的API接口满足你 ...
- PHP 生成随机字符串与唯一字符串
说明:生成随机字符串用到的方法有 mt_rand() 生成唯一字符串用到的方法有 md5(),uniqid(),microtime() 代码: <?php /* * 生成随机字符串 * @par ...
- centos yum 使用笔记
yum 参数说明yum -y # 表示自动选择 基本使用# yum -y install 包名(支持*) :自动选择y,全自动# yum install 包名(支持*) :手动选择y or n# yu ...
- mvc 扩展htmlhelper
using System.Web.Mvc; namespace System.Web.Mvc{ public static class HtmlExtend { public ...
- 使用safe-rm替代rm
safe-rm主页: https://launchpad.net/safe-rm 一.下载safe-rm 二.解压文件,拷贝safe-rm到/usr/local/bin/目录下 三.建立软连接: #l ...