WINBIO_CAPTURE_DATA 結構 (winbio_ioctl.h)
IOCTL_BIOMETRIC_CAPTURE_DATA IOCTL 會將WINBIO_CAPTURE_DATA結構當做輸出傳回。
語法
typedef struct _WINBIO_CAPTURE_DATA {
DWORD PayloadSize;
HRESULT WinBioHresult;
WINBIO_SENSOR_STATUS SensorStatus;
WINBIO_REJECT_DETAIL RejectDetail;
WINBIO_DATA CaptureData;
} WINBIO_CAPTURE_DATA, *PWINBIO_CAPTURE_DATA;
成員
PayloadSize
承載的總大小。 這包括固定長度結構,以及結尾的任何變數數據。
WinBioHresult
I/O 作業的狀態詳細數據。 這是將傳遞 WINBIO 錯誤和資訊碼的位置。 下表顯示這個成員的可能值。
狀態值 | 描述 |
---|---|
S_OK | 作業已成功完成。 |
WINBIO_E_DATA_COLLECTION_IN_PROGRESS | 已經有數據收集IOCTL擱置中。 |
WINBIO_E_UNSUPPORTED_DATA_FORMAT | 此驅動程式和裝置不支援指定的格式。 |
WINBIO_E_UNSUPPORTED_DATA_TYPE | 此驅動程式和裝置不支援所要求的數據類型。 |
WINBIO_E_INVALID_DEVICE_STATE | 裝置無法進入生物特徵辨識擷取模式。 這可能是因為裝置處於另一個非數據收集模式。 |
HRESULT_FROM_NT (STATUS_IO_DEVICE_ERROR) | 作業因裝置錯誤而未完成。 |
WINBIO_E_DEVICE_BUSY | 裝置位於廠商特定作業的中間。 |
WINBIO_E_CANCELED | 作業已由呼叫端或IOCTL_BIOMETRIC_RESET要求取消。 |
WINBIO_E_UNSUPPORTED_PURPOSE | 驅動程式不支援指定的擷取用途。 |
SensorStatus
發生擷取之後感測器WINBIO_SENSOR_STATUS狀態。 它會指定感測器的作業狀態。
您可以隨時查詢WINBIO_SENSOR_STATUS。 當擷取 I/O 完成時傳回WINBIO_SENSOR_STATUS時,它會指出擷取是否成功。 下表顯示可能的值。
感測器狀態代碼 | Description |
---|---|
WINBIO_SENSOR_ACCEPT | 感測器剛成功完成擷取作業。 這應該只在擷取作業之後立即傳回。 感測器接著會返回WINBIO_SENSOR_READY或WINBIO_SENSOR_BUSY。 |
WINBIO_SENSOR_REJECT | 感測器拒絕先前的擷取作業。 這應該只會在擷取作業之後立即傳回。 感測器接著會返回WINBIO_SENSOR_READY或WINBIO_SENSOR_BUSY。 |
WINBIO_SENSOR_READY | 感測器已準備好擷取數據。 如果有暫止的數據擷取 IOCTL,感測器便已準備好接受數據。 |
WINBIO_SENSOR_BUSY | 感測器忙碌中或處於無法擷取數據的狀態。 例如,裝置在開啟之後仍可初始化。 |
WINBIO_SENSOR_NOT_CALIBRATED | 感測器必須經過校正,才能進入數據收集模式。 |
WINBIO_SENSOR_FAILURE | 感測器裝置失敗。 |
RejectDetail
如果感測器狀態WINBIO_SENSOR_REJECT,此成員會包含WINBIO_REJECT_DETAIL值。 WINBIO_SENSOR_REJECT指定生物特徵辨識取樣作業失敗的原因。
重要 針對 Windows 7 定義的值僅適用於指紋拒絕詳細數據。
#define WINBIO_FP_TOO_HIGH ((WINBIO_REJECT_DETAIL)1)
#define WINBIO_FP_TOO_LOW ((WINBIO_REJECT_DETAIL)2)
#define WINBIO_FP_TOO_LEFT ((WINBIO_REJECT_DETAIL)3)
#define WINBIO_FP_TOO_RIGHT ((WINBIO_REJECT_DETAIL)4)
#define WINBIO_FP_TOO_FAST ((WINBIO_REJECT_DETAIL)5)
#define WINBIO_FP_TOO_SLOW ((WINBIO_REJECT_DETAIL)6)
#define WINBIO_FP_POOR_QUALITY ((WINBIO_REJECT_DETAIL)7)
#define WINBIO_FP_TOO_SKEWED ((WINBIO_REJECT_DETAIL)8)
#define WINBIO_FP_TOO_SHORT ((WINBIO_REJECT_DETAIL)9)
#define WINBIO_FP_MERGE_FAILURE ((WINBIO_REJECT_DETAIL)10)
CaptureData
類型 為 WINBIO_DATA 的結構,其中包含裝置所擷取之格式的數據。 WINBIO_DATA 結構的 Data 陣列成員應該包含 WINBIO_BIR 結構。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 適用於 Windows 7 和更新版本的 Windows。 |
標頭 | winbio_ioctl.h |