SetupGetSourceFileLocationA, fonction (setupapi.h)
[Cette fonction est disponible pour une utilisation dans les systèmes d’exploitation indiqués dans la section Configuration requise. Il peut être modifié ou indisponible dans les versions ultérieures. SetupAPI ne doit plus être utilisé pour installer des applications. Utilisez plutôt Windows Installer pour développer des programmes d’installation d’applications. SetupAPI continue d’être utilisé pour installer des pilotes de périphérique.]
La fonction SetupGetSourceFileLocation récupère l’emplacement d’un fichier source répertorié dans un fichier INF.
Syntaxe
WINSETUPAPI BOOL SetupGetSourceFileLocationA(
[in] HINF InfHandle,
[in] PINFCONTEXT InfContext,
[in] PCSTR FileName,
[in, out] PUINT SourceId,
[in, out] PSTR ReturnBuffer,
[out] DWORD ReturnBufferSize,
[in, out] PDWORD RequiredSize
);
Paramètres
[in] InfHandle
Gérez le fichier INF qui contient les sections sourceDisksNames
[in] InfContext
Pointeur facultatif vers le contexte d’une ligne dans une section Copier des fichiers pour laquelle le chemin source complet doit être récupéré. Si ce paramètre est NULL, FileName est recherché dans la section SourceDisksFiles du fichier INF spécifié par InfHandle.
[in] FileName
Pointeur facultatif vers une chaîne null-terminated contenant le nom de fichier (aucun chemin) pour lequel retourner l’emplacement source complet. Ce paramètre peut être NULL, mais vous devez spécifier FileName ou InfContext.
[in, out] SourceId
Pointeur vers une variable qui reçoit l’identificateur source du média où se trouve le fichier à partir du SourceDisksNames section du fichier INF.
[in, out] ReturnBuffer
Pointeur facultatif vers une mémoire tampon pour recevoir le chemin d’accès source relatif. Le chemin d’accès source n’inclut pas le nom de fichier lui-même, ni n’inclut-il une lettre de lecteur/un nom de partage réseau. Le chemin d’accès ne démarre pas ou ne se termine pas par une barre oblique inverse (), de sorte que la chaîne vide spécifie le répertoire racine. Vous devez utiliser une mémoire tampon de chaîne null-terminated string. La chaîne null-terminated ne doit pas dépasser la taille de la mémoire tampon de destination. Vous pouvez appeler la fonction une fois pour obtenir la taille de mémoire tampon requise, allouer la mémoire nécessaire, puis appeler la fonction une deuxième fois pour récupérer les données. Cette technique vous permet d’éviter les erreurs en raison d’une taille de mémoire tampon insuffisante. Consultez la section Remarques. Ce paramètre peut être NULL.
[out] ReturnBufferSize
Taille de la mémoire tampon pointée par ReturnBuffer , en caractères. Ce nombre inclut le fin de null.
[in, out] RequiredSize
Pointeur facultatif vers une variable qui reçoit la taille requise pour la mémoire tampon pointée par le paramètre ReturnBuffer, en caractères. Ce nombre inclut le fin de null. Si la taille requise est supérieure à la valeur spécifiée par ReturnBufferSize, la fonction échoue et GetLastError retourne ERROR_INSUFFICIENT_BUFFER.
Valeur de retour
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 égale à zéro. Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Remarques
Si cette fonction est appelée avec un ReturnBuffer de NULL et un ReturnBufferSize de zéro, la fonction place la taille de mémoire tampon nécessaire pour contenir les données spécifiées dans la variable pointée par RequiredSize. Si la fonction réussit dans ce cas, la valeur de retour est une valeur différente de zéro. Sinon, la valeur de retour est zéro et les informations d’erreur étendues peuvent être obtenues en appelant GetLastError.
Note
L’en-tête setupapi.h définit SetupGetSourceFileLocation en tant qu’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.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | setupapi.h |
bibliothèque | Setupapi.lib |
DLL | Setupapi.dll |