Fonction SetupSetDirectoryIdW (setupapi.h)
[Cette fonction est disponible pour une utilisation dans les systèmes d’exploitation indiqués dans la section Configuration requise. Il sera peut-être modifié ou indisponible dans les versions ultérieures. SetupAPI ne doit plus être utilisé pour l’installation d’applications. Utilisez plutôt Windows Installer pour développer des programmes d’installation d’applications. SetupAPI continue d’être utilisé pour l’installation des pilotes de périphérique.]
La fonction SetupSetDirectoryId associe un identificateur de répertoire dans un fichier INF à un répertoire spécifique.
Syntaxe
WINSETUPAPI BOOL SetupSetDirectoryIdW(
[in] HINF InfHandle,
[in] DWORD Id,
[in] PCWSTR Directory
);
Paramètres
[in] InfHandle
Handle pour un fichier INF chargé.
[in] Id
Identificateur de répertoire (DIRID) à utiliser pour une association. Ce paramètre peut être NULL. Ce DIRID doit être supérieur ou égal à DIRID_USER. Si une association existe déjà pour ce DIRID, elle est remplacée. Si ID a la valeur NULL, le paramètre Directory est ignoré et l’ensemble actuel de DIRIDs définis par l’utilisateur est supprimé.
[in] Directory
Pointeur vers une chaîne terminée par null qui spécifie le chemin d’accès du répertoire à associer à ID. Ce paramètre peut avoir la valeur NULL. Si Directory a la valeur NULL, tout répertoire associé à ID n’est pas associé. Aucune erreur ne se produit si ID n’est actuellement pas associé à un répertoire.
Valeur retournée
Si la fonction réussit, la valeur de retour est une valeur différente de zéro.
Si la fonction échoue, la valeur de retour est zéro (0). Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Remarques
SetupSetDirectoryId peut être utilisé avant les opérations de copie de fichier en file d’attente pour spécifier un emplacement cible connu uniquement au moment de l’exécution.
Après avoir défini l’identificateur de répertoire, cette fonction traverse tous les fichiers INF ajoutés et, si l’un d’eux a des substitutions de chaîne non résolues, la fonction tente de leur appliquer à nouveau la substitution de chaîne en fonction du nouveau mappage DIRID. Pour cette raison, certaines valeurs INF peuvent changer après l’appel de SetupSetDirectoryId.
DIRID_ABSOLUTE_16BIT n’est pas une valeur valide pour Id, ce qui garantit la compatibilité avec le programme d’installation 16 bits.
Notes
L’en-tête setupapi.h définit SetupSetDirectoryId 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 XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | setupapi.h |
Bibliothèque | Setupapi.lib |
DLL | Setupapi.dll |