action1Comment puis-je définir une propriété MSI à partir d'une action personnalisée C#, pour l'instant j'ai ceci mais comment puis-je obtenir le handle?MsiSetProperty à partir de l'action personnalisée C#
[DllImport("msi.dll", CharSet = CharSet.Unicode)]
static extern int MsiSetProperty(IntPtr hInstall, string szName, string szValue);
public void SetProperty(string propertyName, string propertyValue)
{
MsiSetProperty(handle, propertyName, propertyValue);
}
J'appelle le CA de WiX avec la ligne suivante
<CustomAction Id="CA1" BinaryKey="ca1.dll" DllEntry="action1" />
et l'action1 ressemble à ceci
public class CustomActions
{
[CustomAction]
public static ActionResult action1(Session session)
{
session.Log("Begin action1");
SetProperty("xyz", "123");
}
}
Créez-vous une bibliothèque d'actions personnalisées C# en utilisant les modèles WiX? – fletcher
Oui, je suis. (ne peut pas poster moins de 15 caractères, est-ce que cela va.) –
Pouvez-vous afficher les fonctions que vous appelez de WiX? Ceux avec l'attribut [CustomAction]. J'essaie juste de m'assurer que vous écrivez les actions personnalisées comme je pense que vous êtes ... Ces fonctions devraient avoir la signature suivante: public static ActionResult (session de session) –
fletcher