Table MsiEmbeddedChainer
Utilisez cette table pour créer une installation à plusieurs packages. Chaque ligne de la table MsiEmbeddedChainer fait référence à une fonction définie par l’utilisateur différente qui peut être utilisée pour installer plusieurs packages du programme d’installation Windows à partir d’un seul package. Les fichiers exécutables pour les fonctions définies par l’utilisateur sont stockés dans le package du programme d’installation Windows.
Programme d’installation Windows 4.0 ou versions antérieures : non pris en charge. Cette table est disponible à partir du programme d’installation Windows 4.5.
Windows Server 2008 R2 avec le rôle Services Bureau à distance activé : non pris en charge. Une installation à plusieurs packages à l’aide de la table MsiEmbeddedChainer échoue si le rôle Services Bureau à distance est activé.
Pour installer plusieurs packages à partir d’un seul package, l’une des fonctions définies par l’utilisateur répertoriées dans la table MsiEmbeddedChainer doit avoir une instruction conditionnelle dans le champ Condition qui évalue l’exécution de l’action. Si plusieurs fonctions ont une condition qui évalue à s’exécuter, une seule fonction peut s’exécuter. Ce cas est une erreur et il ne peut pas être garanti que la fonction s’exécutera. Si d’autres actions personnalisées sont nécessaires à l’installation, celles-ci doivent être créées dans la table CustomAction et les tables de séquence.
Les fonctions doivent joindre l’installation actuelle en appelant la fonction MsiJoinTransaction et appeler la fonction MsiEndTransaction pour valider l’installation de plusieurs packages. Si les fonctions sont retournées avant d’appeler MsiEndTransaction, le programme d’installation restaure toutes les installations.
La table MsiEmbeddedChainer contient les colonnes suivantes.
Colonne | Type | Clé | Nullable |
---|---|---|---|
MsiEmbeddedChainer | Identificateur | O | N |
Condition | Condition | N | O |
CommandLine | Mis en forme | N | O |
Source | CustomSource | N | N |
Type | Integer | N | N |
Colonnes
-
MsiEmbeddedChainer
-
Clé primaire de la table. Cette valeur est un identificateur unique pour la fonction définie par l’utilisateur décrite par cette ligne.
-
Condition
-
Instruction conditionnelle pour l’exécution de la fonction définie par l’utilisateur. Vous pouvez activer ou désactiver les fonctions répertoriées dans la table MsiEmbeddedChainer à l’aide d’une transformation qui modifie les valeurs de propriété évaluées par ce champ. Pour plus d’informations, consultez Utilisation de propriétés dans les instructions conditionnelles.
-
CommandLine
-
La valeur de ce champ fait partie de la chaîne de ligne de commande passée au fichier exécutable identifié dans la colonne Source. Le programme d’installation ajoute la valeur de ce champ au descripteur de transaction pour générer la ligne de commande. Si la valeur de cette colonne est null, la ligne de commande se compose uniquement du descripteur de transaction.
-
Source
-
Emplacement du fichier exécutable pour la fonction définie par l’utilisateur. Si la valeur de la colonne Type est 2, cette colonne peut contenir une clé externe dans la table Binaire. Si la valeur de la colonne Type est 18, cette colonne peut contenir une clé externe dans la table Fichier. Si la valeur de la colonne Type est 50, cette colonne peut contenir une clé externe dans la table Propriété.
-
Type
-
Les fonctions répertoriées dans la table MsiEmbeddedChainer sont décrites à l’aide des types numériques d’action personnalisée suivants. Cette colonne peut contenir les valeurs des trois types numériques suivants uniquement : toute autre combinaison d’indicateurs d’action personnalisé est ignorée.
Type d’action personnalisée Indicateurs d’action personnalisée Valeur hexadécimale Decimal Type d’action personnalisée 2 msidbCustomActionTypeExe + msidbCustomActionTypeBinaryData 0x002 2 Type d’action personnalisée 18 msidbCustomActionTypeExe + msidbCustomActionTypeSourceFile 0x012 18 Type d’action personnalisée 50 msidbCustomActionTypeExe + msidbCustomActionTypeProperty 0x032 50
Notes
Le programme d’installation Windows n’empêche pas l’exécution des fonctions définies par l’utilisateur dans cette table pendant la publication de l’application. Vous pouvez utiliser une instruction conditionnelle dans la colonne Condition pour empêcher l’exécution d’une fonction pendant la publication.
Le programme d’installation Windows fournit également un gestionnaire d’interface utilisateur externe non incorporé pour créer une interface utilisateur enrichie sur le package du programme d’installation Windows. Pour plus d’informations sur l’utilisation d’un gestionnaire d’interface utilisateur externe, consultez Monitoring d’une installation à l’aide de MsiSetExternalUI.
La table MsiPackageCertificate répertorie les certificats de signature numérique utilisés pour vérifier l’identité des packages d’installation qui effectuent une installation à plusieurs packages. Vous pouvez utiliser cette table pour réduire le nombre de fois que votre installation à plusieurs packages affiche une invite de contrôle de compte d’utilisateur (UAC) qui nécessite une réponse d’un administrateur.