Actions personnalisées synchrones et asynchrones
Windows Installer traite les actions personnalisées comme un thread distinct de l’installation principale. Pendant l’exécution synchrone d’une action personnalisée, le programme d’installation attend que le thread de l’action personnalisée soit terminé avant de poursuivre l’installation principale. Pendant l’exécution asynchrone, le programme d’installation exécute l’action personnalisée simultanément avec la poursuite de l’installation en cours. Les auteurs d’actions personnalisées doivent donc connaître tous les threads asynchrones pouvant apporter des modifications à la base de données d’installation entre les appels de fonction.
Les appels à MsiGetTargetPath et MsiSetTargetPath en particulier, doivent être évités dans les actions personnalisées asynchrones. Utilisez plutôt MsiGetProperty pour obtenir un tracé cible. Les opérations de base de données en bloc telles que les opérations d’importation, d’exportation et de transformation doivent être évitées dans tout type d’action personnalisée.
Des drapeaux d’options peuvent être définis dans le champ Type de la table CustomAction pour spécifier si les threads de l’action principale et de l’action personnalisée s’exécutent de manière synchrone ou asynchrone. ConsultezOptions de traitement du retour d’action personnalisée.
Le programme d’installation peut uniquement exécuter les actions personnalisées de restauration et les actionsd’installation simultanée en tant qu’actions personnalisées synchrones.