Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Caution
Als u een universeel of Windows stuurprogrammapakket bouwt, is deze sectie niet geldig. Zie Een universeel INF-bestand gebruiken en aan de slag met het ontwikkelen van Windows stuurprogramma's.
In de sectie ClassInstall32 wordt een nieuwe installatieklasse voor apparaten in de nieuwe klasse geïnstalleerd.
[ClassInstall32] |
[ClassInstall32.nt] |
[ClassInstall32.ntx86] |
[ClassInstall32.ntia64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntamd64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntarm] | (Windows 8 and later versions of Windows)
[ClassInstall32.ntarm64] (Windows 10 version 1709 and later versions of Windows)
AddReg=add-registry-section[,add-registry-section]...
[AddProperty=add-property-section[,add-property-section] ...] (Windows Vista and later versions of Windows)
[Copyfiles=@filename | file-list-section[,file-list-section]...]
[DelReg=del-registry-section[,del-registry-section]...]
[DelProperty=del-property-section[,del-property-section] ...] (Windows Vista and later versions of Windows)
[Delfiles=file-list-section[,file-list-section]...]
[Renfiles=file-list-section[,file-list-section]...]
[BitReg=bit-registry-section[,bit-registry-section]...]
[UpdateInis=update-ini-section[,update-ini-section]...]
[UpdateIniFields=update-inifields-section[,update-inifields-section]...]
[Ini2Reg=ini-to-registry-section[,ini-to-registry-section]...]
Invoer
AddReg=add-registry-section[, add-registry-section]...
Verwijst naar een of meer benoemde secties die klassespecifieke waardevermeldingen bevatten die in het register moeten worden geschreven. Dit wordt meestal gebruikt om de nieuwe apparaatinstallatieklasse ten minste een beschrijvende naam te geven die andere onderdelen later uit het register kunnen ophalen en gebruiken om geïnstalleerde apparaten van deze nieuwe apparaatklasse te openen of om een provider van eigenschappenpagina's voor deze apparaatinstallatieklasse te installeren, enzovoort.
Een HKR-specificatie in een invoegtoepassingssectie wijst de registersleutel aan die instellingen voor die klasse bevat. Zie de volgende sectie Opmerkingen voor meer informatie.
Zie DE INF AddReg-richtlijn voor meer informatie.
AddProperty=add-property-section[, add-property-section]...
(Windows Vista en latere versies van Windows) Verwijst naar een of meer INF-bestandssecties die apparaateigenschappen wijzigen die zijn ingesteld voor een apparaatinstallatieklasse. U moet een INF AddProperty-instructie alleen gebruiken om een eigenschap van de apparaatinstallatieklasse in te stellen die nieuw is voor Windows Vista of latere versies van Windows besturingssystemen.
Voor eigenschappen van apparaatklassen die eerder zijn geïntroduceerd op Windows Server 2003, Windows XP of Windows 2000, en die overeenkomende registervermeldingswaarden hebben, moet u een INF AddReg-instructies blijven gebruiken om de eigenschap van de apparaatinstallatieklasse in te stellen. Deze richtlijnen zijn van toepassing op door het systeem gedefinieerde eigenschappen en aangepaste eigenschappen.
Zie De INF AddProperty-richtlijn en de INF DelProperty-richtlijn gebruiken voor meer informatie over het gebruik van de Richtlijn AddProperty.
Copyfiles=@bestandsnaam | file-list-section[, file-list-section]...
Hiermee geeft u een benoemd bestand dat moet worden gekopieerd van de bronmedia naar de bestemming of verwijst naar een of meer benoemde secties waarin klasse-relevante bestanden op de bronmedia worden opgegeven voor overdracht naar de bestemming. Met de vermelding DefaultDestDir in de sectie DestinationDirs van de INF wordt de doelmap opgegeven voor een klassespecifiek enkel bestand dat moet worden gekopieerd.
Zie de INF CopyFiles-richtlijn voor meer informatie.
Note
Door het systeem geleverde INF-bestanden voor apparaatinstallatieklassen gebruiken deze instructie niet in deze sectie.
DelReg=del-registry-section[, del-registry-section]...
Verwijst naar een of meer benoemde secties waarin waardevermeldingen of sleutels worden opgegeven die tijdens de installatie van het klasse-installatieprogramma uit het register moeten worden verwijderd.
Als er echter al een bepaalde {SetupClassGUID} bestaat als een geïnstalleerde klasse, negeert de systeeminstallatiecode vervolgens de sectie ClassInstall32 van een INF die dezelfde GUID-waarde opgeeft in de sectie Versie . Daarom kan een INF een bestaand klasse-installatieprogramma niet vervangen of het gedrag ervan wijzigen vanuit een classInstall32-sectie .
Zie DE INF DelReg-richtlijn voor meer informatie.
DelProperty=del-property-section[, del-property-section]...
(Windows Vista en latere versies van Windows) Verwijst naar een of meer INF-bestandssecties die apparaateigenschappen verwijderen die zijn ingesteld voor een apparaatinstallatieklasse. U moet alleen een INF DelProperty-instructie gebruiken om een eigenschap van de apparaatinstallatieklasse te verwijderen die nieuw is in Windows Vista of latere versies van Windows besturingssystemen.
Voor eigenschappen van apparaatklassen die eerder zijn geïntroduceerd op Windows Server 2003, Windows XP of Windows 2000, en die overeenkomende registervermeldingswaarden hebben, moet u een INF DelReg-instructies blijven gebruiken om de eigenschap van de apparaatinstallatieklasse te verwijderen. Deze richtlijnen zijn van toepassing op door het systeem gedefinieerde eigenschappen en aangepaste eigenschappen.
Zie De INF AddProperty-richtlijn en de INF DelProperty-richtlijn gebruiken voor meer informatie over het gebruik van de DelProperty-richtlijn van DelProperty.
Delfiles=file-list-section[, file-list-section]...
Verwijzingen naar een of meer benoemde secties waarin eerder geïnstalleerde klasse-relevante bestanden op de bestemming worden opgegeven voor verwijdering.
Zie DE INF DelFiles-richtlijn voor meer informatie.
Renfiles=file-list-section[, file-list-section]...
Verwijst naar een of meer benoemde secties waarin klasse-relevante bestanden waarvan de naam moet worden gewijzigd op de bestemming worden vermeld.
Zie DE INF RenFiles-richtlijn voor meer informatie.
BitReg=bit-registry-section[,bit-registry-section]...
Is geldig in deze sectie, maar is bijna nooit gebruikt.
Zie DE INF BitReg-richtlijn voor meer informatie.
UpdateInis=update-ini-section[, update-ini-section]...
Is geldig in deze sectie, maar is bijna nooit gebruikt.
Zie DE INF UpdateInis-richtlijn voor meer informatie.
UpdateIniFields=update-inifields-section[,update-inifields-section]...
Is geldig in deze sectie, maar is bijna nooit gebruikt.
Zie INF UpdateIniFields Directive voor meer informatie.
Ini2Reg=ini-to-registry-section[,ini-to-registry-section]...
Is geldig in deze sectie, maar is bijna nooit gebruikt.
Zie INF UpdateIniFields Directive voor meer informatie.
Remarks
U moet een sectie ClassInstall32 in een INF-apparaatbestand opnemen om een nieuwe aangepaste apparaatinstallatieklasse te installeren. INF-bestanden voor apparaten in een geïnstalleerde klasse, ongeacht of een door het systeem geleverde apparaatinstallatieklasse of een aangepaste klasse, geen sectie ClassInstall32 mag bevatten. Omdat het systeem alleen een ClassInstall32-sectie verwerkt als een klasse nog niet is geïnstalleerd, kunt u geen ClassInstall32-sectie gebruiken om de instellingen voor een klasse die al is geïnstalleerd, opnieuw te installeren of te wijzigen. In het bijzonder kunt u geen ClassInstall32-sectie gebruiken om een co-installatieprogramma voor klassen of een klassefilterstuurprogramma toe te voegen voor een klasse die al is geïnstalleerd. Zie Een co-installatieprogramma schrijven en een filterstuurprogramma installeren voor informatie over het installeren van co-installatieprogramma's en het installeren van een filterstuurprogramma.
Meestal bevat een sectie ClassInstall32 een of meer AddReg-instructies om vermeldingen toe te voegen onder een door het systeem geleverde SetupClassGUID-subsleutel in het register. Deze vermeldingen kunnen bestaan uit een klassespecifiek 'beschrijvende naam', het pad van het klasse-installatieprogramma, het klassepictogram, de provider van eigenschappenpagina's, enzovoort.
Met uitzondering van AddReg en CopyFiles worden de andere instructies die hier worden weergegeven zelden gebruikt in een classInstall32-sectie .
Ter ondersteuning van een multiplatformdistributie van stuurprogrammabestanden maakt u platformspecifieke ClassInstall32-secties . Alle system SetupAPI-functies die een ClassInstall32-sectie verwerken, zoeken bijvoorbeeld eerst naar een classInstall32.ntx86-sectie op een x86-platform en onderzoeken alleen een niet-geecorated ClassInstall32-sectie als ze geen ClassInstall32.ntx86-sectie kunnen vinden. Zie INF-bestanden maken voor meerdere platforms en besturingssystemen voor meer informatie over het gebruik van de door het systeem gedefinieerde .nt, .ntnt, .ntarm, en .ntarm64.
Note
De sectienaam ClassInstall32 wordt ook gebruikt voor installaties op 64-bits platforms.
Vanaf Windows 2000 is elk geïnstalleerd apparaat gekoppeld aan een apparaatinstallatieklasse. Als de INF voor een apparaat dat moet worden geïnstalleerd niet is gekoppeld aan een nieuw installatieprogramma voor apparaatklasse, of als de klasseGUID= specificatie in de sectie Versie niet overeenkomt met een door het systeem gedefinieerde installatieklasse-GUID, is dat apparaat gekoppeld aan de installatieklasse van het apparaat met de naam Onbekend.
De INF voor elk installatieprogramma voor apparaatklassen heeft doorgaans een AddReg-instructie in de sectie ClassInstall32 om ten minste één benoemde sectie te definiëren waarmee een beschrijvende naam wordt gemaakt voor het type apparaat. De installatiecode maakt automatisch een SetupClassGUID-sleutel op de juiste plaats in het register op basis van de waarde die is opgegeven voor de KlasseGUID= vermelding in de sectie Versie van de INF wanneer het eerste apparaat van die (nieuwe) installatieklasse is geïnstalleerd.
De INF kan de secties van het invoegtoepassingsregister waarnaar wordt verwezen in de sectie ClassInstall32 gebruiken om een provider van eigenschappenpagina's op te geven en controle uit te oefenen over de manier waarop de klasse van apparaten wordt verwerkt in de gebruikersinterface.
Een dergelijke klassespecifieke sectie voor het toevoegen van een register heeft de volgende algemene vorm:
[SetupClassAddReg]
HKR,,,,%DevClassName% ; device-class friendly name
[HKR,,Installer32,,"class-installer.dll,class-entry-point"]
[HKR,,EnumPropPages32,,"prop-provider.dll,provider-entry-point"]
HKR,,Icon,,"icon-number"
[HKR,,SilentInstall,,1]
[HKR,,NoInstallClass,,1]
[HKR,,NoDisplayClass,,1]
Het systeem gebruikt het opgegeven pictogram om uw installatieprogramma voor de gebruiker weer te geven.
- Als de waarde van het pictogram positief is, vertegenwoordigt deze een resource-id voor een resource. De resource wordt geëxtraheerd uit het DLL-bestand van het klasse-installatieprogramma, als de Installer32-sleutel is opgegeven, of uit de DLL van de eigenschappenpagina, als de EnumPropPages32-sleutel is opgegeven. De waarde '0' vertegenwoordigt het eerste pictogram in het DLL-bestand. De waarde '1' is gereserveerd.
- Als de pictogramwaarde negatief is, is de absolute waarde de resource-id van het pictogram in SetupApi.DLL.
Het instellen van de vooraf gedefinieerde waarden SilentInstall, NoDisplayClass en NoInstallClass Boolean waarden in een klassespecifieke registersleutel heeft de volgende effecten:
Het instellen van SilentInstall stuurt installatieprogramma's om geen pop-upberichten te verzenden naar de gebruiker die een antwoord nodig heeft tijdens het installeren van apparaten van deze klasse, ongeacht of deze zijn opgegeven in de DDInstall-secties van het INF-bestand van het klasse-installatieprogramma of in afzonderlijke INF-bestanden voor vervolgens geïnstalleerde apparaten die zichzelf van deze klasse declareren door dezelfde ClassGuid={ClassGUID}-specificatie in hun respectieve versiesecties in te stellen. De installatieprogramma's van de systeemklasse van CD-ROM en schijfapparaten en het installatieprogramma van de systeemparallel poortklasse stelt SilentInstall in hun respectieve registersleutels in.
Als een klassespecifiek installatieprogramma vereist dat de computer opnieuw wordt opgestart voor elk apparaat dat wordt geïnstalleerd, kan de klassespecifieke sectie van het invoegtoepassingsregister in de INF deze waardevermelding niet hebben.
Als u NoDisplayClass instelt, wordt de door de gebruiker zichtbare weergave van alle apparaten van deze klasse door Apparaatbeheer onderdrukt. De installatieprogramma's van de systeemklasse voor printers en voor netwerkstuurprogramma's (inclusief clients, services en protocollen) stellen NoDisplayClass in hun respectieve registersleutels in.
Het instellen van NoInstallClass geeft aan dat voor geen enkel apparaat van dit type handmatige installatie door een eindgebruiker is vereist. De systeemklasse-installatieprogramma's voor uitsluitend Plug en Play (PnP)-apparaten stellen NoInstallClass in hun respectieve registersleutels in.
Een sectie ClassInstall32 kan AddReg-instructies bevatten om het DeviceType, DeviceCharacteristics en De beveiliging voor apparaten van de installatieklasse in te stellen. Zie de INF AddReg-richtlijn voor meer informatie.
Examples
In dit voorbeeld ziet u de sectie ClassInstall32 , samen met de benoemde sectie die verwijst naar de AddReg-instructie.
[ClassInstall32]
AddReg=example_class_addreg
[example_class_addreg]
HKR,,,,%ClassName%
HKR,,Icon,,"-1"
In dit voorbeeld wordt daarentegen een klassespecifieke provider voor eigenschappenpagina's ingesteld. Met deze INF worden ook de waarden SilentInstall en NoInstallClass in de klassesleutel ingesteld op TRUE (1).
[example_class_addreg]
HKR,,,,%ClassName%
HKR,,EnumPropPages32,,"ExampleBinary.Dll,ExamplePropPageProvider"
HKR,,SilentInstall,,1
HKR,,NoInstallClass,,1
HKR,,Icon,,"101"