INF ClassInstall32 bölümü

Caution

Evrensel veya Windows Bir Sürücü paketi oluşturuyorsanız, bu bölüm geçerli değildir. Bkz. Evrensel INF Dosyası Kullanma ve Windows sürücüleri geliştirmeye başlama.

ClassInstall32 bölümü, yeni sınıftaki cihazlar için yeni bir cihaz kurulum sınıfı yükler.

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

Giriş

AddReg=add-registry-section[,add-registry-section]...
Kayıt defterine yazılacak sınıfa özgü değer girdileri içeren bir veya daha fazla adlandırılmış bölüme başvurur. Genellikle bu, yeni cihaz kurulum sınıfına en azından diğer bileşenlerin daha sonra kayıt defterinden alabildiği kolay bir ad vermek ve bu yeni cihaz sınıfının yüklü cihazlarını açmak veya bu cihaz kurulum sınıfı için herhangi bir özellik sayfası sağlayıcısını "yüklemek" vb. için kullanılır.

Herhangi bir add-registry-section içindeki HKR belirtimi, bu sınıfın ayarlarını içeren kayıt defteri anahtarını belirtir. Ek bilgi için aşağıdaki Açıklamalar bölümüne bakın.

Daha fazla bilgi için bkz. INF AddReg Yönergesi.

AddProperty=add-property-section[,add-property-section]...
(Windows Windows Vista ve sonraki sürümleri) Bir cihaz kurulum sınıfı için ayarlanan cihaz özelliklerini değiştiren bir veya daha fazla INF dosyası bölümüne başvurur. INF AddProperty yönergesini yalnızca Windows işletim sistemlerinin Windows Vista veya sonraki sürümlerinde yeni olan bir cihaz kurulum sınıfı özelliğini ayarlamak için kullanmanız gerekir.

daha önce Windows Server 2003, Windows XP veya Windows 2000'de tanıtılan ve buna karşılık gelen kayıt defteri giriş değerlerine sahip cihaz sınıfı özellikleri için, cihaz kurulum sınıfı özelliğini ayarlamak için INF AddReg yönergelerini kullanmaya devam etmelisiniz. Bu yönergeler, sistem tanımlı özellikler ve özel özellikler için geçerlidir.

AddProperty yönergesini kullanma hakkında daha fazla bilgi için bkz. INF AddProperty Yönergesini ve INF DelProperty Yönergesini Kullanma.

Copyfiles=@filename | file-list-section[,file-list-section]...
Kaynak medyadan hedefe kopyalanacak bir adlandırılmış dosya belirtir veya kaynak medyadaki sınıfla ilgili dosyaların hedefe aktarmak üzere belirtildiği bir veya daha fazla adlandırılmış bölüme başvurur. INF'nin DestinationDirs bölümündeki DefaultDestDir girdisi, kopyalanacak sınıfa özgü tek bir dosyanın hedef dizinini belirtir.

Daha fazla bilgi için bkz. INF CopyFiles Yönergesi.

Note

Cihaz kurulum sınıfları için sistem tarafından sağlanan INF dosyaları bu bölümde bu yönergeyi kullanmaz.

DelReg=del-registry-section[,del-registry-section]...
Sınıf yükleyicisi yüklenirken kayıt defterinden kaldırılacak değer girdilerinin veya anahtarlarının belirtildiği bir veya daha fazla adlandırılmış bölüme başvurur.

Ancak, belirli bir {SetupClassGUID} zaten yüklü bir sınıf olarak varsa, sistem kurulum kodu daha sonra herhangi bir INF'nin ClassInstall32 bölümünü yoksayar ve Sürüm bölümünde aynı GUID değerini belirtir. Sonuç olarak, bir INF mevcut sınıf yükleyicisini değiştiremez veya classInstall32 bölümünden davranışını değiştiremez.

Daha fazla bilgi için bkz. INF DelReg Yönergesi.

