Bagikan melalui


Fungsi WinBioAsyncOpenFramework (winbio.h)

Membuka handel ke kerangka kerja biometrik. Dimulai dengan Windows 10, build 1607, fungsi ini tersedia untuk digunakan dengan gambar seluler. Anda dapat menggunakan handel ini untuk menghitung unit biometrik, database, dan penyedia layanan secara asinkron dan untuk menerima pemberitahuan asinkron ketika unit biometrik dilampirkan ke komputer atau dihapus.

Syntax

HRESULT WinBioAsyncOpenFramework(
  [in]           WINBIO_ASYNC_NOTIFICATION_METHOD  NotificationMethod,
  [in, optional] HWND                              TargetWindow,
  [in, optional] UINT                              MessageCode,
  [in, optional] PWINBIO_ASYNC_COMPLETION_CALLBACK CallbackRoutine,
  [in, optional] PVOID                             UserData,
  [in]           BOOL                              AsynchronousOpen,
  [out]          WINBIO_FRAMEWORK_HANDLE           *FrameworkHandle
);

Parameter-parameternya

[in] NotificationMethod

Menentukan bagaimana pemberitahuan penyelesaian untuk operasi asinkron dalam sesi kerangka kerja ini akan dikirimkan ke aplikasi klien. Ini harus menjadi salah satu nilai berikut.

Nilai Meaning
WINBIO_ASYNC_NOTIFY_CALLBACK
Kerangka kerja memanggil fungsi panggilan balik yang ditentukan oleh aplikasi.
WINBIO_ASYNC_NOTIFY_MESSAGE
Kerangka kerja memposting pesan jendela ke antrean pesan aplikasi.

[in, optional] TargetWindow

Menangani jendela yang akan menerima pemberitahuan penyelesaian. Nilai ini diabaikan kecuali parameter NotificationMethod diatur ke WINBIO_ASYNC_NOTIFY_MESSAGE.

[in, optional] MessageCode

Kode pesan jendela yang harus dikirim kerangka kerja untuk menandakan pemberitahuan penyelesaian. Nilai ini diabaikan kecuali parameter NotificationMethod diatur ke WINBIO_ASYNC_NOTIFY_MESSAGE. Nilai harus berada dalam rentang WM_APP (0x8000) hingga 0xBFFF.

Windows Biometric Framework mengatur nilai LPARAM pesan ke alamat struktur WINBIO_ASYNC_RESULT yang berisi hasil operasi. Anda harus memanggil WinBioFree untuk merilis struktur setelah Anda selesai menggunakannya.

[in, optional] CallbackRoutine

Alamat rutinitas panggilan balik yang akan dipanggil untuk pemberitahuan penyelesaian. Nilai ini diabaikan kecuali parameter NotificationMethod diatur ke WINBIO_ASYNC_NOTIFY_CALLBACK.

[in, optional] UserData

Alamat buffer yang disediakan oleh pemanggil. Buffer tidak dimodifikasi oleh kerangka kerja atau unit biometrik. Ini dikembalikan dalam struktur WINBIO_ASYNC_RESULT . 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.

[in] AsynchronousOpen

Menentukan apakah akan memblokir hingga sesi kerangka kerja dibuka. Menentukan FALSE menyebabkan proses diblokir. Menentukan TRUE menyebabkan sesi dibuka secara asinkron.

Jika Anda menentukan FALSE untuk membuka sesi kerangka kerja secara sinkron, keberhasilan atau kegagalan dikembalikan ke pemanggil secara langsung oleh fungsi ini dalam nilai pengembalian HRESULT . Jika sesi berhasil dibuka, peristiwa penyelesaian asinkron pertama yang diterima aplikasi Anda akan untuk operasi asinkron yang diminta setelah kerangka kerja terbuka.

Jika Anda menentukan TRUE untuk membuka sesi kerangka kerja secara asinkron, pemberitahuan penyelesaian asinkron pertama yang diterima adalah untuk membuka kerangka kerja. Jika parameter NotificationMethod diatur ke WINBIO_ASYNC_NOTIFY_CALLBACK, hasil operasi dikirimkan ke struktur WINBIO_ASYNC_RESULT dalam fungsi panggilan balik yang ditentukan oleh parameter CallbackRoutine . Jika parameter NotificationMethod diatur ke WINBIO_ASYNC_NOTIFY_MESSAGE, hasil operasi dikirimkan ke struktur WINBIO_ASYNC_RESULT yang ditujukkan oleh bidang LPARAM dari pesan jendela.

[out] FrameworkHandle

Jika fungsi tidak berhasil, parameter ini akan menjadi NULL.

Jika sesi dibuka secara sinkron dan berhasil, parameter ini akan berisi penunjuk ke handel sesi.

Jika Anda menentukan bahwa sesi dibuka secara asinkron, metode ini segera kembali, handel sesi akan NULL, dan Anda harus memeriksa struktur WINBIO_ASYNC_RESULT untuk menentukan apakah sesi berhasil dibuka.

Mengembalikan nilai

Jika fungsi berhasil, fungsi akan mengembalikan S_OK. Jika fungsi gagal, fungsi mengembalikan nilai HRESULT yang menunjukkan kesalahan. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut. Untuk daftar kode kesalahan umum, lihat Nilai HRESULT Umum.

Mengembalikan kode Description
E_OUTOFMEMORY
Tidak tersedia cukup memori untuk membuat sesi kerangka kerja.
E_INVALIDARG
Jika Anda mengatur metode pemberitahuan ke WINBIO_ASYNC_NOTIFY_MESSAGE, parameter TargetWindow tidak boleh NULL atau HWND_BROADCAST dan parameter MessageCode tidak boleh nol (0).
E_POINTER
Parameter FrameworkHandle dan parameter AsynchronousOpen harus diatur.

Jika Anda mengatur metode pemberitahuan ke WINBIO_ASYNC_NOTIFY_CALLBACK, Anda juga harus menentukan alamat fungsi panggilan balik di parameter CallbackRoutine .

Komentar

Handel kerangka kerja yang dikembalikan oleh fungsi WinBioAsyncOpenFramework dapat digunakan untuk menghasilkan pemberitahuan penyelesaian asinkron untuk fungsi berikut:

Parameter AsinkronOpen hanya menentukan apakah operasi terbuka akan diblokir. Parameter ini tidak berpengaruh pada perilaku penyelesaian panggilan berikutnya yang menggunakan handel sesi.

Jika Anda mengatur parameter AsynchronousOpen ke TRUE, fungsi ini akan mengembalikan S_OK segera setelah melakukan validasi awal argumen. Setiap kesalahan yang terdeteksi di luar titik itu akan dilaporkan ke pemanggil menggunakan metode yang ditentukan oleh parameter NotificationMethod . Artinya, nilai pengembalian yang berhasil hanya menunjukkan bahwa parameter WinBioAsyncOpenFramework baik-baik saja dan bukan bahwa operasi terbuka berhasil. Untuk menentukan apakah operasi terbuka berhasil, Anda harus memeriksa struktur WINBIO_ASYNC_RESULT .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 8 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2012 [hanya aplikasi desktop]
Platform Target Windows
Header winbio.h (termasuk Winbio.h)
Library Winbio.lib
DLL Winbio.dll

Lihat juga

WinBioAsyncOpenSession