IOCTL_BIOMETRIC_UPDATE_FIRMWARE IOCTL (winbio_ioctl.h)
IOCTL_BIOMETRIC_UPDATE_FIRMWARE IOCTL 告知驱动程序使用给定的固件映像更新设备的固件。 此 IOCTL 是可选的。
主要代码
输入缓冲区
输入缓冲区长度
WINBIO_UPDATE_FIRMWARE 结构的长度。
输出缓冲区
AssociatedIrp.SystemBuffer 成员指向包含 WINBIO_BLANK_PAYLOAD 结构的缓冲区。
输出缓冲区长度
最小的有效输出缓冲区大小是 DWORD 的大小。 如果驱动程序收到 DWORD 大小的输出缓冲区,则驱动程序应返回请求的操作所需的缓冲区大小。
状态块
指示对驱动程序的 DeviceIoControl 调用是否已完成,并且 OUT 有效负载是否有效。
Status 成员设置为下表中的值之一。
状态值 | 说明 |
---|---|
S_OK、STATUS_SUCCESS | 操作已成功完成。 如果返回的数据大小为 DWORD,则有效负载包含调用所需的缓冲区大小。 否则,有效负载包含完整的输出缓冲区。 |
E_INVALIDARG | 未正确指定参数。 |
E_UNKNOWN | 阻止填充有效负载的任何其他故障。 |
E_UNEXPECTED | 阻止填充有效负载的任何其他故障。 |
E_FAIL | 阻止填充有效负载的任何其他故障。 |
注解
固件映像特定于每个供应商,可能包含固件数据和驱动程序验证映像所需的任何额外数据。
如果设备具有不同的固件更新机制,驱动程序可以返回此 IOCTL 的E_NOTIMPL。
如果供应商提供的驱动程序传回整个有效负载,则应使用生物识别操作的状态填充 WINBIO_BLANK_PAYLOAD 的 WinBioHresult 成员。
可能的值包括:
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Windows 7 和更高版本的 Windows 中可用。 |
标头 | winbio_ioctl.h |