MsiSetExternalUIA, fonction (msi.h)
La fonction MsiSetExternalUI active un gestionnaire d’interface utilisateur externe. Ce gestionnaire d’interface utilisateur externe est appelé avant le gestionnaire d’interface utilisateur interne normal. Le gestionnaire d’interface utilisateur externe a la possibilité de supprimer l’interface utilisateur interne en retournant une valeur différente de zéro pour indiquer qu’il a géré les messages. Pour plus d'informations, consultez À propos de l’interface utilisateur.
Syntaxe
INSTALLUI_HANDLERA MsiSetExternalUIA(
[in] INSTALLUI_HANDLERA puiHandler,
[in] DWORD dwMessageFilter,
[in] LPVOID pvContext
);
Paramètres
[in] puiHandler
Spécifie une fonction de rappel conforme à la spécification INSTALLUI_HANDLER .
[in] dwMessageFilter
Spécifie les messages à gérer à l’aide du gestionnaire de messages externes. Si le gestionnaire externe retourne un résultat différent de zéro, ce message n’est pas envoyé à l’interface utilisateur, mais le message est journalisé si la journalisation a été activée. Pour plus d’informations, consultez la fonction MsiEnableLog .
Valeur | Signification |
---|---|
|
Informations sur les fichiers utilisés. Lorsque ce message est reçu, une boîte de dialogue FilesInUse doit s’afficher. |
|
Arrêt prématuré de l’installation. |
|
Les messages d’erreur sont consignés. |
|
Les messages d’avertissement sont consignés. |
|
Les demandes de l’utilisateur sont journalisées. |
|
Les messages status qui ne sont pas affichés sont enregistrés. |
|
Demande de déterminer un emplacement source valide. |
|
Informations sur les fichiers utilisés. Lorsque ce message est reçu, une boîte de dialogue MsiRMFilesInUse doit s’afficher. |
|
L'espace disque est insuffisant. |
|
Le début des nouvelles actions d’installation est journalisé. |
|
L’enregistrement de données avec l’action d’installation est journalisé. |
|
Les paramètres d’initialisation de l’interface utilisateur sont consignés. |
|
Informations sur la barre de progression . Ce message contient des informations sur les unités jusqu’à présent et le nombre total d’unités. Pour obtenir une explication du format du message, consultez la fonction MsiProcessMessage . Ce message est envoyé uniquement à une interface utilisateur externe et n’est pas journalisé. |
|
S’il ne s’agit pas d’une installation silencieuse, l’interface utilisateur de base a été initialisée. S’il s’agit d’une installation complète de l’interface utilisateur , l’interface utilisateur complète n’est pas encore initialisée. Ce message est envoyé uniquement à une interface utilisateur externe et n’est pas journalisé. |
|
Si une interface utilisateur complète est utilisée, l’interface utilisateur complète est terminée. S’il ne s’agit pas d’une installation silencieuse, l’interface utilisateur de base n’est pas encore terminée. Ce message est envoyé uniquement à une interface utilisateur externe et n’est pas journalisé. |
|
Envoyé avant l’affichage de la boîte de dialogue complète de l’interface utilisateur . Ce message est envoyé uniquement à une interface utilisateur externe et n’est pas journalisé. |
|
L’installation du produit commence.
Le message contient les ProductName et ProductCode du produit. |
|
Installation des extrémités du produit.
Le message contient les valeurs ProductName, ProductCode et return du produit. |
[in] pvContext
Pointeur vers un contexte d’application passé à la fonction de rappel. Ce paramètre peut être utilisé pour la vérification des erreurs.
Valeur retournée
La valeur de retour est le gestionnaire externe précédemment défini, ou zéro (0) s’il n’y avait pas de gestionnaire défini précédemment.
Notes
Pour restaurer le gestionnaire d’interface utilisateur précédent, un deuxième appel est effectué à MsiSetExternalUI à l’aide de la INSTALLUI_HANDLER retournée par le premier appel à MsiSetExternalUI et en spécifiant zéro (0) pour dwMessageFilter.
Le gestionnaire d’interface utilisateur externe vers lequel pointe le paramètre puiHandler n’a pas un contrôle total sur l’interface utilisateur externe, sauf si MsiSetInternalUI est appelé avec le paramètre dwUILevel défini sur INSTALLUILEVEL_NONE. Si MsiSetInternalUI n’est pas appelé, le niveau d’interface utilisateur interne est INSTALLUILEVEL_BASIC par défaut. Par conséquent, tout message non géré par le gestionnaire d’interface utilisateur externe est géré par Windows Installer. Initial « Préparation de l’installation. . la boîte de dialogue . » apparaît toujours même si le gestionnaire d’interface utilisateur externe gère tous les messages.
MsiSetExternalUI doit être appelé uniquement à partir d’une application de démarrage . Vous ne pouvez pas appeler MsiSetExternalUI à partir d’une action personnalisée.
Notes
L’en-tête msi.h définit MsiSetExternalUI en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Spécifications
Client minimal pris en charge | Windows Installer 5.0 sur Windows Server 2012, Windows 8, Windows Server 2008 R2 ou Windows 7. Windows Installer 4.0 ou Windows Installer 4.5 sur Windows Server 2008 ou Windows Vista. Windows Installer sur Windows Server 2003 ou Windows XP. Pour plus d’informations sur le Service Pack Windows requis par une version de Windows Installer, consultez Configuration requise pour le runtime Windows. |
Plateforme cible | Windows |
En-tête | msi.h |
Bibliothèque | Msi.lib |
DLL | Msi.dll |