Menginstal Driver Biometrik
Vendor dapat menyediakan file INF untuk menginstal driver WBDI.
Berikut ini adalah daftar panduan untuk penginstalan perangkat biometrik. Contoh kode dalam artikel ini diambil dari file WudfBioUsbSample.inx dari WudfBioUsbSample:
Driver WBDI harus menentukan kelas "Biometrik." Atur ClassGuid sama dengan nilai yang sesuai dengan GUID_DEVCLASS_BIOMETRIC di Devguid.h:
[Version] ... Class=Biometric ClassGuid={53D29EF7-377C-4D14-864B-EB3A85769359} ...
Dalam . Bagian HW, berikan arahan AddReg untuk menentukan tiga bagian yang berisi entri yang akan ditambahkan ke registri:
[Biometric_Install.NT.hw] AddReg=Biometric_Device_AddReg AddReg=DriverPlugInAddReg, DatabaseAddReg
Berikan bagian bernama yang dirujuk dalam . Bagian HW. Bagian [Biometric_Device_AddReg] menetapkan nilai untuk perangkat biometrik, termasuk bendera eksklusif dan sistem bangun/perangkat diam. Untuk dikenali oleh Windows Biometric Framework, driver WBDI berbasis UMDF harus menetapkan nilai "Eksklusif" ke 1. Dua baris pertama bagian [Biometric_Device_AddReg] menentukan hak daftar kontrol akses (ACL) sehingga perangkat hanya dapat dibuka oleh administrator atau akun sistem lokal. Saat Anda menentukan hak ACL ini, aplikasi pihak ketiga tidak dapat membuka perangkat dan mengambil data sidik jari saat layanan WinBio tidak berjalan. Contohnya:
[Biometric_Device_AddReg] HKR,,"DeviceCharacteristics",0x10001,0x0100 ; Use same security checks on relative opens HKR,,"Security",,"D:P(A;;GA;;;BA)(A;;GA;;;SY)" ; Allow generic-all access to Built-in administrators and Local system HKR,,"LowerFilters",0x00010008,"WinUsb" ; FLG_ADDREG_TYPE_MULTI_SZ | FLG_ADDREG_APPEND HKR,,"Exclusive",0x10001,1 HKR,,"SystemWakeEnabled",0x00010001,1 HKR,,"DeviceIdleEnabled",0x00010001,1 HKR,,"UserSetDeviceIdleEnabled",0x00010001,1 HKR,,"DefaultIdleState",0x00010001,1 HKR,,"DefaultIdleTimeout",0x00010001,5000
Driver WBDI yang mengekspos fungsionalitas ke tumpukan biometrik warisan (non-WBDI) harus mengatur nilai Eksklusif ke nol. Jika nilai ini diatur ke nol, Windows Biometric Framework tidak mencoba mengontrol perangkat, dan perangkat tidak terekspos melalui WBF.
Vendor dapat memiliki biner driver tunggal yang dapat bekerja dengan tumpukan warisan dan WBF, tetapi keduanya tidak dapat beroperasi secara bersamaan. WBF hanya akan beroperasi jika perangkat dapat dibuka dengan akses eksklusif.
Bagian bernama kedua berisi nilai registri untuk adaptor plug-in. Sampel menggunakan adaptor sensor dan adaptor penyimpanan yang disediakan Microsoft. Bagian ini juga memungkinkan dukungan masuk Windows dengan mengatur nilai SystemSensor:
[DriverPlugInAddReg] HKR,WinBio\Configurations,DefaultConfiguration,,"0" HKR,WinBio\Configurations\0,SensorMode,0x10001,1 ; Basic - 1, Advanced - 2 HKR,WinBio\Configurations\0,SystemSensor,0x10001,1 ; UAC/Winlogon - 1 HKR,WinBio\Configurations\0,SensorAdapterBinary,,"WinBioSensorAdapter.DLL" ; Windows built-in WBDI sensor adapter. HKR,WinBio\Configurations\0,EngineAdapterBinary,,"EngineAdapter.DLL" ; Vendor engine HKR,WinBio\Configurations\0,StorageAdapterBinary,,"WinBioStorageAdapter.DLL" ; Windows built-in storage adapter HKR,WinBio\Configurations\0,DatabaseId,,"6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50" ; Unique database GUID
Terakhir, bagian ketiga menetapkan nilai registri berikut untuk layanan database. GUID yang mengidentifikasi harus unik untuk setiap database vendor dengan format tertentu. Misalnya, dalam contoh kode ini dari sampel, ubah 6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50 ke GUID unik Anda sendiri dalam file INF Anda.
[DatabaseAddReg] HKLM,System\CurrentControlSet\Services\WbioSrvc\Databases\{6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50},BiometricType,0x00010001,0x00000008 HKLM,System\CurrentControlSet\Services\WbioSrvc\Databases\{6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50},Attributes,0x00010001,0x00000001 HKLM,System\CurrentControlSet\Services\WbioSrvc\Databases\{6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50},Format,,"00000000-0000-0000-0000-000000000000" HKLM,System\CurrentControlSet\Services\WbioSrvc\Databases\{6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50},InitialSize,0x00010001,0x00000020 HKLM,System\CurrentControlSet\Services\WbioSrvc\Databases\{6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50},AutoCreate,0x00010001,0x00000001 HKLM,System\CurrentControlSet\Services\WbioSrvc\Databases\{6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50},AutoName,0x00010001,0x00000001 HKLM,System\CurrentControlSet\Services\WbioSrvc\Databases\{6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50},FilePath,,"" HKLM,System\CurrentControlSet\Services\WbioSrvc\Databases\{6E9D4C5A-55B4-4c52-90B7-DDDC75CA4D50},ConnectionString,,""
Untuk membedakan driver WBDI dan warisan, vendor harus mengatur Skor Fitur untuk driver dalam file INX. Skor Fitur tidak diatur dalam sampel WudfBioUsbSample . Untuk informasi selengkapnya tentang mengatur Skor Fitur, lihat Memberi Peringkat Driver Biometrik di Windows Update.
Untuk informasi tentang file INX dan perbedaannya dengan file INF, lihat Menggunakan File INX untuk Membuat File INF.
Untuk mengganti driver WBDI dengan driver warisan, gunakan prosedur berikut:
Tutup semua aplikasi WBF yang saat ini aktif.
Hapus instalan driver WBDI.
Hentikan layanan WBF, mulai ulang, lalu hentikan lagi.
Pasang driver warisan.