2014-10-27 43 views
1

我在嘗試使用自定義操作在卸載前添加非常長的註冊表值時出現錯誤。如何在wix安裝程序的自定義操作中添加非常長的十六進制註冊表?

<CustomAction Id="InsertValue" Return="check" Execute="deferred" Impersonate="no" Directory="INSTALLDIR" ExeCommand="&quot;reg add HKEY_CURRENT_USER\Software\Intel\Display\igfxcui\HotKeys&quot; /v 9530 /t REG_BINARY /d <REALLY LONG HEXADECIMAL VALUE>"/> 

值上安裝刪除,我需要把它寫在卸載過程中回來,但該值超過255個字符,以便它給我一個字符串溢出錯誤。

還有什麼其他的選擇,我必須寫入如此長的值到註冊表中?

回答

5

試試看看這個代碼。這是從wix寫入註冊表的正確方法。

<RegistryKey Root="HKCU" 
       Key="SOFTWARE\Intel\Display\igfxcui\HotKeys"> 
     <RegistryValue Name="9530" 
         Action="write" 
         Value="LONG HEXADECIMAL VALUE" 
         Type="binary" 
         KeyPath="yes" /> 
     </RegistryKey> 

你應該在一個組件標籤之間寫這個。

相關問題