SetupGetInfInformationW, fonction (setupapi.h)
[Cette fonction peut être utilisée 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 installer des applications. Utilisez plutôt Windows Installer pour développer des programmes d’installation d’applications. SetupAPI continue d’être utilisé pour installer les pilotes de périphérique.]
La fonction SetUpGetInfInformation retourne la structure SP_INF_INFORMATION du fichier INF spécifié dans une mémoire tampon.
Syntaxe
WINSETUPAPI BOOL SetupGetInfInformationW(
[in] LPCVOID InfSpec,
[in] DWORD SearchControl,
[in, out] PSP_INF_INFORMATION ReturnBuffer,
[in] DWORD ReturnBufferSize,
[in, out] PDWORD RequiredSize
);
Paramètres
[in] InfSpec
Handle ou un nom de fichier pour un fichier INF, selon la valeur de SearchControl.
[in] SearchControl
Ce paramètre peut être l’une des constantes suivantes.
INFINFO_INF_SPEC_IS_HINF
InfSpec est un handle INF. Un handle INF unique peut référencer plusieurs fichiers INF s’ils ont été chargés ensemble. Si c’est le cas, la structure retournée par cette fonction contient plusieurs ensembles d’informations.
INFINFO_INF_NAME_IS_ABSOLUTE
La chaîne spécifiée pour InfSpec est un chemin d’accès complet. Aucun traitement supplémentaire n’est effectué sur InfSpec.
INFINFO_DEFAULT_SEARCH
Recherchez dans les emplacements par défaut le fichier INF spécifié pour InfSpec, qui est supposé être un nom de fichier uniquement. Les emplacements par défaut sont %windir%\inf, suivis de %windir%\system32.
INFINFO_REVERSE_DEFAULT_SEARCH
Identique à INFINFO_DEFAULT_SEARCH, sauf que les emplacements par défaut sont recherchés dans l’ordre inverse.
INFINFO_INF_PATH_LIST_SEARCH
Recherchez l’inf dans chacun des répertoires répertoriés dans l’entrée de valeur DevicePath sous :HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
[in, out] ReturnBuffer
Si ce n’est pas null, pointe vers une mémoire tampon dans laquelle cette fonction retourne la structure SP_INF_INFORMATION .
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. À l’aide de cette technique, vous pouvez éviter les erreurs dues à une taille de mémoire tampon insuffisante. Pour plus d’informations, consultez la section Remarques de cette rubrique.
[in] ReturnBufferSize
Taille de ReturnBuffer, en octets.
[in, out] RequiredSize
Si ce n’est pas NULL, pointe vers une variable dans laquelle cette fonction retourne la taille requise, en octets, pour la mémoire tampon vers laquelle pointe ReturnBuffer.
Si ReturnBuffer est spécifié et que la taille nécessaire est supérieure à ReturnBufferSize, la fonction échoue et un appel à GetLastError retourne ERROR_INSUFFICIENT_BUFFER.
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.
Si le fichier INF est introuvable, la fonction retourne FALSE et un appel ultérieur à GetLastError retourne ERROR_FILE_NOT_FOUND.
Remarques
Si cette fonction est appelée avec un ReturnBuffer null et un ReturnBufferSize de 0 (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, la valeur de retour est une valeur différente de zéro. Sinon, la valeur de retour est 0 (zéro) et des informations d’erreur étendues peuvent être obtenues en appelant GetLastError.
Notes
L’en-tête setupapi.h définit SetupGetInfInformation 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
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 |