Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
2.来自一个WiX Voctive项目的msi文件_Wix_Windows Installer_Votive - Fatal编程技术网

2.来自一个WiX Voctive项目的msi文件

2.来自一个WiX Voctive项目的msi文件,wix,windows-installer,votive,Wix,Windows Installer,Votive,正如标题所说,我想从一个项目中输出2.msi文件(一个是每个用户的,另一个是每台机器的)。我在线程中看到,它不能以某种传统的方式完成,但也许有一种方法可以在后期构建中实现 我只需要在原始构建之后重新运行编译和链接,并稍微更改命令行(实际上,我只需要不同的Product.wxs文件)。然而,我的light和candle命令行非常庞大,如果我硬编码它们,我将冒着使项目难以维护的风险 所以,总而言之,我需要知道是否有一种方法可以编写一个命令行,该命令行在创建其构建命令行时的行为与Voctive相同(获

正如标题所说,我想从一个项目中输出2.msi文件(一个是每个用户的,另一个是每台机器的)。我在线程中看到,它不能以某种传统的方式完成,但也许有一种方法可以在后期构建中实现

我只需要在原始构建之后重新运行编译和链接,并稍微更改命令行(实际上,我只需要不同的
Product.wxs
文件)。然而,我的light和candle命令行非常庞大,如果我硬编码它们,我将冒着使项目难以维护的风险

所以,总而言之,我需要知道是否有一种方法可以编写一个命令行,该命令行在创建其构建命令行时的行为与Voctive相同(获取项目中的所有文件,链接它们,传递项目依赖项…),仅在后期构建中


备注:我还想到了从Voctive获取整个命令行,并且只更改产品文件,这也会有所帮助,因此如果有人对如何操作有建议…

为您的解决方案/项目创建多个配置,并为其中一个配置将预处理器变量设置为某个值。在wix源代码中,根据预处理器变量,有条件地包括任何需要包括的内容

是的,这当然是一种方法,但我们希望避免创建另一个项目。然而,我刚才所做的是更改
Product.wixobj
,只重新运行链接部分,编辑起来就不那么痛苦了。现在,我已经入侵了一个项目,它可以生成2个
.msi
文件,但代价是维护更困难。我将看到改变某些事情有多么困难,并决定是否最好保持这种方式。