2013-02-26 39 views
2

所以我使用Wix来安装我的应用程序,它工作的很好,并且做了我需要的一切。我现在面临的一个问题就是这个。我使用下面的命令行参数在我的VS 2010预生成事件命令:WIX Heat,通过加热改变子目录的名字?

heat.exe dir "C:\My Main Folder" -cg MyApplication -gg -scom -sreg -sfrag -dr APPLICATIONROOTDIRECTORY -var var.MyApplication -out "..\..\MyApplication.wxs" 

我的问题是,所生成的文件.wxs给我下面的文件夹结构:

<Fragment> 
    <DirectoryRef Id="APPLICATIONROOTDIRECTORY"> 
     <Directory Id="dirB19DCB4311BD6C765579FE56A2C72DF8" Name="My Main Folder"> 

我的问题是,如果有一种方法可以通过一个可以改变“我的主文件夹”目录名称的参数,因为截至目前,我正在手动更改它,但这非常无效,并且使得我们不能一个自动构建过程。如果任何人有任何建议或地方,我可以看看这将是伟大的!现在我正在利用“WiX:开发人员指南到Windows安装程序XML”这本书来尝试找到解决方案,但没有找到任何东西。

回答

4

根据你准备做什么,我会试图使用-srd来禁止生成根目录,然后将参数-dr更改为指向具有正确名称的目录。

除此之外,我认为唯一的其他简单选项可能是XSL变换,您可以通过指定参数-t来使用该变换。

+0

该诀窍。从来没有想过要压制生成根目录谢谢!对于那些使用与我相同的书的人,如果发现这个问题,您可以在第52-56页找到这些信息 – Jimmy 2013-02-26 22:03:58

1

由于ChrisPatrick建议您可以使用-srd来禁止生成根目录并使用您自己的-dr

heat.exe dir "C:\My Main Folder" -srd -dr "DIRNAMEHERE" 

您可以在这里找到更多的信息,heat documentation