Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Caution
Pokud vytváříte univerzální balíček nebo balíček ovladače Windows, není tato část platná. Viz Použití univerzálního souboru INF a začínáme s vývojem ovladačů Windows.
Oddíl ClassInstall32 nainstaluje novou třídu nastavení zařízení pro zařízení v nové třídě.
[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]...]
Položky
AddReg=add-registry-section[,add-registry-section]...
Odkazuje na jeden nebo více pojmenovaných oddílů, které obsahují položky hodnoty specifické pro třídu, které mají být zapsány do registru. Obvykle se používá k tomu, aby nová třída nastavení zařízení získala alespoň popisný název, který ostatní komponenty mohou později načíst z registru a použít k otevření nainstalovaných zařízení této nové třídy zařízení nebo k "instalaci" libovolného poskytovatele stránky vlastností pro tuto třídu nastavení zařízení atd.
Specifikace HKR v libovolné části doplňku registru určuje klíč registru, který obsahuje nastavení pro danou třídu. Další informace najdete v následující části Poznámky .
Další informace naleznete v tématu INF AddReg – direktiva.
AddProperty=add-property-section[,add-property-section]...
(Windows Vista a novější verze Windows) Odkazuje na jednu nebo více částí souboru INF, které upravují vlastnosti zařízení nastavené pro třídu nastavení zařízení.
Direktivu INF AddProperty byste měli použít pouze k nastavení vlastnosti třídy nastavení zařízení, která je novinkou Windows Vista nebo novějších verzích operačních systémů Windows.
U vlastností třídy zařízení, které byly zavedeny dříve v Windows Server 2003, Windows XP nebo Windows 2000 a které mají odpovídající hodnoty položek registru, byste měli nadále používat direktivy INF AddReg k nastavení vlastnosti třídy nastavení zařízení. Tyto pokyny platí pro vlastnosti definované systémem a vlastní vlastnosti.
Další informace o použití AddProperty direktivy , viz Použití INF AddProperty Direktivy a INF DelProperty Direktiva.
Copyfiles=@filename | file-list-section[,file-list-section]...
Určuje jeden pojmenovaný soubor, který se má zkopírovat ze zdrojového média do cíle, nebo odkazuje na jeden nebo více pojmenovaných oddílů, ve kterých jsou soubory relevantní pro třídu na zdrojovém médiu určené pro přenos do cíle.
Položka DefaultDestDir v části DestinationDirs inf určuje cílový adresář pro všechny jednotlivé třídy jeden soubor, který se má zkopírovat.
Další informace naleznete v tématu INF CopyFiles – direktiva.
Poznámka:
Systémové soubory INF pro třídy nastavení zařízení nepoužívají tuto direktivu v této části.
DelReg=del-registry-section[,del-registry-section]...
Odkazuje na jeden nebo více pojmenovaných oddílů, ve kterých jsou zadány položky hodnot nebo klíče, které mají být odebrány z registru během instalace instalačního programu třídy.
Pokud však konkrétní soubor {SetupClassGUID} již existuje jako nainstalovaná třída, kód nastavení systému následně ignoruje oddíl ClassInstall32 jakékoli inf, která určuje stejnou hodnotu GUID v jeho oddílu Verze . Inf proto nemůže nahradit existující instalační program třídy nebo změnit jeho chování z oddílu ClassInstall32 .
Další informace najdete v tématu INF DelReg – direktiva.
DelProperty=del-property-section[,del-property-section]...
(Windows Vista a novější verze Windows) Odkazuje na jednu nebo více částí souboru INF, které odstraňují vlastnosti zařízení nastavené pro třídu nastavení zařízení.
Direktivu INF DelProperty byste měli použít pouze k odstranění vlastnosti třídy nastavení zařízení, která je novinkou Windows Vista nebo novějších verzích operačních systémů Windows.
U vlastností třídy zařízení, které byly zavedeny dříve v Windows Server 2003, Windows XP nebo Windows 2000 a které mají odpovídající hodnoty položek registru, byste měli dál používat direktivy INF DelReg k odstranění vlastnosti třídy nastavení zařízení. Tyto pokyny platí pro vlastnosti definované systémem a vlastní vlastnosti.
Další informace o použití DelProperty direktivy naleznete v tématu Použití INF AddProperty Direktivy a INF DelProperty Direktiva.
Delfiles=file-list-section[,file-list-section]...
Odkazuje na jeden nebo více pojmenovaných oddílů, ve kterých byly dříve nainstalovány soubory relevantní pro třídu v cíli jsou určeny k odstranění.
Další informace najdete v tématu INF DelFiles – direktiva.
Renfiles=file-list-section[,file-list-section]...
Odkazuje na jeden nebo více pojmenovaných oddílů, ve kterých jsou uvedeny soubory relevantní pro třídu, které mají být přejmenovány v cíli.
Další informace najdete v tématu INF RenFiles – direktiva.
BitReg=bit-registry-section[,bit-registry-section]...
Je platný v této části, ale téměř nikdy se nepoužívá.
Další informace naleznete v tématu INF BitReg – direktiva.
UpdateInis=update-ini-section[,update-ini-section]...
Je platný v této části, ale téměř nikdy se nepoužívá.
Další informace naleznete v tématu INF UpdateInis – direktiva.
UpdateIniFields=update-inifields-section[,update-inifields-section]...
Je platný v této části, ale téměř nikdy se nepoužívá.
Další informace naleznete v tématu INF UpdateIniFields – direktiva.
Ini2Reg=ini-to-registry-section[,ini-to-registry-section]...
Je platný v této části, ale téměř nikdy se nepoužívá.
Další informace naleznete v tématu INF UpdateIniFields – direktiva.
Remarks
Do souboru INF zařízení byste měli zahrnout oddíl ClassInstall32 pouze pro instalaci nové vlastní třídy nastavení zařízení. Soubory INF pro zařízení v nainstalované třídě bez ohledu na to, zda systémová třída nastavení zařízení nebo vlastní třída, by neměly obsahovat oddíl ClassInstall32 . Vzhledem k tomu, že systém zpracovává oddíl ClassInstall32 pouze v případě, že třída ještě není nainstalována, nelze použít oddíl ClassInstall32 k přeinstalaci nebo změně nastavení pro třídu, která je již nainstalována. Konkrétně nelze použít oddíl ClassInstall32 k přidání spoluinstalátoru třídy nebo ovladače filtru tříd pro třídu, která je již nainstalována. Informace o tom, jak nainstalovat spoluinstalátory a ovladače filtru, naleznete v tématu Zápis spoluinstalátoru a instalace ovladače filtru.
Oddíl ClassInstall32 má obvykle jeden nebo více direktiv AddReg pro přidání položek do systémového podklíče SetupClassGUID v registru. Tyto položky mohou obsahovat popisný název třídy, cestu instalačního programu třídy, ikonu třídy, poskytovatele stránky vlastností atd.
S výjimkou AddReg a CopyFiles jsou ostatní direktivy uvedené zde zřídka používány v oddílu ClassInstall32 .
Pokud chcete podporovat multiplatformní distribuci souborů ovladačů, vytvořte oddíly ClassInstall32 specifické pro platformu. Například všechny funkce SetupAPI systému, které zpracovávají oddíl ClassInstall32 , budou nejprve hledat oddíl ClassInstall32.ntx86 na platformě x86 a zkoumat pouze nesdílenou část ClassInstall32 , pokud nemůžou najít oddíl ClassInstall32.ntx86 . Další informace o použití souborů .nt, .ntx86, .ntia64, .ntamd64, .ntarm a .ntarm64 naleznete v tématu Vytváření souborů INF pro více platforem a operačních systémů.
Poznámka:
Název oddílu ClassInstall32 se také používá pro instalace na 64bitových platformách.
Počínaje Windows 2000 je každé nainstalované zařízení přidružené ke třídě nastavení zařízení. Pokud inf pro zařízení, které se má nainstalovat, není přidružen k novému instalačnímu programu třídy zařízení nebo pokud jeho specifikace ClassGUID= v části Verze neodpovídá identifikátoru GUID třídy nastavení definované systémem, je toto zařízení přidruženo ke třídě nastavení zařízení s názvem Neznámý.
Inf pro jakýkoli instalační program třídy zařízení obvykle má AddReg direktivu v jeho oddílu ClassInstall32 definovat alespoň jeden pojmenovaný oddíl, který vytvoří popisný název pro jeho druh zařízení. Instalační kód automaticky vytvoří klíč SetupClassGUID na příslušném místě v registru z hodnoty zadané pro ClassGUID= položka v části Verze INF při instalaci prvního zařízení této (nové) třídy instalace.
Inf může použít oddíly registru doplňku, na které odkazuje jeho oddíl ClassInstall32 , k určení poskytovatele stránky vlastností a k ovládání způsobu zpracování třídy zařízení v uživatelském rozhraní.
Taková část registru doplňku specifická pro třídu má následující obecný formulář:
[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]
Systém používá zadanou ikonu k reprezentaci vašeho instalačního programu uživateli.
- Pokud je hodnota Icon kladná, představuje identifikátor prostředku pro prostředek. Prostředek se extrahuje z knihovny DLL instalačního programu třídy, pokud je zadán klíč Installer32 nebo z knihovny DLL stránky vlastností, pokud je zadán klíč EnumPropPages32. Hodnota 0 představuje první ikonu v knihovně DLL. Hodnota 1 je vyhrazena.
- Pokud je hodnota Ikona záporná, absolutní hodnota je identifikátor prostředku ikony v SetupApi.DLL.
Nastavení předdefinovaných položek logické hodnoty SilentInstall, NoDisplayClass a NoInstallClass v klíči registru specifického pro třídu má následující účinky:
Nastavení SilentInstall směruje instalační programy tak, aby neposílaly uživatelům žádné místní zprávy, které vyžadují odpověď při instalaci zařízení této třídy, ať už jsou zadané v oddílech DDInstall souboru INF instalačního programu třídy nebo v samostatných souborech INF pro následně nainstalovaná zařízení, která deklarují tuto třídu nastavením stejné specifikace ClassGuid={ClassGUID} v příslušných částech verze. Například instalační programy systémové třídy CD-ROM a diskových zařízení a instalační program třídy paralelního portu systému nastavit SilentInstall v příslušných klíčích registru.
Pokud instalační program specifický pro třídu vyžaduje restartování počítače pro jakékoli zařízení, které nainstaluje, oddíl registru doplňku specifické pro třídu v inf nemůže tuto položku hodnoty.
Nastavení NoDisplayClass potlačuje zobrazení všech zařízení této třídy uživatelem Správce zařízení. Například instalační programy systémové třídy pro tiskárny a síťové ovladače (včetně klientů, služeb a protokolů) nastavují v příslušných klíčích registru NoDisplayClass.
Nastavení NoInstallClass označuje, že žádné zařízení tohoto typu nebude nikdy vyžadovat ruční instalaci koncovým uživatelem. Například instalační programy systémové třídy pro výhradně zařízení technologie Plug and Play (PnP) nastavují v příslušných klíčích registru NoInstallClass.
Oddíl ClassInstall32 může obsahovat direktivy AddReg pro nastavení DeviceType, DeviceCharacteristics a Security pro zařízení jeho třídy nastavení. Další informace najdete v direktivě INF AddReg .
Examples
Tento příklad ukazuje oddíl ClassInstall32 spolu s pojmenovaným oddílem, na který odkazuje se direktivou AddReg.
[ClassInstall32]
AddReg=example_class_addreg
[example_class_addreg]
HKR,,,,%ClassName%
HKR,,Icon,,"-1"
Naproti tomu tento příklad nastaví zprostředkovatele stránky vlastností specifické pro třídu. Tato inf také nastaví položky hodnoty SilentInstall a NoInstallClass v klíči třídy na TRUE (1).
[example_class_addreg]
HKR,,,,%ClassName%
HKR,,EnumPropPages32,,"ExampleBinary.Dll,ExamplePropPageProvider"
HKR,,SilentInstall,,1
HKR,,NoInstallClass,,1
HKR,,Icon,,"101"