2010-07-21 92 views
4

WixUI_InstallDir中的默认目录始终为D :.我如何将其更改为目录C:?WIX:WixUI_InstallDir中的默认目录

它也没有显示我在.wxs文件中定义的目录结构。它只显示D:。它实际上应该显示'D:\ folder1 \ folder2'。这是为什么 ?我需要做什么来显示目录结构?

<Property Id="ROOTDRIVE"><![CDATA[C:\]]></Property> 
     <Directory Id="TARGETDIR" Name="SourceDir"> 
      <Directory Id="ProgramFilesFolder"> 
      <Directory Id='E' Name='E'> 
       <Directory Id="dirm" Name="E Mrch"> 
        <Component></Component> 
       </Directory> 
      </Directory> 
      </Directory> 
     </Directory> 
+0

你可以发布相关的XML,所以我们可以帮忙吗? – fletcher 2010-07-21 08:04:40

+0

我已经添加了XML.I能够使用rootdrive属性将默认驱动器更改为C:。但它仍未显示目录结构,即'C:\ programfiles \ EFI \ EFI Monarch'。它只显示C驱动器,即'C:'。我怎么做?如果系统根本没有'C'驱动器会发生什么? – sid 2010-07-21 17:32:55

+0

我刚学会的一件事(痛苦)是,如果使用ProgramFilesFolder,则ROOTDRIVE变得无关紧要,因为Program Files本身具有一个驱动器,当路径合并时,它将覆盖任何ROOTDRIVE设置。 – 2013-09-20 15:05:23

回答

15

您可以使用在产品定义以下属性:

<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/> 

INSTALLDIR可以像

<Directory Id="ProgramFilesFolder"> 
    <Directory Id="MySoftware" Name="MySoftware"> 
     <Directory Id="INSTALLDIR" Name="MyProduct"> 
     </Directory> 
    </Directory> 
    </Directory> 
</Directory> 
4

定义默认情况下,TARGETDIR(和ROOTDRIVE,但没有人使用了)默认到机器上最大的驱动器。请参阅ligget78的答案来解决这个问题。