PROTOCOL_CM_ADD_PARTY fungsi panggilan balik (ndis.h)
Fungsi ProtocolCmAddParty adalah fungsi yang diperlukan. ProtocolCmAddParty menyiapkan parameter khusus media untuk menambahkan pihak ke panggilan multipoint yang ada, menyimpan data status untuk pihak baru, dan menyebabkan pihak ditambahkan ke panggilan.
Sintaks
PROTOCOL_CM_ADD_PARTY ProtocolCmAddParty;
NDIS_STATUS ProtocolCmAddParty(
[in] NDIS_HANDLE CallMgrVcContext,
[in, out] PCO_CALL_PARAMETERS CallParameters,
[in] NDIS_HANDLE NdisPartyHandle,
[out] PNDIS_HANDLE CallMgrPartyContext
)
{...}
Parameter
[in] CallMgrVcContext
Menentukan handel ke area konteks yang dialokasikan manajer panggilan tempat manajer panggilan mempertahankan status per VC-nya. Manajer panggilan menyediakan handel ini ke NDIS dari fungsi ProtocolCoCreateVc-nya .
[in, out] CallParameters
Penunjuk ke struktur CO_CALL_PARAMETERS yang berisi parameter, yang ditentukan oleh klien berorientasi koneksi, untuk pihak yang ditambahkan ke panggilan yang ada.
[in] NdisPartyHandle
Menentukan handel, yang disediakan oleh NDIS, yang secara unik mengidentifikasi pihak multipoint yang akan ditambahkan ke koneksi virtual yang ada. Handel ini buram ke manajer panggilan dan dicadangkan untuk penggunaan pustaka NDIS.
[out] CallMgrPartyContext
Menentukan, saat kembali, handel ke area konteks yang disediakan manajer panggilan di mana manajer panggilan mempertahankan status tentang pihak ini untuk panggilan multipoint.
Nilai kembali
ProtocolCmAddParty mengembalikan status operasinya sebagai salah satu hal berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Menunjukkan bahwa manajer panggilan berhasil mengalokasikan sumber daya yang diperlukan untuk mempertahankan status tentang pihak dan berhasil menambahkan pihak ke panggilan. |
|
Menunjukkan bahwa manajer panggilan akan menyelesaikan permintaan untuk menambahkan pihak secara asinkron. Ketika manajer panggilan telah menyelesaikan semua operasi untuk menambahkan pihak, ia harus memanggil NdisCmAddPartyComplete untuk memberi sinyal NDIS bahwa operasi ini telah selesai. |
|
Menunjukkan bahwa manajer panggilan tidak dapat mengalokasikan dan/atau menginisialisasi sumber dayanya untuk menambahkan pihak ke koneksi. |
|
Menunjukkan bahwa manajer panggilan tidak dapat menambahkan pihak ke panggilan multi-titik karena pemanggil meminta fitur yang tidak valid atau tidak tersedia dalam parameter panggilan di CallParameters atau jika tidak, jenis media yang didukung oleh manajer panggilan ini tidak mendukung panggilan multipoint. |
Keterangan
ProtocolCmAddParty melakukan alokasi sumber daya dan struktur dinamis yang diperlukan manajer panggilan untuk mempertahankan informasi status tentang pihak tersebut, yang ditentukan oleh NdisPartyHandle, untuk ditambahkan ke panggilan multipoint. Sumber daya tersebut dapat mencakup, tetapi tidak terbatas pada, buffer memori, struktur data, peristiwa, dan sumber daya serupa lainnya. Manajer panggilan juga harus menginisialisasi struktur per pihak yang relevan dalam fungsi ini.
Di area status per pihak yang dialokasikan manajer panggilan, manajer panggilan harus menyimpan handel yang ditentukan oleh NdisPartyHandle untuk referensi dalam panggilan mendatang. Setelah manajer panggilan mengalokasikan dan menyelesaikan inisialisasi area status per pihaknya, alamat buffer status harus ditetapkan sebagai handel CallMgrPartyContext sebelum mengembalikan kontrol ke NDIS. Untuk melakukan ini, dereferensi handel dan simpan penunjuk ke buffer status sebagai nilai handel. Contohnya:
*CallMgrPartyContext = SomeBuffer;
Manajer panggilan melakukan komunikasi yang diperlukan dengan perangkat keras jaringan mereka atau aktor khusus media lainnya, seperlunya, untuk menambahkan pihak yang ditentukan oleh parameter panggilan di CallParameters ke panggilan multipoint yang ada.
Contoh
Untuk menentukan fungsi ProtocolCmAddParty , Anda harus terlebih dahulu memberikan deklarasi fungsi yang mengidentifikasi jenis fungsi yang Anda tentukan. Windows menyediakan sekumpulan tipe fungsi untuk pengandar. Mendeklarasikan fungsi menggunakan jenis fungsi membantu Analisis Kode untuk Driver, Pemverifikasi Driver Statis (SDV), dan alat verifikasi lainnya menemukan kesalahan, dan itu adalah persyaratan untuk menulis driver untuk sistem operasi Windows.Misalnya, untuk menentukan fungsi ProtocolCmAddParty yang diberi nama "MyCmAddParty", gunakan jenis PROTOCOL_CM_ADD_PARTY seperti yang ditunjukkan dalam contoh kode ini:
MINIPORT_ADD_DEVICE MyCmAddParty;
Kemudian, terapkan fungsi Anda sebagai berikut:
_Use_decl_annotations_
NDIS_STATUS
MyCmAddParty(
NDIS_HANDLE CallMgrVcContext,
PCO_CALL_PARAMETERS CallParameters,
NDIS_HANDLE NdisPartyHandle,
PNDIS_HANDLE CallMgrPartyContext
)
{...}
Jenis fungsi PROTOCOL_CM_ADD_PARTY ditentukan dalam file header Ndis.h. Untuk mengidentifikasi kesalahan secara lebih akurat saat Anda menjalankan alat analisis kode, pastikan untuk menambahkan anotasi Use_decl_annotations ke definisi fungsi Anda. Anotasi Use_decl_annotations memastikan bahwa anotasi yang diterapkan ke jenis fungsi PROTOCOL_CM_ADD_PARTY dalam file header digunakan. Untuk informasi selengkapnya tentang persyaratan untuk deklarasi fungsi, lihat Mendeklarasikan Fungsi dengan Menggunakan Jenis Peran Fungsi untuk Driver NDIS.
Untuk informasi tentang Use_decl_annotations, lihat Perilaku Fungsi Anotasi.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Didukung untuk driver NDIS 6.0 dan NDIS 5.1 (lihat ProtocolCmAddParty (NDIS 5.1)) di Windows Vista. Didukung untuk driver NDIS 5.1 (lihat ProtocolCmAddParty (NDIS 5.1)) di Windows XP. |
Target Platform | Windows |
Header | ndis.h (termasuk Ndis.h) |
IRQL | <= DISPATCH_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