Partager via


SetupDiGetActualSectionToInstallW, fonction (setupapi.h)

La fonction SetupDiGetActualSectionToInstall récupère la section DDInstall inf appropriée à utiliser lors de l’installation d’un appareil à partir d’un fichier INF d’appareil sur un ordinateur local.

Syntaxe

WINSETUPAPI BOOL SetupDiGetActualSectionToInstallW(
  [in]            HINF   InfHandle,
  [in]            PCWSTR InfSectionName,
  [out, optional] PWSTR  InfSectionWithExt,
  [in]            DWORD  InfSectionWithExtSize,
  [out, optional] PDWORD RequiredSize,
  [out, optional] PWSTR  *Extension
);

Paramètres

[in] InfHandle

Handle du fichier INF qui contient la section DDInstall.

[in] InfSectionName

Pointeur vers le nom de la section DDInstall (comme spécifié dans une section modèles INF ). La longueur maximale du nom de la section, en caractères, est de 254.

[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 NULL, InfSectionWithExtSize doit être égal à zéro. Si ce paramètre est NULL, la fonction retourne TRUE et définit RequiredSize sur la taille, en caractères, qui est nécessaire pour renvoyer le nom de la section DDInstall , son extension de plateforme et un caractère NULL de fin.

[in] InfSectionWithExtSize

Taille, en caractères, de la mémoire tampon InfSectionWithExt. Si InfSectionWithExt est NULL, ce paramètre doit être égal à zéro.

[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.

Valeur de retour

Si la fonction réussit, elle retourne TRUE. Si la fonction échoue, elle retourne FALSE. Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Remarques

Cette fonction prend en charge les extensions pour noms de section DDInstall utilisés pour spécifier des comportements 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. SetupDiGetActualSectionToInstall recherche un nom de section DDInstall qui correspond à l’ordinateur local de la manière décrite ci-dessous.

La fonction recherche d’abord dans le fichier INF spécifié un nom de section d’installation décoré qui correspond au nom spécifié et a une extension qui correspond au système d’exploitation et à l’architecture du processeur de l’ordinateur local. Si, par exemple, vous spécifiez un nom de section de InstallSec, la fonction recherche l’un des noms décorés suivants, selon l’architecture du processeur de l’ordinateur local :

  • Pour un ordinateur basé sur l’architecture du processeur x86, la fonction recherche le nom décoré InstallSec.ntx86.
  • Pour un ordinateur basé sur l’architecture du processeur x64, la fonction recherche le nom décoré InstallSec.ntamd64.
  • Pour un ordinateur basé sur 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.

Le nom de la section DDInstall est utilisé comme base pour noms de section matériel et Services. Par exemple, si le nom section DDInstall trouvé est InstallSec.NTX86, le nom de la section Services doit être nommé InstallSec.NTX86.Services.

Le nom de section DDInstall d’origine spécifié dans le nœud du pilote est écrit dans l’entrée de valeur InfSection du pilote. L’extension trouvée est stockée dans la clé en tant que valeur REG_SZ InfSectionExt. Par exemple:

InfSection       : REG_SZ :    "InstallSec"
InfSectionExt    : REG_SZ :    ".NTX86"

Si un pilote n’est pas sélectionné pour l’élément d’informations de périphérique spécifié, un pilote Null est installé. Lors du retour, les indicateurs de la structure SP_DEVINSTALL_PARAMS de l’appareil indiquent si le système doit être redémarré ou redémarré pour que l’appareil démarre.

Note

L’en-tête setupapi.h définit SetupDiGetActualSectionToInstall 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 Microsoft Windows 2000 et versions ultérieures de Windows.
plateforme cible Bureau
d’en-tête setupapi.h (include Setupapi.h)
bibliothèque Setupapi.lib

Voir aussi

section DDInstall INF

SetupDiGetActualSectionToInstallEx

setupDiInstallDevice