Partager via


MsiProcessAdvertiseScriptA, fonction (msi.h)

La fonction MsiProcessAdvertiseScript traite un fichier de script de publication dans les emplacements spécifiés.

Syntaxe

UINT MsiProcessAdvertiseScriptA(
  [in] LPCSTR szScriptFile,
  [in] LPCSTR szIconFolder,
  [in] HKEY   hRegData,
  [in] BOOL   fShortcuts,
  [in] BOOL   fRemoveItems
);

Paramètres

[in] szScriptFile

Chemin d’accès complet à un fichier de script généré par MsiAdvertiseProduct ou MsiAdvertiseProductEx.

[in] szIconFolder

Chemin d’accès facultatif à un dossier dans lequel se trouvent les fichiers d’icônes publiés et les fichiers de transformation. Si ce paramètre a la valeur NULL, aucun fichier d’icône ou de transformation n’est écrit.

[in] hRegData

Clé de Registre sous laquelle les données de Registre doivent être écrites. Si ce paramètre a la valeur NULL, le programme d’installation écrit les données du Registre sous la clé appropriée, selon que la publication est par utilisateur ou par ordinateur. Si ce paramètre n’est pas NULL, le script écrit les données du Registre sous la clé de Registre spécifiée plutôt que l’emplacement normal. Dans ce cas, l’application n’est pas annoncée à l’utilisateur.

[in] fShortcuts

TRUE si des raccourcis doivent être créés. Si un dossier spécial est retourné par SHGetSpecialFolderLocation , il contiendra les raccourcis.

[in] fRemoveItems

TRUE si les éléments spécifiés doivent être supprimés au lieu de créés.

Valeur retournée

Valeur Signification
ERROR_SUCCESS
La fonction s’est terminée avec succès.
ERROR_ACCESS_DENIED
Le processus appelant n’était pas en cours d’exécution sous le compte LocalSystem.
Erreur liée à une action
Consultez Codes d’erreur.
Erreur d’initialisation
Une erreur relative à l’initialisation s’est produite.
ERROR_CALL_NOT_IMPLEMENTED
Cette fonction n’est pas disponible pour cette plateforme.
 
 

Remarques

Le processus appelant cette fonction doit s’exécuter sous le compte LocalSystem. Pour publier une application pour une installation par utilisateur à un utilisateur ciblé, le thread qui appelle cette fonction doit emprunter l’identité de l’utilisateur ciblé. Si le thread appelant cette fonction n’emprunte pas l’identité d’un utilisateur ciblé, l’application est annoncée à tous les utilisateurs pour l’installation avec des privilèges élevés.

Notes

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

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