Partager via


MsiExtractPatchXMLDataA, fonction (msi.h)

La fonction MsiExtractPatchXMLData extrait des informations d’un correctif qui peut être utilisé pour déterminer si le correctif s’applique à un système cible. La fonction retourne une chaîne XML qui peut être fournie à MsiDeterminePatchSequence et MsiDetermineApplicablePatches au lieu du fichier patch complet. Les informations retournées peuvent être utilisées pour déterminer si le correctif est applicable.

Syntaxe

UINT MsiExtractPatchXMLDataA(
  [in]                LPCSTR  szPatchPath,
  [in]                DWORD   dwReserved,
  [out, optional]     LPSTR   szXMLData,
  [in, out, optional] LPDWORD pcchXMLData
);

Paramètres

[in] szPatchPath

Chemin complet du correctif interrogé. Passez en tant que chaîne terminée par null. Ce paramètre ne peut pas être NULL.

[in] dwReserved

Argument réservé qui doit être égal à 0 (zéro).

[out, optional] szXMLData

Pointeur vers une mémoire tampon pour contenir la chaîne XML qui contient les informations de correctif extraites. Cette mémoire tampon doit être suffisamment grande pour contenir les informations reçues. Si la mémoire tampon est trop petite, la fonction retourne ERROR_MORE_DATA et définit *pcchXMLData au nombre de TCHAR dans la valeur, sans inclure le caractère NULL de fin.

Si szXMLData est défini sur NULL et pcchXMLData est défini sur un pointeur valide, la fonction retourne ERROR_SUCCESS et définit *pcchXMLData au nombre de TCHAR dans la valeur, et n’inclut pas le caractère NULL de fin. La fonction peut ensuite être appelée à nouveau pour récupérer la valeur, avec szXMLData mémoire tampon suffisamment grande pour contenir *pcchXMLData + 1 caractères.

[in, out, optional] pcchXMLData

Pointeur vers une variable qui spécifie le nombre d'TCHAR dans la mémoire tampon szXMLData . Lorsque la fonction est retournée, ce paramètre est défini sur la taille de la valeur demandée si la fonction copie la valeur dans la mémoire tampon spécifiée. La taille est retournée en tant que nombre de TCHAR dans la valeur demandée, sans inclure le caractère null de fin.

Si ce paramètre est défini sur NULL, la fonction retourne ERROR_INVALID_PARAMETER.

Valeur de retour

La fonction MsiExtractPatchXMLData peut retourner les valeurs suivantes.

Retourner le code Description
ERROR_FUNCTION_FAILED
La fonction a échoué d’une manière qui n’est identifiée par aucune des valeurs de retour de cette table.
ERROR_INVALID_PARAMETER
Un paramètre non valide a été passé à la fonction.
ERROR_MORE_DATA
La valeur ne correspond pas à la mémoire tampon fournie.
ERROR_PATCH_OPEN_FAILED
Impossible d’ouvrir le fichier patch.
ERROR_SUCCESS
La fonction a réussi.
ERROR_PATCH_PACKAGE_INVALID
Impossible d’ouvrir le fichier patch.
ERROR_CALL_NOT_IMPLEMENTED
Cette erreur peut être retournée si MSXML 3.0 n’est pas installé.

Remarques

La méthode ExtractPatchXMLData de l’objet Installer utilise la fonction MsiExtractPatchXMLData.

Note

L’en-tête msi.h définit MsiExtractPatchXMLData comme 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.

Exigences

Exigence Valeur
client minimum pris en charge Windows Installer 4.0 ou Windows Installer 4.5 sur Windows Server 2008 ou Windows Vista. Windows Installer 3.0 ou version ultérieure sur Windows Server 2003 ou Windows XP. Consultez la configuration requise de Windows Installer Run-Time pour plus d’informations sur le service pack Windows minimal requis par une version de Windows Installer.
plateforme cible Windows
d’en-tête msi.h
bibliothèque Msi.lib
DLL Msi.dll

Voir aussi

MsiDetermineApplicablePatches

MsiDeterminePatchSequence

non pris en charge dans Windows Installer 2.0 et versions antérieures