Introdução com drivers biométricos
O WBF (Windows Biometric Framework) é uma arquitetura biométrica genérica no Windows 7 e versões posteriores do Windows.
O WBF inclui uma interface de driver baseada em IOCTL conhecida como WBDI (Interface de Driver Biométrico do Windows), bem como um serviço windows chamado WBS (Serviço Biométrico do Windows). O WBS também é chamado de serviço WinBio. Os drivers WBDI respondem às solicitações do serviço WinBio. O WBF também inclui o suporte ao logon do Windows.
Esta documentação descreve o WBDI. O WBS é documentado separadamente no SDK do Windows.
Escolhendo um modelo de driver
A primeira opção que você deve fazer ao desenvolver um driver para trabalhar com a WBDI (Interface de Driver Biométrico do Windows) é qual modelo de driver usar.
A Microsoft recomenda que os IHVs desenvolvam drivers de dispositivo biométricos usando o WUDF (Windows User-mode Driver Framework, também conhecido como UMDF) e o destino de E/S do WinUSB.
O diagrama a seguir mostra como um driver WBDI (Interface de Driver Biométrico do Windows) baseado em UMDF se encaixa no suporte biométrico do WBF (Windows Biometric Framework) no Windows 7. Todas as operações biométricas são orientadas por aplicativos cliente para o Serviço Biométrico do Windows (WBS). O WBS envia solicitações para drivers de dispositivo biométricos que expõem a interface WBDI.
No diagrama anterior, o fornecedor fornece a DLL do driver de dispositivo biométrico.
Se você não quiser usar o UMDF para desenvolver seu driver, também poderá optar por implementar o WBDI usando um driver KMDF ou WDM, mas esse não é o ambiente de desenvolvimento de driver preferido.
A lista a seguir mostra as diferentes maneiras de desenvolver um driver para WBDI, com o método mais preferencial na parte superior e o menos preferencial na parte inferior:
UMDF com um destino de E/S do WinUsb
UMDF com um filtro KMDF personalizado no WinUsb ou destino de E/S kmdf personalizado
KMDF
WDM (somente quando absolutamente necessário)
Esta documentação descreve como usar o UMDF para gravar um driver biométrico USB no modo de usuário baseado em WBDI.