2011-04-18 21 views
6

How do I pass msiexec properties to a WiX C# custom action?'u okudum, ancak soruma cevap vermedi, ya da belki de yanlış yaptığımı görmüyorum. Yükleme paketim yüklenemedi ve günlükler mülkümün özel eylemler koleksiyonunda bulunmadığını söylüyor. Benim kodudur:, özellikleri WiX özel eylemine iletemez

<CustomAction Id="SetCustomActionDataValue" Return="check" Property="Itp.Configurator.WixCustomAction" Value="G=G2" /> 
    <CustomAction Id="CreateDatabase" BinaryKey="Binary1" DllEntry="CreateDatabase" Execute="deferred" Return="check" /> 
    <InstallExecuteSequence> 
     <Custom Action='SetCustomActionDataValue' After="InstallFiles"/> 
     <Custom Action='CreateDatabase' After="SetCustomActionDataValue"> 
      NOT Installed AND NOT PATCH 
     </Custom> 
    </InstallExecuteSequence> 

Ve kod özel eylemdir iç:

string Property1 = session.CustomActionData["G"]; 

cevap

6

ilk elemanın özelliğin adı ertelenmiş özel eylem sen' adıyla tam olarak aynı olmalıdır d değeri geçmek ister. Bu nedenle, ertelenmiş eylem CreateDatabase ise, ilk öğe şu şekilde görünmelidir:

<CustomAction Id="SetCustomActionDataValue" Return="check" Property="CreateDatabase" Value="G=G2" />