2010-07-21 127 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的答案來解決這個問題。