struktur WINBIO_ASYNC_RESULT (winbio.h)
Struktur WINBIO_ASYNC_RESULT berisi hasil operasi asinkron.
Sintaks
typedef struct _WINBIO_ASYNC_RESULT {
WINBIO_SESSION_HANDLE SessionHandle;
WINBIO_OPERATION_TYPE Operation;
ULONGLONG SequenceNumber;
LONGLONG TimeStamp;
HRESULT ApiStatus;
WINBIO_UNIT_ID UnitId;
PVOID UserData;
union {
struct {
BOOLEAN Match;
WINBIO_REJECT_DETAIL RejectDetail;
} Verify;
struct {
WINBIO_IDENTITY Identity;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
WINBIO_REJECT_DETAIL RejectDetail;
} Identify;
struct {
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
} EnrollBegin;
struct {
WINBIO_REJECT_DETAIL RejectDetail;
} EnrollCapture;
struct {
WINBIO_IDENTITY Identity;
BOOLEAN IsNewTemplate;
} EnrollCommit;
struct {
WINBIO_IDENTITY Identity;
SIZE_T SubFactorCount;
WINBIO_BIOMETRIC_SUBTYPE *SubFactorArray;
} EnumEnrollments;
struct {
PWINBIO_BIR Sample;
SIZE_T SampleSize;
WINBIO_REJECT_DETAIL RejectDetail;
} CaptureSample;
struct {
WINBIO_IDENTITY Identity;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
} DeleteTemplate;
struct {
WINBIO_PROPERTY_TYPE PropertyType;
WINBIO_PROPERTY_ID PropertyId;
WINBIO_IDENTITY Identity;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
SIZE_T PropertyBufferSize;
PVOID PropertyBuffer;
} GetProperty;
struct {
WINBIO_PROPERTY_TYPE PropertyType;
WINBIO_PROPERTY_ID PropertyId;
WINBIO_IDENTITY Identity;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
SIZE_T PropertyBufferSize;
PVOID PropertyBuffer;
} SetProperty;
struct {
WINBIO_EVENT Event;
} GetEvent;
struct {
WINBIO_COMPONENT Component;
ULONG ControlCode;
ULONG OperationStatus;
PUCHAR SendBuffer;
SIZE_T SendBufferSize;
PUCHAR ReceiveBuffer;
SIZE_T ReceiveBufferSize;
SIZE_T ReceiveDataSize;
} ControlUnit;
struct {
SIZE_T BspCount;
WINBIO_BSP_SCHEMA *BspSchemaArray;
} EnumServiceProviders;
struct {
SIZE_T UnitCount;
WINBIO_UNIT_SCHEMA *UnitSchemaArray;
} EnumBiometricUnits;
struct {
SIZE_T StorageCount;
WINBIO_STORAGE_SCHEMA *StorageSchemaArray;
} EnumDatabases;
struct {
BOOLEAN Match;
WINBIO_REJECT_DETAIL RejectDetail;
WINBIO_PROTECTION_TICKET Ticket;
} VerifyAndReleaseTicket;
struct {
WINBIO_IDENTITY Identity;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
WINBIO_REJECT_DETAIL RejectDetail;
WINBIO_PROTECTION_TICKET Ticket;
} IdentifyAndReleaseTicket;
struct {
ULONGLONG SelectorValue;
} EnrollSelect;
struct {
WINBIO_PRESENCE_CHANGE ChangeType;
SIZE_T PresenceCount;
WINBIO_PRESENCE *PresenceArray;
} MonitorPresence;
struct {
WINBIO_IDENTITY Identity;
WINBIO_PROTECTION_POLICY Policy;
} GetProtectionPolicy;
struct {
WINBIO_EXTENDED_UNIT_STATUS ExtendedStatus;
} NotifyUnitStatusChange;
} Parameters;
} WINBIO_ASYNC_RESULT, *PWINBIO_ASYNC_RESULT;
Anggota
SessionHandle
Handel sesi asinkron dimulai dengan memanggil fungsi WinBioAsyncOpenSession atau fungsi WinBioAsyncOpenFramework .
Operation
Jenis operasi asinkron. Untuk informasi selengkapnya, lihat konstanta WINBIO_OPERATION_TYPE.
SequenceNumber
Nomor urut operasi asinkron. Bilangan bulat ditetapkan secara berurutan untuk setiap operasi dalam sesi biometrik, mulai dari satu (1). Untuk sesi apa pun, operasi terbuka selalu diberi nomor urutan pertama dan operasi penutupan diberi nomor urutan terakhir. Jika aplikasi Anda mengantre beberapa operasi, Anda dapat menggunakan nomor urut untuk melakukan penanganan kesalahan. Misalnya, Anda dapat mengabaikan hasil operasi hingga nomor urutan tertentu dikirim ke aplikasi.
TimeStamp
Tanggal dan waktu sistem di mana operasi biometrik dimulai. Untuk informasi selengkapnya, lihat fungsi GetSystemTimeAsFileTime .
ApiStatus
Kode kesalahan yang dikembalikan oleh operasi.
UnitId
Pengidentifikasi unit numerik unit biometrik yang melakukan operasi.
UserData
Alamat buffer opsional yang disediakan oleh pemanggil. Buffer tidak dimodifikasi oleh kerangka kerja atau unit biometrik. Aplikasi Anda dapat menggunakan data untuk membantunya menentukan tindakan apa yang harus dilakukan setelah menerima pemberitahuan penyelesaian atau untuk mempertahankan informasi tambahan tentang operasi yang diminta.
Parameters
Serikat pekerja yang mencakup struktur berlapis yang berisi informasi tambahan tentang keberhasilan atau kegagalan operasi asinkron yang dimulai oleh aplikasi klien.
Parameters.Verify
Berisi hasil panggilan asinkron ke WinBioVerify.
Parameters.Verify.Match
Menentukan apakah sampel yang diambil cocok dengan identitas pengguna.
Parameters.Verify.RejectDetail
Informasi tambahan tentang kegagalan verifikasi. Untuk informasi selengkapnya, lihat Keterangan.
Parameters.Identify
Berisi hasil panggilan asinkron ke WinBioIdentify.
Parameters.Identify.Identity
GUID atau SID pengguna yang menyediakan sampel biometrik.
Parameters.Identify.SubFactor
Subfaktor yang terkait dengan sampel biometrik. Untuk informasi selengkapnya, lihat Keterangan.
Parameters.Identify.RejectDetail
Informasi tambahan tentang kegagalan, jika ada, untuk menangkap dan mengidentifikasi sampel biometrik. Untuk informasi selengkapnya, lihat Keterangan.
Parameters.EnrollBegin
Berisi hasil panggilan asinkron ke WinBioEnrollBegin.
Parameters.EnrollBegin.SubFactor
Informasi tambahan tentang pendaftaran. Untuk informasi selengkapnya, lihat Keterangan.
Parameters.EnrollCapture
Berisi hasil panggilan asinkron ke WinBioEnrollCapture.
Parameters.EnrollCapture.RejectDetail
Informasi tambahan tentang kegagalan untuk menangkap sampel biometrik. Untuk informasi selengkapnya, lihat Keterangan.
Parameters.EnrollCommit
Berisi hasil panggilan asinkron ke WinBioEnrollCommit.
Parameters.EnrollCommit.Identity
GUID atau SID templat yang akan disimpan.
Parameters.EnrollCommit.IsNewTemplate
Menentukan apakah templat yang ditambahkan ke database baru.
Parameters.EnumEnrollments
Berisi hasil panggilan asinkron ke WinBioEnumEnrollments.
Parameters.EnumEnrollments.Identity
GUID atau SID templat tempat subfaktor diambil.
Parameters.EnumEnrollments.SubFactorCount
Jumlah elemen dalam array yang ditunjukkan oleh anggota SubFactorArray .
Parameters.EnumEnrollments.SubFactorArray
Penunjuk ke array subfaktor. Untuk informasi selengkapnya, lihat Keterangan.
Parameters.CaptureSample
Berisi hasil panggilan asinkron ke WinBioCaptureSample.
Parameters.CaptureSample.Sample
Penunjuk ke struktur WINBIO_BIR yang berisi sampel.
Parameters.CaptureSample.SampleSize
Ukuran, dalam byte, dari struktur WINBIO_BIR yang dikembalikan dalam anggota Sampel .
Parameters.CaptureSample.RejectDetail
Informasi tambahan tentang kegagalan untuk menangkap sampel biometrik. Untuk informasi selengkapnya, lihat Keterangan.
Parameters.DeleteTemplate
Berisi hasil panggilan asinkron ke WinBioDeleteTemplate.
Parameters.DeleteTemplate.Identity
GUID atau SID templat yang dihapus.
Parameters.DeleteTemplate.SubFactor
Informasi tambahan tentang templat.
Parameters.GetProperty
Berisi hasil panggilan asinkron ke WinBioGetProperty.
Parameters.GetProperty.PropertyType
Sumber informasi properti. Saat ini ini akan WINBIO_PROPERTY_TYPE_UNIT.
Parameters.GetProperty.PropertyId
Properti yang dikueri. Saat ini ini akan WINBIO_PROPERTY_SAMPLE_HINT.
Parameters.GetProperty.Identity
Ini adalah nilai yang dipesan dan akan null.
Parameters.GetProperty.SubFactor
Ini dicadangkan dan akan WINBIO_SUBTYPE_NO_INFORMATION.
Parameters.GetProperty.PropertyBufferSize
Ukuran, dalam byte, dari nilai properti yang ditujukkan oleh anggota PropertyBuffer .
Parameters.GetProperty.PropertyBuffer
Penunjuk ke nilai properti.
Parameters.SetProperty
Berisi hasil panggilan asinkron ke WinBioSetProperty. Anggota ini didukung mulai dari Windows 10.
SetProperty.PropretyBufferSize
Ukuran, dalam byte, dari struktur yang menunjuk parameter PropertyBuffer .
Parameters.SetProperty.PropertyType
Nilai WINBIO_PROPERTY_TYPE yang menentukan jenis properti yang ditetapkan. Saat ini ini hanya dapat WINBIO_PROPERTY_TYPE_ACCOUNT.
Parameters.SetProperty.PropertyId
Nilai WINBIO_PROPERTY_ID yang menentukan properti yang ditetapkan. Saat ini nilai ini hanya dapat WINBIO_PROPERTY_ANTI_SPOOF_POLICY. Semua properti lainnya bersifat baca-saja.
Parameters.SetProperty.Identity
Struktur WINBIO_IDENTITY yang menentukan akun tempat properti ditetapkan.
Parameters.SetProperty.SubFactor
Dicadangkan. Saat ini, nilai ini akan selalu WINBIO_SUBTYPE_NO_INFORMATION.
Parameters.SetProperty.PropertyBufferSize
Parameters.SetProperty.PropertyBuffer
Penunjuk ke struktur yang menentukan nilai yang ditetapkan properti. Untuk properti WINBIO_PROPERTY_ANTI_SPOOF_POLICY , strukturnya adalah struktur WINBIO_ANTI_SPOOF_POLICY .
Parameters.GetEvent
Berisi informasi status tentang peristiwa yang dimunculkan.
Parameters.GetEvent.Event
Berisi informasi peristiwa.
Parameters.ControlUnit
Berisi hasil panggilan asinkron ke WinBioControlUnit atau WinBioControlUnitPrivileged.
Parameters.ControlUnit.Component
Komponen dalam unit biometrik yang melakukan operasi.
Parameters.ControlUnit.ControlCode
Kode yang ditentukan vendor yang dikenali oleh unit biometrik yang ditentukan oleh parameter UnitId dari fungsi WinBioControlUnit atau WinBioControlUnitPrivileged dan adaptor yang ditentukan oleh parameter Komponen .
Parameters.ControlUnit.OperationStatus
Kode status yang ditentukan vendor yang menentukan hasil operasi kontrol.
Parameters.ControlUnit.SendBuffer
Penunjuk ke buffer yang berisi informasi kontrol yang dikirim ke adaptor oleh komponen. Format dan konten buffer ditentukan vendor.
Parameters.ControlUnit.SendBufferSize
Ukuran, dalam byte, dari buffer yang ditentukan oleh anggota SendBuffer .
Parameters.ControlUnit.ReceiveBuffer
Penunjuk ke buffer yang menerima informasi yang dikirim oleh adaptor yang ditentukan oleh anggota Komponen . Format dan konten buffer ditentukan vendor.
Parameters.ControlUnit.ReceiveBufferSize
Ukuran, dalam byte, dari buffer yang ditentukan oleh anggota ReceiveBuffer .
Parameters.ControlUnit.ReceiveDataSize
Ukuran, dalam byte, dari data yang ditulis ke buffer yang ditentukan oleh anggota ReceiveBuffer .
Parameters.EnumServiceProviders
Berisi hasil panggilan asinkron ke WinBioEnumServiceProviders atau WinBioAsyncEnumServiceProviders.
Parameters.EnumServiceProviders.BspCount
Jumlah struktur yang diarahkan oleh anggota BspSchemaArray .
Parameters.EnumServiceProviders.BspSchemaArray
Arahkan ke array struktur WINBIO_BSP_SCHEMA yang berisi informasi tentang setiap penyedia layanan yang tersedia.
Parameters.EnumBiometricUnits
Berisi hasil panggilan asinkron ke WinBioEnumBiometricUnits atau WinBioAsyncEnumBiometricUnits.
Parameters.EnumBiometricUnits.UnitCount
Jumlah struktur yang diarahkan oleh anggota UnitSchemaArray .
Parameters.EnumBiometricUnits.UnitSchemaArray
Array struktur WINBIO_UNIT_SCHEMA yang berisi informasi tentang setiap unit biometrik yang dijumlahkan.
Parameters.EnumDatabases
Berisi hasil panggilan asinkron ke WinBioEnumDatabases atau WinBioAsyncEnumDatabases.
Parameters.EnumDatabases.StorageCount
Jumlah struktur yang diarahkan oleh anggota StorageSchemaArray .
Parameters.EnumDatabases.StorageSchemaArray
Array struktur WINBIO_STORAGE_SCHEMA yang berisi informasi tentang setiap database.
Parameters.VerifyAndReleaseTicket
Dicadangkan. Anggota ini didukung mulai dari Windows 10.
Parameters.VerifyAndReleaseTicket.Match
Dicadangkan.
Parameters.VerifyAndReleaseTicket.RejectDetail
Dicadangkan.
Parameters.VerifyAndReleaseTicket.Ticket
Dicadangkan.
Parameters.IdentifyAndReleaseTicket
Dicadangkan. Anggota ini didukung mulai dari Windows 10.
Parameters.IdentifyAndReleaseTicket.Identity
Dicadangkan.
Parameters.IdentifyAndReleaseTicket.SubFactor
Dicadangkan.
Parameters.IdentifyAndReleaseTicket.RejectDetail
Dicadangkan.
Parameters.IdentifyAndReleaseTicket.Ticket
Dicadangkan.
Parameters.EnrollSelect
Berisi hasil panggilan asinkron ke WinBioEnrollSelect. Anggota ini didukung mulai dari Windows 10.
Parameters.EnrollSelect.SelectorValue
Nilai yang mengidentifikasi bahwa individu yang dipilih untuk pendaftaran.
Parameters.MonitorPresence
Berisi hasil panggilan asinkron ke WinBioMonitorPresence. Anggota ini didukung mulai dari Windows 10.
Parameters.MonitorPresence.ChangeType
Nilai WINBIO_PRESENCE_CHANGE yang menunjukkan jenis peristiwa yang terjadi.
Parameters.MonitorPresence.PresenceCount
Ukuran array yang dirujuk anggota MonitorPresence.PresenceArray .
Parameters.MonitorPresence.PresenceArray
Alamat array struktur WINBIO_PRESENCE , satu untuk setiap individu yang dipantau.
Parameters.GetProtectionPolicy
Parameters.GetProtectionPolicy.Identity
Parameters.GetProtectionPolicy.Policy
Parameters.NotifyUnitStatusChange
Parameters.NotifyUnitStatusChange.ExtendedStatus
Keterangan
Operasi asinkron dimulai dengan membuka sesi biometrik atau sesi kerangka kerja. Panggil WinBioAsyncOpenSession untuk membuka sesi biometrik. Panggil WinBioAsyncOpenFramework untuk membuka sesi kerangka kerja.
Anda dapat menggunakan handel sesi biometrik asinkron untuk memanggil salah satu operasi berikut secara asinkron:
- WinBioCancel
- WinBioCaptureSample
- WinBioCloseSession
- WinBioControlUnit
- WinBioControlUnitPrivileged
- WinBioDeleteTemplate
- WinBioEnrollBegin
- WinBioEnrollCapture
- WinBioEnrollCommit
- WinBioEnrollDiscard
- WinBioEnumEnrollments
- WinBioGetProperty
- WinBioIdentify
- WinBioLocateSensor
- WinBioLockUnit
- WinBioLogonIdentifiedUser
- WinBioRegisterEventMonitor
- WinBioUnlockUnit
- WinBioUnregisterEventMonitor
- WinBioVerify
- WinBioWait
- WinBioSetProperty
- WinBioEnrollSelect
- WinBioMonitorPresence
Anda dapat menggunakan handel kerangka kerja asinkron untuk memanggil operasi berikut secara asinkron:
- WinBioAsyncEnumBiometricUnits
- WinBioAsyncEnumDatabases
- WinBioAsyncOpenFramework
- WinBioAsyncEnumServiceProviders
- WinBioAsyncMonitorFrameworkChanges
Struktur WINBIO_ASYNC_RESULT dialokasikan secara internal oleh Windows Biometric Framework. Oleh karena itu, ketika Anda menggunakannya, panggil WinBioFree untuk merilis memori yang dialokasikan dan menghindari kebocoran. Karena ini juga merilis semua struktur data berlapis, Anda tidak boleh menyimpan salinan pointer apa pun yang dikembalikan dalam struktur WINBIO_ASYNC_RESULT . Jika Anda ingin menyimpan data apa pun yang dikembalikan dalam struktur berlapis, buat salinan pribadi data tersebut sebelum memanggil WinBioFree.
Windows 8, Windows Server 2012, Windows 8.1 dan Windows Server 2012 R2: Windows Biometric Framework hanya mendukung pembaca sidik jari. Oleh karena itu, jika operasi gagal dan mengembalikan informasi tambahan dalam konstanta WINBIO_REJECT_DETAIL , itu akan menjadi salah satu nilai berikut:
- WINBIO_FP_TOO_HIGH
- WINBIO_FP_TOO_LOW
- WINBIO_FP_TOO_LEFT
- WINBIO_FP_TOO_RIGHT
- WINBIO_FP_TOO_FAST
- WINBIO_FP_TOO_SLOW
- WINBIO_FP_POOR_QUALITY
- WINBIO_FP_TOO_SKEWED
- WINBIO_FP_TOO_SHORT
- WINBIO_FP_MERGE_FAILURE
Selanjutnya, jika operasi menggunakan jenis data WINBIO_BIOMETRIC_SUBTYPE , operasi tersebut akan menjadi salah satu nilai berikut:
- WINBIO_ANSI_381_POS_UNKNOWN
- WINBIO_ANSI_381_POS_RH_THUMB
- WINBIO_ANSI_381_POS_RH_INDEX_FINGER
- WINBIO_ANSI_381_POS_RH_MIDDLE_FINGER
- WINBIO_ANSI_381_POS_RH_RING_FINGER
- WINBIO_ANSI_381_POS_RH_LITTLE_FINGER
- WINBIO_ANSI_381_POS_LH_THUMB
- WINBIO_ANSI_381_POS_LH_INDEX_FINGER
- WINBIO_ANSI_381_POS_LH_MIDDLE_FINGER
- WINBIO_ANSI_381_POS_LH_RING_FINGER
- WINBIO_ANSI_381_POS_LH_LITTLE_FINGER
- WINBIO_ANSI_381_POS_RH_FOUR_FINGERS
- WINBIO_ANSI_381_POS_LH_FOUR_FINGERS
- WINBIO_ANSI_381_POS_TWO_THUMBS
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 8 [khusus aplikasi desktop] |
Server minimum yang didukung | Windows Server 2012 [hanya aplikasi desktop] |
Header | winbio.h |