MsiSourceListForceResolutionA, fonction (msi.h)
La fonction MsiSourceListForceResolution force le programme d’installation à rechercher dans la liste source une source de produit valide la prochaine fois qu’une source est requise. Par exemple, lorsque le programme d’installation effectue une installation ou une réinstallation, ou lorsqu’il nécessite le chemin d’accès d’un composant qui est défini pour s’exécuter à partir de la source.
Syntaxe
UINT MsiSourceListForceResolutionA(
[in] LPCSTR szProduct,
[in] LPCSTR szUserName,
[in] DWORD dwReserved
);
Paramètres
[in] szProduct
ProductCode du produit à modifier.
[in] szUserName
Nom d’utilisateur d’une installation par utilisateur. Le nom d’utilisateur doit toujours être au format DOMAIN\USERNAME (ou MACHINENAME\USERNAME pour un utilisateur local).
Chaîne vide ou NULL pour une installation par ordinateur.
[in] dwReserved
Réservé pour un usage futur. Cette valeur doit être définie sur 0.
Valeur retournée
La fonction MsiSourceListForceResolution retourne les valeurs suivantes.
Valeur | Signification |
---|---|
|
L’appelant n’a pas suffisamment d’accès pour forcer la résolution du produit. |
|
Les données de configuration sont endommagées. |
|
L’utilisateur spécifié n’est pas un utilisateur valide. |
|
La fonction n’a pas pu se terminer. |
|
Impossible d’accéder au service d’installation. |
|
Un paramètre non valide a été transmis à la fonction. |
|
La fonction a réussi. |
|
Le produit spécifié est inconnu. |
Remarques
Un administrateur peut modifier les installations par ordinateur, ses propres installations non managées par utilisateur et les installations gérées par utilisateur pour n’importe quel utilisateur. Un non-administrateur peut uniquement modifier les installations par ordinateur et leurs propres installations (managées ou non) par utilisateur.
Si le nom d’utilisateur est une chaîne vide ou NULL, la fonction fonctionne sur l’installation par ordinateur du produit. Dans ce cas, si le produit est installé uniquement par utilisateur, la fonction retourne ERROR_UNKNOWN_PRODUCT.
Si le nom d’utilisateur n’est pas une chaîne vide ou NULL, il spécifie le nom de l’utilisateur dont l’installation du produit est modifiée. Si le nom d’utilisateur est le nom d’utilisateur actuel, la fonction tente d’abord de modifier une installation non managée du produit. Si aucune installation non gérée du produit n’est trouvée, la fonction tente de modifier une installation managée par utilisateur du produit. Si aucune installation gérée ou non managée par utilisateur du produit n’est trouvée, la fonction retourne ERROR_UNKNOWN_PRODUCT, même si le produit est installé par ordinateur.
Cette fonction ne peut pas modifier une installation non gérée pour un utilisateur autre que l’utilisateur actuel. Si le nom d’utilisateur n’est pas une chaîne vide ou NULL, mais n’est pas l’utilisateur actuel, la fonction recherche uniquement une installation gérée par utilisateur du produit pour l’utilisateur spécifié. Si le produit n’est pas installé en tant que géré par utilisateur pour l’utilisateur spécifié, la fonction retourne ERROR_UNKNOWN_PRODUCT, même si le produit est installé par ordinateur.
Notes
L’en-tête msi.h définit MsiSourceListForceResolution 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.
Configuration requise
Condition requise | Valeur |
---|---|
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 |