自定义cs程序安装界面
http://www.crifan.com/achieve_fixed_install_path_while_install_software_when_make_msi_installer/
制作C#的msi的Installer时候,固定安装路径,不需要用户选择路径
【问题】
在用VS2010给一个C#写的DLL插件制作msi的installer的时候,其中msi安装程序的安装路径是根据WLW的路径决定好了的,所以需要固定此安装路径,而且不需要,也不希望用户去更改。
即,如果制作出一个安装包,安装过程中,不需要,也不希望用户更改安装路径。
【解决过程】
1. 此问题百度了一番,没找到结果。
2.去google中搜对应的英文msi fixed install path,结果好像是一堆人提到用其他配置文件,还需要自己写对应的代码来实现对应的安装等等,很复杂的做法。不适用于我此处,所创建安装部署项目,此处只是简单的,使用对应的文件系统,注册表等,设置对应的值,添加对应的文件即可的那种。
3.一直没找到有效的办法。
最接近成功的一次,是上次发现了,原来在VS2010中,通过视图->编辑器,还可以打开“用户界面”的窗口的:

然后去用户界面中,倒腾了一番,也还是没找到如何设置的,只找到了每一步中,可以设置对应的bitmap,和我要的,如何固定安装路径,没关系。
4.后来某次折腾过程中,突然发现,好像是可以删除掉其中默认的“安装文件夹”这一步的,然后就去分别删除了两个模式下的安装文件夹:

就可以去项目->安装:

测试具体的安装效果了:
第一步是欢迎界面:

接着是确认的界面:

即,通过删除对应的“安装文件夹”的那一步骤后,就真正实现了,安装过程中,不需要,也不希望用户去更改安装路径的效果了。
最后是安装完成的界面:

5. 接着,发现对于确认安装这一步骤,也是可以去掉的,本来也没啥用。
所以又去删除对应的“确认安装”这一步:

然后再去测试一下,结果整个安装过程,就的确只剩,欢迎界面,和最后安全完毕的确认界面了,完全达到了预期的效果。
自定义cs程序安装界面的更多相关文章
- 以前编写的inno setup脚本,涵盖了自定义安装界面,调用dll等等应用 (转)
以前编写的inno setup脚本,涵盖了自定义安装界面,调用dll等等应用 (转) ; Script generated by the Inno Setup 脚本向导. ; SEE THE DOCU ...
- InstallShield自定义安装界面
原文:InstallShield自定义安装界面 版权声明: 可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息. 前言: 对于一些InstallShield用户或企业,对于安装包界面除了 ...
- Wix 安装部署教程(三)自定义安装界面和行为
接上一篇自定义安装界面,这篇继续探索,首先介绍下,Wix为我们定义了五种风格,每种风格的UI都是有一定顺序的.我们可以改变安装顺序,也可以完全自定义一个Dialog插入其中.比如Wix_Mondo 风 ...
- Inno Setup自定义安装界面脚本
; 脚本由 Inno Setup 脚本向导 生成! ; 有关创建 Inno Setup 脚本文件的详细资料请查阅帮助文档! #define MyAppName "RemoteCard&quo ...
- Wix 安装部署教程(九) --用WPF做安装界面
经常安装PC端的应用,特别是重装系统之后,大致分为两类.一类像QQ,搜狗输入法这样的.分三步走的:第一个页面可以自定义安装路径和软件许可.第二个页面显示安装进度条,第三个页面推荐其他应用.先不管人家怎 ...
- BI如何实现用户身份集成自定义安全程序开发
统一身份认证是整个 IT 架构的最基本的组成部分,而账号则是实现统一身份认证的基础.做好账号的规划和设计直接决定着企业整个信息系统建设的便利与难易程度,决定着系统能否足够敏捷和快速赋能,也决定了在数字 ...
- 在windowService用Process.Start()启动程序没有界面-记录
1.在服务程序安装时编程实现,ProjectInstaller.cs using System; using System.Collections; using System.Collection ...
- Wix 安装部署教程(十) --来,用WPF做个漂亮的安装界面
在上一篇中曾留下两个问题,.Net捆绑安装不触发以及路径选择的问题现在都已经解决,这段时间花的最多的地方还是WPF调样式上面,奈何WPF功力不够,暂时还是没有达到自己想要的效果.另外ViewModel ...
- .Net 自定义应用程序配置
.Net 自定义应用程序配置 引言 几乎所有的应用程序都离不开配置,有时候我们会将配置信息存在数据库中(例如大家可能常会见到名为Config这样的表):更多时候,我们会将配置写在Web.config或 ...
随机推荐
- Vulhub-DC-1靶场
前言: DC-1靶场是Vulhub系一款渗透测试的实战靶场,拥有五个Flag.本篇博客讲述了如何拿去这五个Flag,并详细描述其中的注意点. 实验环境: 虚拟机环境:virtualbox 虚拟机1:D ...
- Mysql数据库优化(1)
1.尽量不要留null select id from t where num is null,可以,但尽量不要留null,null也占空间:使用not null填充数据库,像varchar(100)这 ...
- 关于XSS简单介绍与waf bypass的一些思路整理
很久没写东西了,今天整理一点儿思路 简单说一下XSS XSS(cross site script)即跨站脚本,侧重于"脚本"这一层概念,是一种常见web安全漏洞.攻击者通过往web ...
- STP规则
1)每个网络的有且只有一个桥根 2)每个非桥根有且只有一个根端口: 3)每条链路有且只有一个指定端口: 4)根桥的所有端口均为指定端口: 5)根端口和指定端口都是forwading: 6)阻塞端口为B ...
- python关于多级包之间的引用问题
首先得明确包和模块. 包:在一个目录下存在__init__.py,那么该目录就是一个包. 模块:一个.py文件就是一个模块. 我们可以通过from 包 import 模块来引入python文件, 也可 ...
- 基础篇:一文讲懂树莓派命令行文本编辑工具Vim的使用
简介 众所周知,在Linux系统下的命令行调试界面,经常会遇到需要文本编辑的情况,而树莓派官方系统默认自带了Nano编辑器,Nano的操作门槛更低,但却不如Vim编辑器方便.Vim编辑器是由早期在Li ...
- wpf Button 动态改变效果
<Button x:Name="LearnMore" Grid.Row="6" HorizontalAlignment="Left&quo ...
- uwp 之后台音频
C# code 后台任务 ---------------------------- public sealed class BgTask : IBackgroundTask { #region 私有字 ...
- C#设计模式---观察者模式(Observer Pattern)
一.目的 提供一种一对多的关系,当主题发生变化时候,可以通知所有关联的对象. 二.定义 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,这个主题对象在状态发生变化时,会通 ...
- linux 常用命令(三)——(centos7)MySql 5.7添加用户、删除用户与授权
一.创建用户:以root用户登录到数据库进行用户创建 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 例如: CREATE US ...