DelProperty=del-property-section[,del-property-section]...
(Windows'ın Windows Vista ve sonraki sürümleri) Bir cihaz kurulum sınıfı için ayarlanan cihaz özelliklerini silecek bir veya daha fazla INF dosyası bölümüne başvurur. INF DelProperty yönergesini yalnızca Windows işletim sistemlerinin Windows Vista veya sonraki sürümlerinde yeni olan bir cihaz kurulum sınıfı özelliğini silmek için kullanmanız gerekir.

daha önce Windows Server 2003, Windows XP veya Windows 2000'de tanıtılan ve buna karşılık gelen kayıt defteri giriş değerlerine sahip cihaz sınıfı özellikleri için, cihaz kurulum sınıfı özelliğini silmek için INF DelReg yönergelerini kullanmaya devam etmelisiniz. Bu yönergeler, sistem tanımlı özellikler ve özel özellikler için geçerlidir.

DelProperty yönergesini kullanma hakkında daha fazla bilgi için bkz. INF AddProperty Yönergesini ve INF DelProperty Yönergesini Kullanma.

Delfiles=file-list-section[,file-list-section]...
Hedefe önceden yüklenmiş sınıfla ilgili dosyaların silinmek üzere belirtildiği bir veya daha fazla adlandırılmış bölüme başvurur.

Daha fazla bilgi için bkz. INF DelFiles Yönergesi.

Renfiles=file-list-section[,file-list-section]...
Hedefte yeniden adlandırılacak sınıfla ilgili dosyaların listelendiği bir veya daha fazla adlandırılmış bölüme başvurur.

Daha fazla bilgi için bkz. INF RenFiles Yönergesi.

BitReg=bit-registry-section[,bit-registry-section]...
Bu bölümde geçerlidir ancak neredeyse hiç kullanılmaz.

Daha fazla bilgi için bkz. INF BitReg Yönergesi.

UpdateInis=update-ini-section[,update-ini-section]...
Bu bölümde geçerlidir ancak neredeyse hiç kullanılmaz.

Daha fazla bilgi için bkz. INF UpdateInis Yönergesi.

UpdateIniFields=update-inifields-section[,update-inifields-section]...
Bu bölümde geçerlidir ancak neredeyse hiç kullanılmaz.

Daha fazla bilgi için bkz. INF UpdateIniFields Yönergesi.

Ini2Reg=ini-to-registry-section[,ini-to-registry-section]...
Bu bölümde geçerlidir ancak neredeyse hiç kullanılmaz.

Daha fazla bilgi için bkz. INF UpdateIniFields Yönergesi.

Remarks

Yeni bir özel cihaz kurulum sınıfı yüklemek için yalnızca bir cihaz INF dosyasına ClassInstall32 bölümü eklemeniz gerekir. Sistem tarafından sağlanan bir cihaz kurulum sınıfı veya özel sınıf olsun, yüklü bir sınıftaki cihazlar için INF dosyaları classInstall32 bölümü içermemelidir. Sistem bir ClassInstall32 bölümünü yalnızca bir sınıf henüz yüklü değilse işlediğinden, zaten yüklü olan bir sınıfın ayarlarını yeniden yüklemek veya değiştirmek için ClassInstall32 bölümünü kullanamazsınız. Özellikle, zaten yüklü olan bir sınıf için sınıf ortak yükleyicisi veya sınıf filtresi sürücüsü eklemek için ClassInstall32 bölümünü kullanamazsınız. Ortak yükleyicileri ve filtre sürücülerini yükleme hakkında bilgi için bkz. Ortak yükleyici yazma ve Filtre Sürücüsü Yükleme.

Genellikle, bir ClassInstall32 bölümünde kayıt defterinde sistem tarafından sağlanan bir SetupClassGUID alt anahtarının altına girdi eklemek için bir veya daha fazla AddReg yönergesi bulunur. Bu girdiler sınıfa özgü bir "kolay ad", sınıf yükleyici yolu, sınıf simgesi, özellik sayfası sağlayıcısı vb. içerebilir.

AddReg ve CopyFiles dışında, burada gösterilen diğer yönergeler bir ClassInstall32 bölümünde nadiren kullanılır.

Sürücü dosyalarının çok platformlu dağıtımını desteklemek için platforma özgü ClassInstall32 bölümleri oluşturun. Örneğin, bir ClassInstall32 bölümünü işleyen tüm sistem KurulumuAPI işlevleri önce bir x86 platformunda ClassInstall32.ntx86 bölümünü arar ve yalnızca bir ClassInstall32.ntx86 bölümü bulamazsa, düzeltilmemiş bir ClassInstall32 bölümünü inceler. Sistem tanımlı .nt, .ntx86, .ntia64, .ntamd64, .ntarm ve .ntarm64 uzantılarını kullanma hakkında daha fazla bilgi için bkz. Birden Çok Platform ve İşletim Sistemi için INF Dosyaları Oluşturma.

Note

ClassInstall32 bölüm adı, 64 bit platformlardaki yüklemeler için de kullanılır.

Windows 2000'den başlayarak, yüklenen her cihaz bir cihaz kurulum sınıfıyla ilişkilendirilir. Yüklenecek bir cihazın INF'i yeni bir cihaz sınıf yükleyicisiyle ilişkilendirilmemişse veya Sürüm bölümündeki ClassGUID= belirtimi sistem tanımlı kurulum sınıfı GUID'siyle eşleşmiyorsa, bu cihaz cihaz kurulum sınıfıyla "Bilinmiyor" adıyla ilişkilendirilir.

Herhangi bir cihaz sınıfı yükleyicisinin INF'sinin genellikle ClassInstall32 bölümünde, cihaz türü için kolay bir ad oluşturan en az bir adlandırılmış bölüm tanımlamaya yönelik bir AddReg yönergesi vardır. Kurulum kodu, söz konusu (yeni) kurulum sınıfının ilk cihazı yüklendiğinde INF'nin Sürüm bölümünde ClassGUID= girişi için sağlanan değerden kayıt defterinde uygun yerde otomatik olarak bir SetupClassGUID anahtarı oluşturur.

INF, bir özellik sayfası sağlayıcısı belirtmek ve cihaz sınıfının kullanıcı arabiriminde nasıl işleneceğini denetlemek için ClassInstall32 bölümünde başvuruda bulunan add-registry bölümlerini kullanabilir.

Sınıfa özgü add-registry bölümü aşağıdaki genel forma sahiptir:

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

Sistem, yükleyicinizi kullanıcıya göstermek için belirtilen simgeyi kullanır.

  • Simge değeri pozitifse, bir kaynağın kaynak tanımlayıcısını temsil eder. Kaynak, Installer32 anahtarı belirtilirse sınıf yükleyici DLL'sinden veya EnumPropPages32 anahtarı belirtilmişse özellik sayfası DLL'sinden ayıklanır. "0" değeri DLL'deki ilk simgeyi temsil eder. "1" değeri ayrılmıştır.
  • Simge değeri negatifse, mutlak değer SetupApi.DLL simgesinin kaynak tanımlayıcısı olur.

Sınıfa özgü kayıt defteri anahtarında önceden tanımlanmış SilentInstall, NoDisplayClass ve NoInstallClass Boolean değer girişlerini ayarlamanın aşağıdaki etkileri vardır:

  • SilentInstall ayarı, yükleyicileri, sınıf yükleyicisinin INF dosyasının DDInstall bölümlerinde veya ilgili Sürüm bölümlerinde aynı ClassGuid={ClassGUID} belirtimini ayarlayarak bu sınıfın kendisini bildiren sonraki yüklenen cihazlar için ayrı INF dosyalarında belirtilen, bu sınıfın cihazlarını yüklerken yanıt gerektiren bir açılır ileti göndermeye yönlendirir. Örneğin, CD-ROM ve disk cihazlarının sistem sınıfı yükleyicileri ve sistem paralel bağlantı noktası sınıf yükleyicisi, ilgili kayıt defteri anahtarlarında SilentInstall'ı ayarlar.

    Sınıfa özgü bir yükleyici, bilgisayarın yüklemiş olduğu herhangi bir cihaz için yeniden başlatılmasını gerektiriyorsa, INF'deki sınıfa özgü add-registry bölümünde bu değer girişi bulunamaz.

  • NoDisplayClass ayarı, Aygıt Yöneticisi tarafından bu sınıfın tüm cihazlarının kullanıcı görünür görünümünü gizler. Örneğin, yazıcılar ve ağ sürücüleri (istemciler, hizmetler ve protokoller dahil) için sistem sınıfı yükleyicileri, ilgili kayıt defteri anahtarlarında NoDisplayClass'ı ayarlar.

  • NoInstallClass ayarı, bu tür hiçbir cihazın son kullanıcı tarafından el ile yüklenmesini gerektirmeyeceğini gösterir. Örneğin, yalnızca Tak ve Kullan (PnP) cihazlar için sistem sınıfı yükleyicileri, ilgili kayıt defteri anahtarlarında NoInstallClass'ı ayarlar.

ClassInstall32 bölümü, kurulum sınıfındaki cihazlar için DeviceType, DeviceCharacteristics ve Security'yi ayarlamak için AddReg yönergeleri içerebilir. Daha fazla bilgi için bkz. INF AddReg Yönergesi .

Examples

Bu örnekte ClassInstall32 bölümü ve AddReg yönergesi ile başvuracakları adlandırılmış bölüm gösterilmektedir.

[ClassInstall32] 
AddReg=example_class_addreg

[example_class_addreg]
HKR,,,,%ClassName%
HKR,,Icon,,"-1"

Buna karşılık, bu örnek sınıfa özgü bir özellik sayfası sağlayıcısı ayarlar. Bu INF ayrıca sınıf anahtarındaki SilentInstall ve NoInstallClass değer girdilerini TRUE (1) olarak ayarlar.

[example_class_addreg]
HKR,,,,%ClassName%
HKR,,EnumPropPages32,,"ExampleBinary.Dll,ExamplePropPageProvider"
HKR,,SilentInstall,,1
HKR,,NoInstallClass,,1
HKR,,Icon,,"101"

Ayrıca bkz.

AddProperty

AddReg

BitReg

CopyFiles

DDInstall

DelFiles

DelProperty

DelReg

Ini2Reg

Modeller

RenFiles

SetupDiBuildClassInfoList

UpdateIniFields

UpdateInis

Sürüm