Bagikan melalui


SW_DEVICE_CREATE_CALLBACK fungsi panggilan balik (swdevice.h)

Menyediakan perangkat dengan dukungan di registri dan memungkinkan penelepon untuk kemudian melakukan panggilan ke fungsi API Perangkat Perangkat dengan handel hSwDevice .

Sintaks

SW_DEVICE_CREATE_CALLBACK SwDeviceCreateCallback;

VOID SwDeviceCreateCallback(
  [in]           HSWDEVICE hSwDevice,
  [in]           HRESULT CreateResult,
  [in, optional] PVOID pContext,
  [in, optional] PCWSTR pszDeviceInstanceId
)
{...}

Parameter

[in] hSwDevice

Handel untuk perangkat lunak.

[in] CreateResult

HRESULT yang menunjukkan apakah enumerasi perangkat lunak berhasil.

[in, optional] pContext

Konteks yang secara opsional disediakan oleh aplikasi klien ke SwDeviceCreate.

[in, optional] pszDeviceInstanceId

ID instans perangkat yang ditetapkan PnP ke perangkat.

Mengembalikan nilai

Tidak ada

Keterangan

Sistem operasi memanggil fungsi panggilan balik SW_DEVICE_CREATE_CALLBACK setelah PnP menghitung perangkat. Setelah fungsi panggilan balik dipanggil, perangkat memiliki dukungan dalam registri dan panggilan ke fungsi SOFTWARE Device API dapat dilakukan dengan menggunakan handel hSwDevice . Anda juga dapat menggunakan API lain yang berfungsi dengan perangkat untuk perangkat yang dibuat.

Enumerasi PnP perangkat adalah langkah pertama yang dijalani perangkat. Setelah enumerasi PnP perangkat, perangkat hanya memiliki dukungan registri, dan Anda dapat mengatur properti terhadap perangkat. Hanya karena PnP menghitung perangkat, perangkat belum dimulai, dan belum ada driver untuk perangkat yang telah mendaftarkan atau mengaktifkan antarmuka. Dalam banyak kasus, sebaiknya aplikasi menunggu kedatangan antarmuka perangkat jika ingin menggunakan perangkat.

Catatan Fungsi panggilan balik menyediakan ID instans perangkat untuk perangkat yang dibuat. Sebaiknya penelepon API Perangkat Lunak tidak mencoba menebak atau membuat ID instans perangkat itu sendiri; selalu gunakan nilai yang disediakan oleh fungsi panggilan balik.
 
Fungsi panggilan balik akan dijalankan pada utas kumpulan alur arbitrer. Aplikasi klien dapat melakukan pekerjaan sebanyak yang diperlukan dalam fungsi panggilan balik.

Dalam Windows 8, Anda tidak dapat memanggil SwDeviceClose di dalam fungsi panggilan balik. Melakukannya akan menyebabkan kebuntuan. Berhati-hatilah dalam merilis objek yang dihitung ref yang akan memanggil SwDeviceClose saat destruktornya berjalan. Dalam Windows 8.1, pembatasan ini dicabut, dan Anda dapat memanggil SwDeviceClose di dalam fungsi panggilan balik.

Selalu periksa HRESULT yang diteruskan ke CreateResult untuk memastikan PnP dapat menghitung perangkat.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 8
Server minimum yang didukung Windows Server 2012
Target Platform Desktop
Header swdevice.h

Lihat juga

SwDeviceBuat