Section Inf ControlFlags
Une section ControlFlags identifie les appareils pour lesquels Windows doit effectuer certaines actions uniques lors de l’installation.
[ControlFlags]
ExcludeFromSelect=* |
ExcludeFromSelect=device-identification-string[,device-identification-string] ...] |
[ExcludeFromSelect.nt=device-identification-string[,device-identification-string] ...] |
[ExcludeFromSelect.ntx86=device-identification-string[,device-identification-string] ...] |
[ExcludeFromSelect.ntia64=device-identification-string[,device-identification-string] ...] | (Windows XP and later versions of Windows)
[ExcludeFromSelect.ntamd64=device-identification-string[,device-identification-string] ...] | (Windows XP and later versions of Windows)
[ExcludeFromSelect.ntarm=device-identification-string[,device-identification-string] ...] | (Windows 8 and later versions of Windows)
[ExcludeFromSelect.ntarm64=device-identification-string[,device-identification-string] ...] | (Windows 10 version 1709 and later versions of Windows)
[CopyFilesOnly=device-identification-string[,device-identification-string] ...]
[InteractiveInstall=device-identification-string[,device-identification-string] ... ]
[RequestAdditionalSoftware=*] |
[RequestAdditionalSoftware=device-identification-string[,device-identification-string] ...] (Windows 7 through Windows 10 version 1709)
Entrées
device-identification-string
Identifie un ID matériel ou un ID compatible spécifié dans une section Modèles INF par fabricant. Chaque chaîne doit être séparée de la suivante avec une virgule (,).
ExcludeFromSelect
Supprime tout (si * est spécifié) ou la liste spécifiée des appareils de certaines interfaces utilisateur s’affiche, à partir de laquelle un utilisateur est censé sélectionner un appareil particulier pour l’installation.
Pour Windows 2000 et les versions ultérieures de Windows, les appareils spécifiés sont affichés par l’Assistant Nouveau matériel trouvé et l’Assistant Mise à jour matérielle.
Pour exclure un ensemble d’appareils incompatibles avec le système d’exploitation ou incompatibles avec la plateforme de cet affichage, une ou plusieurs entrées ExcludeFromSelect peuvent être ajoutées aux extensions qui ne respectent pas la casse suivantes :
.Nt
N’affichez pas ces appareils sur les ordinateurs qui exécutent Windows 2000 ou versions ultérieures de Windows.
.ntx86
N’affichez pas ces appareils sur les ordinateurs x86 qui exécutent Windows 2000 ou versions ultérieures de Windows.
.ntia64
N’affichez pas ces appareils sur les ordinateurs Itanium qui exécutent Windows XP ou des versions ultérieures de Windows.
.ntamd64
N’affichez pas ces appareils sur les ordinateurs x64 qui exécutent Windows XP ou des versions ultérieures de Windows.
.ntarm
N’affichez pas ces appareils sur les ordinateurs Arm qui exécutent Windows 8 ou versions ultérieures de Windows.
.ntarm64
N’affichez pas ces appareils sur les ordinateurs Arm64 qui exécutent Windows 10 version 1709 ou ultérieure de Windows.
Pour plus d’informations sur l’utilisation des extensions .nt, .ntx86, .ntia64, .ntamd64, .ntarm et .ntarm64 définies par le système, consultez Création de fichiers INF pour plusieurs plateformes et systèmes d’exploitation.
CopyFilesOnly
Installe uniquement les fichiers spécifiés par INF pour les appareils donnés, car le matériel de l’appareil n’est pas encore accessible ou disponible.
Cette entrée est rarement utilisée. Toutefois, il peut être utilisé pour préinstaller les pilotes d’un appareil pour lequel le carte sera ensuite assis dans un emplacement particulier actuellement utilisé. Par exemple, si un appareil actuellement assis dans l’emplacement particulier est nécessaire pour transférer des fichiers spécifiés par INF vers la cible, l’inf possède cette entrée.
InteractiveInstall
Force l’installation de la liste spécifiée d’appareils dans le contexte d’un utilisateur. Chaque ligne peut spécifier un ou plusieurs ID matériels ou des ID compatibles, et il peut y avoir une ou plusieurs lignes.
Cette entrée est facultative. La méthode recommandée pour installer des appareils consiste à omettre cette entrée et à autoriser Windows à installer l’appareil dans le contexte d’un thread système approuvé, si possible. Toutefois, si un appareil nécessite absolument qu’un utilisateur soit connecté lors de l’installation de l’appareil, incluez cette entrée dans l’INF de l’appareil.
RequestAdditionalSoftware
Spécifie que tous (si * est spécifié) ou la liste spécifiée des appareils peuvent nécessiter des logiciels supplémentaires par rapport à ce qui a été installé via le package de pilotes pour l’appareil. Par exemple, l’entrée RequestAdditionalSoftware peut être utilisée pour installer un logiciel spécifique à l’appareil nouveau ou mis à jour qui n’a pas été inclus dans le package de pilotes.
Notes
Si * n’est pas spécifié, chaque appareil spécifié par une entrée RequestAdditionalSoftware doit être défini dans la section Inf Models.
Cette entrée est facultative et est prise en charge dans Windows 7 à Windows 10 version 1709.
Une fois que Windows a installé le package de pilote pour l’appareil, le gestionnaire Plug-and-Play (PnP) effectue les étapes suivantes si l’entrée RequestAdditionalSoftware est spécifiée dans le fichier INF :
Le gestionnaire PnP génère un rapport d’erreurs rapport de problème et solution (PRS) avec le type RequestAdditionalSoftware. Ce rapport contient des informations sur l’ID matériel spécifique de l’appareil et l’architecture système de l’ordinateur.
S’il existe une solution fournie par le fournisseur de matériel indépendant (IHV) pour le logiciel spécifique à l’appareil, la solution est téléchargée sur l’ordinateur.
Notes
Le téléchargement de la solution n’installe pas le logiciel lui-même.
Si le logiciel spécifique à l’appareil n’est pas installé sur l’ordinateur, le gestionnaire PnP présente la solution à l’utilisateur et fournit un lien pour télécharger le logiciel. L’utilisateur peut ensuite choisir de télécharger et d’installer ce logiciel en suivant les instructions présentées dans la solution.
Remarques
En règle générale, une section ControlFlags a une ou plusieurs entrées ExcludeFromSelect pour identifier les appareils répertoriés dans la section Modèles INF par fabricant, mais qui ne doivent pas être affichés à l’utilisateur final sous forme d’options pendant les installations manuelles.
La liste de l’ID matériel ou de l’ID compatible d’un appareil dans une entrée ExcludeFromSelect le supprime de l’affichage affiché à l’utilisateur final. La spécification d’un astérisque (*) pour la valeur ExcludeFromSelect supprime tous les appareils/modèles définis dans le fichier INF de cette liste visible par l’utilisateur.
Un enregistreur INF doit utiliser la directive InteractiveInstall avec parcimonie et uniquement dans les situations suivantes :
- Pour installer des pilotes pour les appareils qui ont endommagé ou défini de manière incorrecte des ID matériels. Par exemple, lorsque plusieurs appareils différents partagent le même ID matériel. Ce cas est strictement interdit par le Plug-and-Play standard, mais certains fournisseurs de matériel ont commis cette erreur dans le matériel.
- Pour installer des pilotes pour les appareils qui nécessitent leur propre pilote et qui ne peuvent absolument pas utiliser le pilote de classe générique ou un autre pilote fourni avec le système d’exploitation. L’entrée InteractiveInstall force Gestionnaire de périphériques à demander à l’utilisateur une confirmation des correspondances d’ID compatibles.
Notes
À l’avenir, WHQL peut ne pas accorder le logo Windows aux appareils dont les fichiers INF incluent des entrées InteractiveInstall .
Les fichiers INF qui installent exclusivement des appareils PnP peuvent avoir une section ControlFlags , sauf s’ils définissent l’entrée de valeur NoInstallClass dans leurs paramètres DE GUID de configuration d’appareil respectifs sur TRUE. Pour plus d’informations sur ces paramètres, consultez la section INF ClassInstall32.
Exemples
Cet exemple de la section ControlFlags dans la classe INF de la souris système supprime l’affichage des appareils/modèles qui ne peuvent pas être installés sur les plateformes x86.
[ControlFlags]
; Exclude all bus mice and InPort mice for x86 platforms
ExcludeFromSelect.ntx86=*PNP0F0D,*PNP0F11,*PNP0F00,*PNP0F02,*PNP0F15
; Hide this entry always
ExcludeFromSelect=UNKNOWN_MOUSE
Le fragment de fichier INF suivant montre deux appareils : l’un qui est entièrement compatible PnP et ne nécessite aucune intervention de l’utilisateur pendant l’installation et l’autre qui nécessite son propre pilote et ne peut pas utiliser d’autre pilote. La spécification d’InteractiveInstall pour le deuxième appareil force Windows à installer cet appareil dans le contexte d’un utilisateur (un utilisateur disposant de droits d’administration). Cela inclut l’invite à l’utilisateur pour l’emplacement des fichiers de pilote (fichier INF, fichier de pilote, etc.) en fonction des besoins.
; ...
[Manufacturer]
%Mfg% = ModelsSection
[ModelsSection]
; Models section, with two entries
%Device1.DeviceDesc% = Device1.Install, \
PCI\VEN_1000&DEV_0001&SUBSYS_00000000&REV_01
%Device2.Device.Desc%= Device2.Install, \
PCI\VEN_1000&DEV_0001&SUBSYS_00000000&REV_02
[ControlFlags]
InteractiveInstall = \
PCI\VEN_1000&DEV_0001&SUBSYS_00000000&REV_02
; ...