2010-09-20 4 views
6

Maintenant, j'utiliser quelque chose comme ceci:Ajouter une valeur de registre multiString en utilisant 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> 

Mais je l'erreur suivante:

La "reg<key>" clé primaire est reproduite dans le tableau « registre ». Veuillez supprimer l'une des entrées ou renommer une partie de la clé primaire pour éviter la collision.

RÉPONSE: Après Yan's réponse mon xml ressemble:

<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, si lourd !! enfin trouvé une solution de travail! Je n'étais pas capable de réaliser comment utiliser multistring. – sergtk

+1

En fait, tous les attributs des balises MultiStringValue n'ont aucun effet. – galinette

Répondre

5

En fait, tout ce qu'il a besoin d'être est la suivante:

<RegistryValue Type="multiString" Name="Value Name"> 
    <MultiStringValue>1</MultiStringValue> 
    <MultiStringValue>2 &lt; 3</MultiStringValue> <!-- Stands for 2 < 3 --> 
    <MultiStringValue>33</MultiStringValue> 
</RegistryValue> 
Questions connexes