Type d’action personnalisé 51
Cette action personnalisée définit une propriété à partir d’une chaîne de texte mise en forme.
Pour affecter une propriété utilisée dans une condition sur un composant ou une fonctionnalité, l’action personnalisée doit précéder l' action CostFinalize dans la séquence d’action.
Source
Le champ source de la table CustomAction peut contenir soit le nom d’une propriété, soit une clé de la table de propriétés. Cette propriété est définie par la chaîne mise en forme dans le champ cible à l’aide de MsiSetProperty.
Valeur de type
Incluez la valeur suivante dans la colonne type de la table CustomAction pour spécifier le type numérique de base.
| Constantes | Valeur hexadécimale | Decimal |
|---|---|---|
| msidbCustomActionTypeTextData + msidbCustomActionTypeProperty | 0x033 | 51 |
Cible
La colonne cible de la table CustomAction contient une chaîne de texte mise en forme à l’aide de la fonctionnalité spécifiée dans MsiFormatRecord (sans les spécificateurs de champ numérique). Les paramètres à remplacer sont placés entre crochets, [ ... ] et peuvent être des propriétés, des variables d’environnement (% prefix), des chemins d’accès de fichier (préfixe # ) ou des chemins d’accès de répertoire de composant ($ prefix).
Options de traitement des retours
L’action personnalisée n’utilise pas ces options.
Options de planification de l’exécution
Incluez les bits d’indicateur facultatifs dans la colonne type de la table CustomAction pour spécifier les options de planification de l’exécution. Ces options contrôlent l’exécution multiple des actions personnalisées. Pour obtenir une description des options, consultez options de planification de l’exécution des actions personnalisées.
In-Script les options d’exécution
L’action personnalisée n’utilise pas ces options.
Valeurs de retour
Consultez valeurs de retour de l’action personnalisée.
Notes
Si vous définissez une propriété privée dans la séquence d’interface utilisateur en créant une action personnalisée dans l’une des tables de séquence de l’interface utilisateur, cette propriété n’est pas définie dans la séquence d’exécution. Pour définir la propriété dans la séquence d’exécution, vous devez également placer une action personnalisée dans une table de séquence d’exécution. Vous pouvez également faire de la propriété une propriété publique et l’inclure dans la propriété SecureCustomProperties.