2012-04-22 78 views
0

配置firebreath產生的維克斯文件,以接受更多的文件,但沒有成功配置維克斯添加相關DLL的firebreath插件

<!-- Put Additional files here: --> 
    <!-- example:--> 
    <Component Id="test" Guid="{104ca7b7-f654-481f9f6a-9a5b5a39c93b}"> 
     <File Id="test" KeyPath="yes" Source="C:\location\test.dll" /> 
    </Component> 


    <Feature Id="MainPluginFeature" Title="${FBSTRING_ProductName}" Level="1"> 
     <ComponentRef Id="InstallDirComp"/> 
     <ComponentRef Id="PluginNameDirComp"/> 
     <ComponentRef Id="CompanyDirComp"/> 
     <ComponentGroupRef Id="PluginDLLGroup"/>   
     <ComponentRef Id="test"/> 
    </Feature> 

錯誤:錯誤8錯誤LGHT0204:ICE38:組件測試安裝到用戶 個人資料。它必須使用HKCU下的註冊表項作爲其KeyPath,而不是 文件。

我曾嘗試以下,但已經在錯誤的結束了,

  • 改變GUID回*
  • 添加目錄= INSTALLDIR到組件
  • 移動組件目錄
  • 之外

我嘗試閱讀各種論壇和Wix文檔沒有太大的幫助。我錯過了什麼?

回答

2

要解決,你需要添加一個虛擬註冊表項,並設置ICE38文件的KeyPath="no"

<Component Id="test" Guid="{104ca7b7-f654-481f9f6a-9a5b5a39c93b}"> 
    <File Id="test" KeyPath="no" Source="C:\location\test.dll" /> 
    <Registry Root=」HKCU」 KeyPath=」yes」 … /> 
</Component> 
+0

錯誤CNDL0010:註冊表/ @關鍵屬性沒有被發現;這是必需的。 – Yeshvanthni 2012-04-22 05:29:08

+0

「虛擬」註冊表鍵似乎暗示我不必實際定義鍵 – Yeshvanthni 2012-04-22 05:31:47

+0

我的意思是虛擬鍵意味着「創建任何非重要鍵」。如果不需要,我不會提及它。 __您需要填寫「註冊表」的「...」部分我不知道您的WiX腳本的其餘部分,因爲您沒有發佈它。在上面的腳本中應該有其他Firebreath生成的組件,其中包含可以作爲示例引用的'Registry'元素。 – 2012-04-22 16:59:22