MsiApplyPatchW, fonction (msi.h)
Pour chaque produit répertorié par le package de correctifs comme pouvant recevoir le correctif, la fonction MsiApplyPatch appelle une installation et définit la propriété PATCH sur le chemin d’accès du package de correctifs.
Syntaxe
UINT MsiApplyPatchW(
[in] LPCWSTR szPatchPackage,
[in] LPCWSTR szInstallPackage,
[in] INSTALLTYPE eInstallType,
[in] LPCWSTR szCommandLine
);
Paramètres
[in] szPatchPackage
Chaîne terminée par null spécifiant le chemin d’accès complet au package de correctifs.
[in] szInstallPackage
Si eInstallType a la valeur INSTALLTYPE_NETWORK_IMAGE, ce paramètre est une chaîne null qui spécifie un chemin d’accès au produit à corriger. Le programme d’installation applique le correctif à chaque produit éligible répertorié dans le package de correctifs si szInstallPackage a la valeur null et eInstallType est défini sur INSTALLTYPE_DEFAULT.
Si eInstallType est INSTALLTYPE_SINGLE_INSTANCE, le programme d’installation applique le correctif au produit spécifié par szInstallPackage. Dans ce cas, les autres produits éligibles répertoriés dans le package de correctifs sont ignorés et le paramètre szInstallPackage contient la chaîne null terminée représentant le code produit de l’instance à corriger. Ce type d’installation nécessite le programme d’installation exécutant Windows Server 2003 ou Windows XP.
[in] eInstallType
Ce paramètre spécifie le type d’installation à corriger.
Type d’installation | Signification |
---|---|
|
Spécifie une installation administrative. Dans ce cas, szInstallPackage doit être défini sur un chemin de package. La valeur 1 pour INSTALLTYPE_NETWORK_IMAGE définit cette valeur pour une installation administrative. |
|
Recherche les produits à corriger dans le système. Dans ce cas, szInstallPackage doit avoir la valeur 0. |
|
Corrigez le produit spécifié par szInstallPackage. szInstallPackage est le code produit du instance à corriger. Ce type d’installation nécessite le programme d’installation exécutant Windows Server 2003 ou Windows XP avec SP1. Pour plus d’informations, consultez la section Installation de plusieurs instances de produits et de correctifs. |
[in] szCommandLine
Chaîne terminée par null qui spécifie les paramètres de propriété de ligne de commande. Consultez À propos des propriétés et Définition des valeurs des propriétés publiques sur la ligne de commande. Consultez la section Notes.
Valeur retournée
Valeur | Signification |
---|---|
|
La fonction s’est terminée avec succès. |
|
Impossible d’ouvrir le package de correctifs. |
|
Le package de correctif n’est pas valide. |
|
Le package correctif n’est pas pris en charge. |
|
Consultez Codes d’erreur. |
Une erreur d'initialisation s'est produite. |
Notes
Étant donné que le délimiteur de liste pour les transformations, les sources et les correctifs est un point-virgule, ce caractère ne doit pas être utilisé pour les noms de fichiers ou les chemins d’accès.
Vous devez définir la propriété REINSTALL sur la ligne de commande lors de l’application d’un correctif de mise à jour mineure ou demise à jour mineure . Sans cette propriété, le correctif est inscrit sur le système, mais ne peut pas mettre à jour les fichiers. Pour les correctifs qui n’utilisent pas un type d’action personnalisée 51 pour définir automatiquement les propriétés REINSTALL et REINSTALLMODE , la propriété REINSTALL doit être définie explicitement avec le paramètre szCommandLine . Définissez la propriété REINSTALL pour répertorier les fonctionnalités affectées par le correctif ou utilisez un paramètre pratique par défaut « REINSTALL=ALL ». La valeur par défaut de la propriété REINSTALLMODE est « omus ». À compter de Windows Installer version 3.0, la propriété REINSTALL est configurée par le programme d’installation et n’a pas besoin d’être définie sur la ligne de commande.
Notes
L’en-tête msi.h définit MsiApplyPatch comme un 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. Le mélange 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 |