Wix 使用总结(续)--关于Feature和Component的状态判断安装过程(转)
安装过程中,有时候需要根据用户的设置来进行不同的安装,其中一个方面就是根据用户选择安装的Feature或者Component,来判断下一步的操作。
Wix中提供了相关的判断方法和内置的状态值。
Prepending some special characters to the names will give them extra meaning:
% environment variable (name is case insensitive)
$ action state of component
? installed state of component
& action state of feature
! installed state of feature
The last four can return the following integer values:
-1 no action to be taken
1 advertised (only for components)
2 not present
3 on the local computer
4 run from the source
A few examples to make things clearer:
(&FeatureName = 3) AND NOT (!FeatureName = 3)
Run action only if the product will be installed locally. Do not run action on a reinstallation.
The term &FeatureName = 3 means the action is to install the feature locally.
The term NOT (!FeatureName = 3) means the feature is not installed locally.
(&FeatureName = 2) AND (!FeatureName = 3)
Run action only if the feature will be uninstalled.
This condition only checks for a transition of the feature from an installed state of local to the absent state.
(?ComponentName = 3) AND ($ComponentName = 2 OR $ComponentName = 4)
Run action only if the component was installed locally, but is transitioning out of state.
The term ?ComponentName = 3 means the component is installed locally.
The term $ComponentName = 2 means that the action state on the component is absent.
The term $ComponentName = 4 means that the action state on the component is run from source. Note that an action state of advertise is not valid for a component.
?ComponentName = $ComponentName
Run action only on the reinstallation of a component.
原文链接:http://blog.csdn.net/salever/article/details/4820931
Wix 使用总结(续)--关于Feature和Component的状态判断安装过程(转)的更多相关文章
- Wix打包系列(七) 添加系统必备组件的安装程序
原文:Wix打包系列(七) 添加系统必备组件的安装程序 我们知道在vs的打包工程中添加系统必备组件是一件很容易的事情,那么在wix中如何检测系统必备组件并在安装过程中安装这些组件.这里以.Net Fr ...
- Installshield设置feature为必须选中状态,即必定安装状态
原文:Installshield设置feature为必须选中状态,即必定安装状态 上一篇: 解决卸载时残留目标文件夹的问题Installation Designer --> Organizati ...
- 【HDU - 1429】胜利大逃亡(续) (高级搜索)【状态压缩+BFS】
Ignatius再次被魔王抓走了(搞不懂他咋这么讨魔王喜欢)…… 这次魔王汲取了上次的教训,把Ignatius关在一个n*m的地牢里,并在地牢的某些地方安装了带锁的门,钥匙藏在地牢另外的某些地方.刚开 ...
- 解释一下核主成分分析(Kernel Principal Component Analysis, KPCA)的公式推导过程(转载)
KPCA,中文名称”核主成分分析“,是对PCA算法的非线性扩展,言外之意,PCA是线性的,其对于非线性数据往往显得无能为力,例如,不同人之间的人脸图像,肯定存在非线性关系,自己做的基于ORL数据集的实 ...
- 核主成分分析(Kernel Principal Component Analysis, KPCA)的公式推导过程
KPCA,中文名称”核主成分分析“,是对PCA算法的非线性扩展,言外之意,PCA是线性的,其对于非线性数据往往显得无能为力,例如,不同人之间的人脸图像,肯定存在非线性关系,自己做的基于ORL数据集的实 ...
- Wix打包系列(一)如何使用wix制作安装程序
原文:Wix打包系列(一)如何使用wix制作安装程序 最近由于项目需要,需要给客户制作安装程序,一开始使用vs2005自带的打包工程来打包,但用了一段时间发现vs打包太死板,而且使用起来问题很多.收费 ...
- Android自动化学习笔记之MonkeyRunner:官方介绍和简单实例
---------------------------------------------------------------------------------------------------- ...
- monkeyrunner功能函数
MonkeyRunner Command Summary 1. #导入模块; from com.android.monkeyrunner import MonkeyRunner, MonkeyD ...
- android 自动化(1)
学习android自动化测试要感谢一个朋友耐心的指导 环境搭建:(需要java JDK 以及android SDK) JDK:http://www.oracle.com/technetwork/jav ...
随机推荐
- git本地仓库管理远程仓库
git remote add origin https://xxxxxgit push -u origin master
- Unknown Entity namespace alias 'BaseMemberBundle'.
$em = $this->getDoctrine()->getManager('member');//要记得写上member $repo = $em->getRepository(' ...
- matlab 代码加速
~ 使用 parfor 代替 for 1. 安装 Parallel Computing Toolbox, 使用 parfor代替for, 使用的是cpu多核,速度能提高三倍左右. ~ 在for循环中的 ...
- html ---- web sql 例子
<!doctype html> <html> <head> <meta charset="utf-8"> <script> ...
- 【LeetCode】 数相加组合 Combination Sum
描述 Given a set of candidate numbers (candidates) (without duplicates) and a target number (target), ...
- 每天一个Linux命令(32)date命令
date命令是显示或设置系统时间与日期. (1)用法: 用法: date [选项] [参数] (2)功能: 功能: 根据指定格式显示 ...
- Vim 替换命令
一,":substitute"的使用 :substitute 命令可以对一个指定范围的区域执行替换操作,可以简写为:s ,它的通用形式如下: :[range]substitute/ ...
- <linux是怎么跑的?>傻瓜视角看linux引导启动过程
每天开机关机,除了“等”之外,你得了解你的操作系统开机的时候真正做了什么? 一. 书上都是这么讲的 CPU自身初始化:硬件初始工作,以PC/IP寄存器跳转到BIOS首地址为结束标志. ->加电自 ...
- 英语发音规则---oo
英语发音规则---oo 一.总结 一句话总结: 1.重读音节词尾的字母组合oo发音素[u:]的音? too [tu:] adv.太;也 zoo [zu:] n.动物园 room [ru:m] n.房间 ...
- 八 Django框架,模板语言
模板语言就是可以将动态数据在html模板渲染的语言 一.接收值渲染 locals()函数,写在请求响应render()函数里,可以将逻辑处理函数里的变量传到html用模板语言渲染 {{...}}接收一 ...