Fungsi NmrClientAttachProvider (netioddk.h)
Fungsi NmrClientAttachProvider melampirkan modul klien ke modul penyedia.
Sintaks
NTSTATUS NmrClientAttachProvider(
[in] HANDLE NmrBindingHandle,
[in] __drv_aliasesMem PVOID ClientBindingContext,
[in] const VOID *ClientDispatch,
[out] PVOID *ProviderBindingContext,
[out] const VOID **ProviderDispatch
);
Parameter
[in] NmrBindingHandle
Handel yang digunakan oleh NMR untuk mewakili pengikatan antara modul klien dan modul penyedia. NMR meneruskan handel ini ke modul klien saat memanggil fungsi panggilan balik ClientAttachProvider modul klien.
[in] ClientBindingContext
Penunjuk ke konteks yang disediakan penelepon untuk pengikatan antara modul klien dan modul penyedia. Modul klien menggunakan konteks ini untuk melacak status pengikatan. Konten konteks pengikatan modul klien buram untuk modul penyedia. Modul penyedia meneruskan pointer ini ke modul klien setiap kali memanggil salah satu fungsi panggilan balik NPI modul klien yang memerlukan konteks pengikatan modul klien. Modul klien harus memastikan bahwa konteks ini tetap valid dan tinggal dalam memori selama modul penyedia dilampirkan ke modul klien.
[in] ClientDispatch
Penunjuk ke struktur konstanta yang berisi tabel pengiriman fungsi panggilan balik NPI untuk modul klien. Modul klien harus memastikan bahwa struktur ini tetap valid dan tinggal dalam memori selama modul penyedia dilampirkan ke modul klien. Isi strukturnya khusus untuk NPI. Jika NPI tidak menentukan struktur tabel pengiriman klien, modul klien harus mengatur parameter ini ke NULL.
[out] ProviderBindingContext
Penunjuk ke variabel yang menerima penunjuk ke konteks modul penyedia untuk pengikatan antara modul klien dan modul penyedia. Modul penyedia menggunakan konteks ini untuk melacak status pengikatan. Konten konteks pengikatan modul penyedia buram ke modul klien. Modul klien meneruskan pointer ini ke modul penyedia setiap kali memanggil salah satu fungsi NPI modul penyedia yang memerlukan konteks pengikatan modul penyedia.
[out] ProviderDispatch
Penunjuk ke variabel yang menerima penunjuk ke struktur yang berisi tabel pengiriman
Fungsi NPI untuk modul penyedia. Isi strukturnya khusus untuk NPI.
Nilai kembali
Fungsi NmrClientAttachProvider mengembalikan salah satu kode NTSTATUS berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Modul klien berhasil dilampirkan ke modul penyedia. |
|
Modul penyedia tidak dilampirkan ke modul klien. |
|
Terjadi kesalahan. |
Keterangan
Modul klien memanggil fungsi NmrClientAttachProvider dari fungsi panggilan balik ClientAttachProvider untuk melampirkan dirinya ke modul penyedia.
Saat modul klien memanggil fungsi NmrClientAttachProvider , NMR memanggil fungsi panggilan balik ProviderAttachClient modul penyedia untuk menyelesaikan proses lampiran. Fungsi NmrClientAttachProvider mengembalikan kode status yang dikembalikan oleh fungsi panggilan balik ProviderAttachClient modul penyedia.
Jika fungsi NmrClientAttachProvider tidak mengembalikan STATUS_SUCCESS, modul klien harus melakukan pembersihan data yang diperlukan yang terkandung dalam struktur konteks pengikatannya. Modul klien kemudian harus membebaskan memori untuk struktur konteks pengikatannya jika secara dinamis mengalokasikan memori untuk struktur.
Jika fungsi NmrClientAttachProvider mengembalikan STATUS_SUCCESS dan modul klien secara dinamis mengalokasikan memori untuk konteks pengikatannya, modul klien harus membebaskan memori yang dialokasikan saat NMR memanggil modul klienFungsi panggilan balik ClientCleanupBindingContext setelah modul klien dan modul penyedia dilepas satu sama lain.
Jika fungsi NmrClientAttachProvider mengembalikan STATUS_SUCCESS, modul klien harus menyimpan pointer yang dikembalikan dalam parameter ProviderBindingContext dan ProviderDispatch sehingga dapat memanggil fungsi NPI modul penyedia.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia di Windows Vista dan versi yang lebih baru dari sistem operasi Windows. |
Target Platform | Desktop |
Header | netioddk.h (termasuk Wsk.h) |
Pustaka | Netio.lib |
IRQL | PASSIVE_LEVEL |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk