Fungsi NdisClDropParty (ndis.h)

NdisClDropParty menghilangkan pesta dari VC multipoint klien.

Sintaks

NDIS_STATUS NdisClDropParty(
  [in]           NDIS_HANDLE NdisPartyHandle,
  [in, optional] PVOID       Buffer,
  [in, optional] UINT        Size
);

Parameter

[in] NdisPartyHandle

Menentukan handel yang mengidentifikasi pihak yang akan dihilangkan pada koneksi multipoint. Klien memperoleh handel ini dari panggilan sebelumnya ke NdisClAddParty atau NdisClMakeCall.

[in, optional] Buffer

Pointer ke buffer yang dialokasikan penelepon yang berisi data apa pun yang akan dikirimkan untuk menutup koneksi multipoint pihak pada simpul jarak jauh. Tergantung pada media yang mendasar, pointer ini bisa NULL.

[in, optional] Size

Menentukan ukuran dalam byte pada Buffer, nol jika BufferNULL.

Nilai kembali

Ketika NdisClDropParty mengembalikan apa pun selain NDIS_STATUS_PENDING, klien harus melakukan panggilan internal ke Fungsi ProtocolClDropPartyComplete . Jika tidak, NDIS memanggil fungsi ProtocolClDropPartyComplete klien ketika operasi ini selesai.

Keterangan

Klien biasanya memanggil NdisClDropParty dalam salah satu keadaan berikut:

  • Dari Fungsi ProtocolClIncomingDropParty untuk menghapus pihak yang diberikan dari koneksi multipoint.

    Ini terjadi ketika pihak pada simpul jarak jauh menutup koneksinya dengan NdisClCloseCall. Ketika NDIS memanggil fungsi ProtocolClDropPartyComplete klien lokal, NDIS dapat merilis atau menggunakan kembali area konteks di ProtocolPartyContext tempat klien mempertahankan status tentang pihak ini.

  • Sebelum klien memanggil NdisClCloseCall dengan pihak terakhir pada koneksi multipoint yang awalnya disiapkan klien dengan NdisClMakeCall.

    Untuk menutup panggilan multi-titiknya sendiri yang dimulai klien, klien harus memanggil NdisClDropParty satu atau beberapa kali untuk menghilangkan setiap pihak lain yang tersisa di VC multipoint.

Panggilan klien ke NdisClDropParty menyebabkan NDIS memanggil fungsi ProtocolCmDropParty dari manajer panggilan yang berbagi NdisVcHandle yang sama ke VC multipoint. Manajer panggilan bertanggung jawab untuk memberi tahu serekan simpul jarak jauhnya bahwa koneksi pihak telah atau harus ditutup, tergantung pada klien mana yang memulai operasi drop-party.

Sebagai pedoman umum, klien harus memanggil NdisClDropParty sebanyak yang disebut NdisClAddParty dengan NdisVcHandle tertentu yang diperoleh dari NdisClMakeCall sebelum menutup koneksi multipoint dengan NdisClCloseCall. Karena pihak jarak jauh dapat memulai penutupan koneksi mereka, sehingga menyebabkan panggilan ke klien lokal Fungsi ProtocolClIncomingDropParty , klien lokal harus melacak jumlah pihak aktif pada VC multipoint-nya untuk mengetahui berapa banyak panggilan yang harus dilakukan ke NdisClDropParty sebelum dapat memanggil NdisClCloseCall.

Namun, klien tidak diharuskan untuk melewati NdisClCloseCallNdisPartyHandle yang sama yang dikembalikan oleh NdisClMakeCall ketika klien awalnya menyiapkan koneksi multipoint-nya. Klien dapat merilis pihak pada VC multipoint-nya dalam urutan apa pun, selama merilis setiap NdisPartyHandle yang dikembalikan oleh NdisClAddParty atau NdisClMakeCall dalam panggilannya ke NdisClDropParty, diikuti dengan panggilan akhir dengan handel pihak terakhir ke NdisClCloseCall untuk VC multipoint yang sama. Setelah klien menutup panggilan multi-titiknya, klien dapat merilis VC yang awalnya dibuat dengan NdisCoDeleteVc.

Pemanggil NdisClDropParty harus menganggap input NdisPartyHandle tidak valid segera setelah melakukan panggilan ini. Jika menyimpan handel ini di area konteks pihak yang dialokasikannya, klien Fungsi ProtocolClDropPartyComplete harus mengatur ulang variabel handel ke NULL jika menginisialisasi ulang area konteks per pihaknya untuk digunakan kembali ketika pihak telah dihilangkan.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung untuk driver NDIS 6.0 dan NDIS 5.1 (lihat NdisClDropParty (NDIS 5.1)) di Windows Vista. Didukung untuk driver NDIS 5.1 (lihat NdisClDropParty (NDIS 5.1)) di Windows XP.
Target Platform Desktop
Header ndis.h (termasuk Ndis.h)
Pustaka Ndis.lib
IRQL <= DISPATCH_LEVEL
Aturan kepatuhan DDI Irql_Protocol_Driver_Function(ndis)

Lihat juga

NdisClAddParty

NdisClCloseCall

NdisClMakeCall

NdisCoDeleteVc

ProtocolClDropPartyComplete

ProtocolClIncomingDropParty

ProtocolCmDropParty