MsiSetTargetPathA, fonction (msiquery.h)

La fonction MsiSetTargetPath définit le chemin d’accès cible complet d’un dossier dans la table Directory.

Syntaxe

UINT MsiSetTargetPathA(
  [in] MSIHANDLE hInstall,
  [in] LPCSTR    szFolder,
  [in] LPCSTR    szFolderPath
);

Paramètres

[in] hInstall

Gérez l’installation fournie à une action personnalisée DLL ou obtenue via MsiOpenPackage, MsiOpenPackageEx ou MsiOpenProduct.

[in] szFolder

Spécifie l’identificateur de dossier. Il s’agit d’une clé primaire dans la table Directory.

[in] szFolderPath

Spécifie le chemin d’accès complet du dossier, se terminant par un séparateur de répertoires.

Valeur retournée

La fonction MsiSetTargetPath retourne les valeurs suivantes :

Remarques

La fonction MsiSetTargetPath modifie la spécification du chemin d’accès pour le répertoire cible nommé dans la table Répertoire en mémoire. En outre, les spécifications de chemin d’accès de tous les autres objets de chemin d’accès de la table qui sont subordonnés ou équivalents au chemin modifié sont mises à jour pour refléter la modification. Les propriétés de chaque chemin d’accès affecté sont également mises à jour.

MsiSetTargetPath échoue si le répertoire sélectionné est en lecture seule.

Si une erreur se produit dans cette fonction, tous les chemins d’accès et propriétés mis à jour reviennent à leurs valeurs précédentes. Par conséquent, il est sûr de traiter les erreurs retournées par cette fonction comme non fatal.

N’essayez pas de configurer le chemin cible si les composants utilisant ces chemins sont déjà installés pour l’utilisateur actuel ou pour un autre utilisateur. Vérifiez la propriété ProductState avant d’appeler MsiSetTargetPath pour déterminer si le produit contenant ce composant est installé.

Consultez Appel de fonctions de base de données à partir de programmes.

Si la fonction échoue, vous pouvez obtenir des informations d’erreur étendues à l’aide de MsiGetLastErrorRecord.

Notes

L’en-tête msiquery.h définit MsiSetTargetPath 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
Plateforme cible Windows
En-tête msiquery.h
Bibliothèque Msi.lib
DLL Msi.dll

Voir aussi

Fonctions d’emplacement du programme d’installation