我使用wix創建了一個安裝程序,並且在寫入註冊表時遇到問題。這是我的RegistryValue元素:Wix v3.7 - 寫入註冊表值時出錯
<Component Id="CMP_odbcreg" Guid="{115B002E-F4C9-48CD-8E1C-E8803B16AE69}">
<RegistryValue Id="rg_psql"
Root="HKLM"
Key="SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers"
Name="PostgreSQL"
Value="Installed"
Type="string"
KeyPath="yes"
Action="write"/>
</Component>
沒有任何內容正在寫入註冊表。這個組件在我的主要安裝特性中,所以它應該總是寫入註冊表。我看了看我的日誌文件,發現這個:
MSI (s) (60:1C) [00:00:07:080]: Doing action: WriteRegistryValues
MSI (s) (60:1C) [00:00:07:080]: Note: 1: 2205 2: 3: ActionText
Action 0:00:07: WriteRegistryValues. Writing system registry values
Action start 0:00:07: WriteRegistryValues.
WriteRegistryValues: Key: Writing system registry values, Name: , Value:
Action ended 0:00:07: WriteRegistryValues. Return value 1.
我不知道如果我解釋是正確的,但似乎沒有什麼是被寫入到註冊表的。我有幾個使用heat生成的其他組件,這些組件除了CMP_odbcreg之外還應該執行。我檢查了我的Windows註冊表並確認沒有值正在寫入。
我有一個wix手冊,其中包含寫入註冊表的示例。我嘗試複製並粘貼到我的安裝程序中,並將其添加到主要安裝功能中。這也沒有工作要麼
請幫助!