Bibliothèque de liens dynamiques (Windows Installer)
Une action personnalisée peut appeler une fonction définie dans une DLL (bibliothèque de liens dynamiques) écrite en C ou C++. La DLL peut exister sous forme de fichier installé durant l’installation actuelle ou sous forme de flux binaire temporaire provenant de la table Binary de la base de données d’installation.
Notez que toutes les fonctions appelées, notamment les actions personnalisées dans les DLL, doivent spécifier la convention d’appel __stdcall. Par exemple, pour appeler CustomAction, utilisez ce qui suit.
#include <windows.h>
#include <msi.h>
#include <Msiquery.h>
#pragma comment(lib, "msi.lib")
UINT __stdcall CustomAction(MSIHANDLE hInstall)
Pour plus d’informations, consultez Accès à la session actuelle du programme d’installation à partir d’une action personnalisée
Les types d’action personnalisée suivants appellent une bibliothèque de liens dynamiques.
Type d’action personnalisée | Description |
---|---|
Type d’action personnalisée 1 | Fichier DLL stocké dans un flux de table Binary. |
Type d’action personnalisée 17 | Fichier DLL installé avec un produit. |
Notes
Pour utiliser COM, vous devez appeler CoInitializeEx dans l’action personnalisée. Ne quittez pas si vous constatez que le thread a déjà été initialisé. Par exemple, le thread est initialisé dans une installation par machine, mais pas dans une installation par utilisateur.
Consultez Liste récapitulative de tous les types d’action personnalisée pour obtenir un récapitulatif de tous les types d’action personnalisée ainsi qu’une description de la façon dont ils sont codés dans la table CustomAction.