Fungsi NmrRegisterProvider (netioddk.h)

Fungsi NmrRegisterProvider mendaftarkan modul penyedia dengan NMR.

Sintaks

NTSTATUS NmrRegisterProvider(
  [in]  PNPI_PROVIDER_CHARACTERISTICS ProviderCharacteristics,
  [in]  __drv_aliasesMem PVOID        ProviderContext,
  [out] PHANDLE                       NmrProviderHandle
);

Parameter

[in] ProviderCharacteristics

Penunjuk ke NPI_PROVIDER_CHARACTERISTICS struktur yang menjelaskan karakteristik modul penyedia. Modul penyedia harus memastikan bahwa struktur ini tetap valid dan tinggal dalam memori selama modul penyedia terdaftar di NMR.

[in] ProviderContext

Penunjuk ke konteks yang disediakan penelepon untuk pendaftaran. Modul penyedia menggunakan konteks ini untuk melacak status pendaftaran penyedia. Konten konteks pendaftaran modul penyedia buram ke NMR. NMR meneruskan penunjuk ini ke modul penyedia setiap kali memanggil fungsi panggilan balik ProviderAttachClient modul penyedia. Modul penyedia harus memastikan bahwa konteks ini tetap valid dan tinggal dalam memori selama modul penyedia terdaftar di NMR.

[out] NmrProviderHandle

Penunjuk ke variabel yang menerima handel yang digunakan oleh NMR untuk mewakili pendaftaran modul penyedia. Modul penyedia harus menyimpan handel ini dan meneruskannya sebagai parameter ke fungsi NmrDeregisterProvider saat membatalkan pendaftaran dari NMR.

Nilai kembali

Fungsi NmrRegisterProvider mengembalikan salah satu kode NTSTATUS berikut:

Menampilkan kode Deskripsi
STATUS_SUCCESS
NMR berhasil mendaftarkan modul penyedia.
STATUS_INSUFFICIENT_RESOURCES
NMR tidak memiliki sumber daya sistem yang memadai untuk mendaftarkan modul penyedia.
Kode status lainnya
Terjadi kesalahan.

Keterangan

Modul penyedia memanggil fungsi NmrRegisterProvider untuk mendaftar sebagai penyedia NPI sehingga dapat melampirkan ke modul klien yang mendaftar sebagai klien NPI yang sama.

Modul penyedia biasanya memanggil fungsi NmrRegisterProvider dari fungsi DriverEntry-nya setelah menyelesaikan semua tugas inisialisasi lainnya. Panggilan ke fungsi NmrRegisterProvider menunjukkan kepada NMR bahwa modul penyedia siap untuk melampirkan ke modul klien apa pun yang telah mendaftar atau akan mendaftar sebagai klien NPI yang sama yang modul penyedianya telah terdaftar sebagai 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

DriverEntry

NPI_PROVIDER_CHARACTERISTICS

NmrDeregisterProvider