SetupDiGetActualSectionToInstallExW, fonction (setupapi.h)
La fonction SetupDiGetActualSectionToInstallEx récupère le nom de la section INF DDInstall qui installe un appareil pour une architecture de système d’exploitation et de processeur spécifiée.
Syntaxe
WINSETUPAPI BOOL SetupDiGetActualSectionToInstallExW(
[in] HINF InfHandle,
[in] PCWSTR InfSectionName,
[in, optional] PSP_ALTPLATFORM_INFO AlternatePlatformInfo,
[out, optional] PWSTR InfSectionWithExt,
[in] DWORD InfSectionWithExtSize,
[out, optional] PDWORD RequiredSize,
[out, optional] PWSTR *Extension,
PVOID Reserved
);
Paramètres
[in] InfHandle
Handle du fichier INF qui contient la section DDInstall.
[in] InfSectionName
Pointeur vers le nom de la section DDInstall
[in, optional] AlternatePlatformInfo
Pointeur, s’il n'NULL, vers une structure de SP_ALTPLATFORM_INFO. Cette structure est utilisée pour spécifier un système d’exploitation et une architecture de processeur différente de celle de l’ordinateur local. Pour renvoyer le nom de section DDInstall
cbSize
Défini sur la taille, en octets, d’une structure SP_ALTPLATFORM_INFO.
Plateforme
Définissez la valeur VER_PLATFORM_WIN32_NT pour Windows XP et les versions ultérieures de Windows.
MajorVersion
Non utilisé.
MinorVersion
Non utilisé.
ProcessorArchitecture
Définissez l’une des constantes d’architecture de processeur suivantes.
Constante d’architecture du processeur | Signification |
---|---|
PROCESSOR_ARCHITECTURE_INTEL | La plateforme alternative est une architecture de processeur x86. |
PROCESSOR_ARCHITECTURE_IA64 | La plateforme alternative est une architecture de processeur itanium. |
PROCESSOR_ARCHITECTURE_AMD64 | La plateforme alternative est une architecture de processeur x64. |
Réservé
Défini sur zéro.
[out, optional] InfSectionWithExt
Pointeur vers une mémoire tampon de caractères pour recevoir le nom de section DDInstall, son extension de plateforme et un terminateur NULL. Il s’agit du nom de section décoré qui doit être utilisé pour l’installation. Si ce paramètre est
[in] InfSectionWithExtSize
Taille, en caractères, de la mémoire tampon pointée par le paramètre InfSectionWithExt. La longueur maximale d’un nom de section INF terminée par NULL, en caractères, est MAX_INF_SECTION_NAME_LENGTH.
[out, optional] RequiredSize
Pointeur vers la variable qui reçoit la taille, en caractères, qui est nécessaire pour retourner le nom de section DDInstall, l’extension de plateforme et un caractère NULL de fin.
[out, optional] Extension
Pointeur vers une variable qui reçoit un pointeur vers le caractère « . » qui marque le début de l’extension dans la mémoire tampon InfSectionWithExt. Si la mémoire tampon InfSectionWithExt n’est pas fournie ou est trop petite, ce paramètre n’est pas défini. Définissez ce paramètre sur NULL si un pointeur vers l’extension n’est pas nécessaire.
Reserved
Réservé uniquement pour une utilisation interne. Doit être défini sur NULL.
Valeur de retour
Si la fonction réussit, elle retourne TRUE. Sinon, elle retourne FALSE. Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Remarques
SetupDiGetActualSectionToInstallEx est une forme étendue de SetupDiGetActualSectionToInstall. Ces fonctions prennent en charge les extensions pour noms de section DDInstall utilisés pour spécifier des actions d’installation spécifiques au système d’exploitation et propres à l’architecture pour un appareil. Pour plus d’informations sur ces extensions, consultez Création de fichiers INF pour plusieurs plateformes et systèmes d’exploitation.
Si vous ne fournissez pas d’informations de plateforme alternatives avec un appel à SetupDiGetActualSectionToInstallEx, la fonction effectue la même opération que SetupDiGetActualSectionToInstall. Cette dernière fonction recherche le nom de section d’installation spécifié à l’aide des informations de plateforme pour l’ordinateur local.
Si vous fournissez d’autres informations de plateforme avec un appel à SetupDiGetActualSectionToInstallEx, la fonction effectue les opérations suivantes :
-
Si vous spécifiez une plateforme de VER_PLATFORM_WIN32_NT, la fonction recherche d’abord dans le fichier INF spécifié un nom de section d’installation décoré qui correspond au nom, au système d’exploitation et à l’architecture du processeur que vous spécifiez. Si, par exemple, vous spécifiez un nom de section d’installation de InstallSec, la fonction recherche l’un des noms décorés suivants, en fonction de l’architecture de processeur spécifiée :
- Si vous spécifiez l’architecture du processeur x86, la fonction recherche le nom décoré InstallSec.ntx86.
- Si vous spécifiez l’architecture du processeur x64, la fonction recherche le nom décoré InstallSec.ntamd64.
- Si vous spécifiez l’architecture du processeur Itanium, la fonction recherche le nom décoré InstallSec.ntia64.
Si la fonction trouve une correspondance pour le nom, le système d’exploitation et l’architecture du processeur, elle met fin à la recherche et retourne le nom décoré correspondant. Si la fonction ne trouve pas une telle correspondance, la fonction recherche une section dont le nom est InstallSec.nt. Si la fonction trouve une correspondance pour InstallSec.nt, elle met fin à la recherche et retourne ce nom. Si la fonction ne trouve pas de correspondance pour l’une des recherches ci-dessus, elle retourne InstallSec, mais ne vérifie pas que le fichier INF contient une section d’installation dont le nom est InstallSec.
Note
L’en-tête setupapi.h définit SetupDiGetActualSectionToInstallEx 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. 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 | Disponible dans Windows XP et versions ultérieures de Windows. |
plateforme cible | Bureau |
d’en-tête | setupapi.h (include Setupapi.h) |
bibliothèque | Setupapi.lib |