2016-11-28 87 views
0

我有一个应该增量构建的WiX项目。但是,每次构建Light.exe时都会运行它。Light.exe在没有变化时运行

看来,一些跟踪文件名为obj\x86\Debug中间文件夹中创建。一个文件:

MyProj.wixproj.BindContentsFileListnull.txt 

包含引用到是在Temp文件夹中的文件列表,这里有一个行:

C:\Users\MyUser\AppData\Local\Temp\p3qht4rl\cab_2_ConditionsInstaller\0 

当溶液重建,生成日志(在详细模式)说: :

Building target "Link" completely. 
Input file "C:\Users\MyUser\AppData\Local\Temp\fkzirn0a\cab_2_ConditionsInstaller\0" does not exist. 

我相信,因为该文件丢失,MsBuild决定它应该再次链接。这些是临时文件,所以我希望它们消失。每次构建后,BindContentsFileListnull.txt中的文件列表将更改为指向临时目录的新子文件夹中的相同文件。

其他wix项目我看起来不错,不保持重建。

我怎样才能解决这个问题呢?

light.exe的版本是:3.10.2516.0

更新

我已经找到了建造标志LeaveTemporaryFiles。如果我将它设置为真正的渐进式建筑,那么临时文件(大约40Mb)不会被清理。这并不是真的可以接受,但是在构建服务器时,我们在填充临时文件时出现问题,所以我们依靠每晚清理脚本的脚本。如果需要这些文件,它似乎应该位于中间文件夹而不是临时文件夹中,但我没有看到任何重定向它们的选项。

回答