다음을 통해 공유


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 반환되면 캡처가 성공했는지 여부를 나타냅니다. 가능한 값은 다음 표에 나와 있습니다.

센서 상태 코드 묘사
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에 대해 정의된 중요한 값은 지문 거부 세부 정보만을 위한 것입니다.
 
WINBIO_TYPE_FINGERPRINT 오류 세부 정보 값은 다음과 같습니다.
#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

참고 항목

IOCTL_BIOMETRIC_CAPTURE_DATA