Bagikan melalui


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:

  1. Tutup semua aplikasi WBF yang saat ini aktif.

  2. Hapus instalan driver WBDI.

  3. Hentikan layanan WBF, mulai ulang, lalu hentikan lagi.

  4. Pasang driver warisan.