MsiSourceListAddMediaDiskA, fonction (msi.h)

La fonction MsiSourceListAddMediaDisk ajoute ou met à jour un disque de la source multimédia d’un produit ou d’un correctif inscrit. Si le disque spécifié existe déjà, il est mis à jour avec les nouvelles valeurs. Si le disque spécifié n’existe pas, une nouvelle entrée de disque est créée avec les nouvelles valeurs.

Syntaxe

UINT MsiSourceListAddMediaDiskA(
  [in]           LPCSTR            szProductCodeOrPatchCode,
  [in, optional] LPCSTR            szUserSid,
  [in]           MSIINSTALLCONTEXT dwContext,
  [in]           DWORD             dwOptions,
  [in]           DWORD             dwDiskId,
  [in]           LPCSTR            szVolumeLabel,
  [in, optional] LPCSTR            szDiskPrompt
);

Paramètres

[in] szProductCodeOrPatchCode

Guid productcode ou patch du produit ou du correctif. Utilisez une chaîne terminée par null. Si la chaîne contient plus de 39 caractères, la fonction échoue et retourne ERROR_INVALID_PARAMETER. Ce paramètre ne peut pas être NULL.

[in, optional] szUserSid

Ce paramètre peut être un SID de chaîne qui spécifie le compte d’utilisateur qui contient le produit ou le correctif. Le SID n’est pas validé ou résolu. Un SID incorrect peut retourner ERROR_UNKNOWN_PRODUCT ou ERROR_UNKNOWN_PATCH.

Type de SID Signification
NULL
NULL désigne l’utilisateur actuellement connecté. Lors du référencement du compte d’utilisateur actuel, szUserSID peut être NULL et dwContext peut être MSIINSTALLCONTEXT_USERMANAGED ou MSIINSTALLCONTEXT_USERUNMANAGED.
SID de l’utilisateur
Spécifie l’énumération pour un utilisateur particulier dans le système. Un exemple de SID utilisateur est « S-1-3-64-2415071341-1358098788-3127455600-2561 ».
 
Note La chaîne SID spéciale s-1-5-18 (système) ne peut pas être utilisée pour énumérer les produits ou les correctifs installés en tant que machine. La définition de la valeur SID sur s-1-5-18 renvoie ERROR_INVALID_PARAMETER. Lorsque dwContext est défini sur MSIINSTALLCONTEXT_MACHINE uniquement, szUserSid doit avoir la valeur NULL.
 
Note La chaîne SID spéciale s-1-1-0 (tout le monde) ne doit pas être utilisée. La définition de la valeur du SID sur s-1-1-0 échoue et retourne ERROR_INVALID_PARAM .
 

[in] dwContext

Ce paramètre spécifie le contexte du produit ou du correctif instance. Ce paramètre peut contenir l’une des valeurs suivantes.

Type de contexte Signification
MSIINSTALLCONTEXT_USERMANAGED
Le produit ou le correctif instance existe dans le contexte géré par utilisateur.
MSIINSTALLCONTEXT_USERUNMANAGED
Le produit ou le correctif instance existe dans le contexte non managé par utilisateur.
MSIINSTALLCONTEXT_MACHINE
Le produit ou le correctif instance existe dans le contexte par machine.

[in] dwOptions

La valeur dwOptions spécifie la signification de szProductCodeOrPatchCode.

Indicateur Signification
MSICODE_PRODUCT
szProductCodeOrPatchCode est un GUID de code de produit.
MSICODE_PATCH
szProductCodeOrPatchCode est un GUID de code de correctif.

[in] dwDiskId

Ce paramètre fournit l’ID du disque en cours d’ajout ou de mise à jour.

[in] szVolumeLabel

SzVolumeLabel fournit l’étiquette du disque en cours d’ajout ou de mise à jour. Une mise à jour remplace l’étiquette de volume actuelle dans le Registre. Pour modifier l’invite de disque uniquement, récupérez l’étiquette de volume existante à partir du Registre et fournissez-la dans cet appel avec la nouvelle invite de disque. Le passage d’une chaîne NULL ou vide pour szVolumeLabel inscrit une chaîne vide (0 octet de longueur) en tant qu’étiquette de volume.

[in, optional] szDiskPrompt

Lors de l’entrée dans MsiSourceListAddMediaDisk, szDiskPrompt fournit l’invite de disque du disque en cours d’ajout ou de mise à jour. Une mise à jour remplace l’invite de disque inscrit.
Pour modifier l’étiquette du volume uniquement, obtenez l’invite de disque existante inscrite et fournissez-la lors de l’appel de MsiSourceListAddMediaDisk avec la nouvelle étiquette de volume. La transmission de la valeur NULL ou d’une chaîne vide inscrit une chaîne vide (0 octet de longueur) en tant qu’invite de disque.

Valeur retournée

La fonction MsiSourceListAddMediaDisk retourne les valeurs suivantes.

Valeur Signification
ERROR_ACCESS_DENIED
L’utilisateur n’a pas la possibilité de lire la source de média spécifiée ou le produit ou le correctif spécifié. Cela n’indique pas si une source, un produit ou un correctif multimédia a été trouvé.
ERROR_BAD_CONFIGURATION
Les données de configuration sont endommagées.
ERROR_INSTALL_SERVICE_FAILURE
Impossible d’accéder au service Windows Installer.
ERROR_INVALID_PARAMETER
Un paramètre non valide a été transmis à la fonction.
ERROR_SUCCESS
La valeur a été correctement réorganisé.
ERROR_UNKNOWN_PATCH
Le correctif est introuvable.
ERROR_UNKNOWN_PRODUCT
Le produit est introuvable.
ERROR_FUNCTION_FAILED
Défaillance interne inattendue.

Notes

Les administrateurs peuvent modifier l’installation d’un produit ou d’un correctif instance qui existe sous le contexte de l’ordinateur ou sous leur propre contexte par utilisateur (managé ou non géré). Ils peuvent modifier l’installation d’un produit ou d’un correctif instance qui existe dans n’importe quel contexte géré par utilisateur. Les administrateurs ne peuvent pas modifier l’installation d’un autre utilisateur d’un produit ou d’un correctif instance qui existe sous le contexte non managé par utilisateur de cet autre utilisateur.

Les non-administrateurs ne peuvent pas modifier l’installation d’un produit ou d’un correctif instance qui existe dans le contexte par utilisateur d’un autre utilisateur (managé ou non managé).) Ils peuvent modifier l’installation d’un produit ou d’un correctif instance qui existe sous leur propre contexte non managé par utilisateur. Ils peuvent modifier l’installation d’un produit ou d’un correctif instance sous le contexte de l’ordinateur ou leur propre contexte managé par utilisateur uniquement s’ils sont autorisés à rechercher une source de produit ou de correctif. Les utilisateurs peuvent être autorisés à rechercher des sources en définissant une stratégie. Pour plus d’informations, consultez Stratégies DisableBrowse, AllowLockdownBrowse, AllowLockDownMedia et AlwaysInstallElevated .

Notes

L’en-tête msi.h définit MsiSourceListAddMediaDisk 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. 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 3.0 ou version ultérieure 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

Voir aussi

Non pris en charge par Windows Installer 2.0 et antérieur

ProductCode