WIX Heat,通过Heat更改子目录的名称?

WIX Heat,通过Heat更改子目录的名称?,wix,wix3.5,Wix,Wix3.5,所以我使用Wix来安装我的应用程序,它工作得很好,可以做我需要的一切。我现在面临的一个问题是这个。我在VS 2010预构建事件命令中使用以下命令行参数: heat.exe dir "C:\My Main Folder" -cg MyApplication -gg -scom -sreg -sfrag -dr APPLICATIONROOTDIRECTORY -var var.MyApplication -out "..\..\MyApplication.wxs" 我的问题是生成的.wxs文件提

所以我使用Wix来安装我的应用程序,它工作得很好,可以做我需要的一切。我现在面临的一个问题是这个。我在VS 2010预构建事件命令中使用以下命令行参数:

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 Installer XML的开发人员Guid”一书来尝试找到解决方案,但没有找到任何解决方案。

具体取决于您的目标,我会尝试使用
-srd
来抑制根目录的生成,然后更改
-dr
参数以指向具有正确名称的目录


除此之外,我认为另一个简单的选项可能是XSL转换,您可以通过指定
-t
参数来使用它。

正如ChrisPatrick所建议的,您可以使用
-srd
来抑制根目录的生成,并使用您自己的
-dr

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

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

这就成功了。从没想过要抑制根目录的生成谢谢!同样对于那些和我使用同一本书的人来说,他们也有这个问题,因为你可以在52-56页找到这些信息