2010-02-11 13 views
5

Bir iletişim kutusunda düzenleme yapmak üzere Wix dosyasında bir özellik var. Aşağıdaki örnekte, "MyProperty" dir. Bu özellik bir kayıt defteri anahtarı oluşturmak için kullanılır. Ancak, iletişim kutusunda özellik değiştirilirse, değiştirilen değer kullanılmaz, ancak varsayılan olan: "SomeProperty". Ancak, özelliği başka bir iletişim kutusunda gösterirseniz, değer kullanıcının girdiği değer olarak görüntülenir.Wix: Yükleme sırasında iletişim kutusunda özellik değişikliği yoksayılır

Neyi yanlış yapıyorum?

<?xml version="1.0" encoding="utf-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 
    <Product Id="221ca977-6b1b-4737-a06a-14122f707173" Name="Name" Language="1033" Version="1.0.0.0" Manufacturer="Manu" UpgradeCode="29ad8ab9-e354-46fa-bafa-85cbea5ae526"> 
    <Package InstallerVersion="200" Compressed="yes" /> 
    <Media Id="1" Cabinet="media1.cab" EmbedCab="yes" /> 
    <Property Id="MyProperty" Value="SomeProperty" /> 
    <Directory Id="TARGETDIR" Name="SourceDir"> 
     <Component Id="RegistryEntries" Guid="8713D23C-1887-45C1-A90B-C8D0AAFFDA3D"> 
     <!-- This registry key is always "Software\SomeProperty" --> 
      <RegistryKey Id="Test" Root="HKLM" Key="Software\[MyProperty]" Action="createAndRemoveOnUninstall"/> 
     </Component> 
    </Directory> 
    <Feature Id="Feature1" Level="1" Title="Feature"> 
     <ComponentRef Id="RegistryEntries" /> 
    </Feature> 
    <UI> 
     <UIRef Id="WixUI_Common" /> 

     <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" /> 
     <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" /> 
     <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" /> 
     <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" /> 

     <DialogRef Id="DiskCostDlg" /> 
     <DialogRef Id="ErrorDlg" /> 
     <DialogRef Id="FatalError" /> 
     <DialogRef Id="FilesInUse" /> 
     <DialogRef Id="MsiRMFilesInUse" /> 
     <DialogRef Id="PrepareDlg" /> 
     <DialogRef Id="ProgressDlg" /> 
     <DialogRef Id="ResumeDlg" /> 
     <DialogRef Id="UserExit" /> 

     <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish> 
     <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="PropertySettingDlg">1</Publish> 

     <Publish Dialog="PropertySettingDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish> 
     <Publish Dialog="PropertySettingDlg" Control="Next" Event="EndDialog" Value="Return">1</Publish> 

     <Dialog Id="PropertySettingDlg" Width="370" Height="270" Title="PropertySettingDlg" TrackDiskSpace="yes"> 
     <Control Id="PropertyLabel" Type="Text" X="22" Y="52" Width="290" Height="13" Text="My Property" /> 
     <Control Id="Property" Type="Edit" X="22" Y="64" Width="150" Height="15" Property="MyProperty" /> 
     <Control Id="Back" Type="PushButton" X="192" Y="243" Width="56" Height="17" Text="!(loc.WixUIBack)" /> 
     <Control Id="Next" Type="PushButton" X="248" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)" /> 
     </Dialog> 
    </UI> 
    </Product> 
</Wix> 

cevap

8

Kişisel mülkiyet olması gerekir hem Public ve secure

<Property Id="MYPROPERTY" Value="SomeProperty" Secure="yes" /> 
+0

Başka bir Wix sorusunu yanıtlamayı denemek ister misiniz? http://stackoverflow.com/questions/19355537/wix-setting-install-folder-correctly/ –

+0

Hala benim için çalışmadı, @OP sizin için tamir etti mi? – Bishoy

2

public windows installer property'u kullanmanız gerektiğine inanıyorum. Genel özellikler tüm kapaklardır, ör. [MYPROPERTY].

+0

başka Wix soruya cevap denemek istiyor musunuz? http://stackoverflow.com/questions/19355537/wix-setting-install-folder-correctly/ –

İlgili konular