2010-09-20 24 views
6

Bây giờ tôi sử dụng một cái gì đó như thế này:Thêm giá trị đăng ký multiString bằng WiX?

<Component Id="RegistryEntries" Guid="<guid>" KeyPath="yes"> 
    <RegistryKey Root="HKCU" Key="<path>" Action="createAndRemoveOnUninstall"> 
    <RegistryValue Name="myStrings" Action="append" Type="multiString"> 
     1 
    </RegistryValue> 
    <RegistryValue Name="myStrings" Action="append" Type="multiString"> 
     2 
    </RegistryValue> 
    <RegistryValue Name="myStrings" Action="append" Type="multiString"> 
     3 
    </RegistryValue> 
    <RegistryValue Name="myString" Value="x" Type="string"/> 
    </RegistryKey> 
</Component> 

Nhưng tôi có lỗi tiếp theo:

Các chính chủ chốt "reg<key>" được nhân đôi trong bảng 'Registry. Vui lòng xóa một trong các mục nhập hoặc đổi tên một phần của khóa chính để tránh va chạm.

ĐÁP: Sau Yan's câu trả lời xml của tôi trông giống như:

<Component Id="RegistryEntries" Guid="<guid>"> 
    <RegistryKey Root="HKCU" Key="<path>" Action="createAndRemoveOnUninstall"> 
    <RegistryValue Name="myStrings" Action="append" Type="multiString"> 
     <MultiStringValue Name="myStrings" Action="append" Type="multiString"> 
     1 
     </MultiStringValue> 
     <MultiStringValue Name="myStrings" Action="append" Type="multiString"> 
     2 
     </MultiStringValue> 
     <MultiStringValue Name="myStrings" Action="append" Type="multiString"> 
     3 
     </MultiStringValue> 
    </RegistryValue> 
    <RegistryValue Name="myString" Value="x" Type="string"/> 
    </RegistryKey> 
</Component> 
+0

ohhh, vì vậy cồng kềnh !! cuối cùng đã tìm được giải pháp làm việc! Tôi đã không thể nhận ra làm thế nào để sử dụng multistring. – sergtk

+1

Thực ra, tất cả các thuộc tính của thẻ MultiStringValue đều không có hiệu lực. – galinette

Trả lời

5

Trên thực tế tất cả nó cần phải được là thế này:

<RegistryValue Type="multiString" Name="Value Name"> 
    <MultiStringValue>1</MultiStringValue> 
    <MultiStringValue>2 &lt; 3</MultiStringValue> <!-- Stands for 2 < 3 --> 
    <MultiStringValue>33</MultiStringValue> 
</RegistryValue> 
Các vấn đề liên quan