PROTOCOL_CL_MODIFY_CALL_QOS_COMPLETE fungsi panggilan balik (ndis.h)

Fungsi ProtocolClModifyCallQoSComplete digunakan oleh klien NDIS berorientasi koneksi yang dapat memodifikasi kualitas layanan pada koneksi secara dinamis. Klien tersebut harus memiliki fungsi ProtocolClModifyCallQoSComplete untuk menyelesaikan operasi asinkron yang mereka mulai dengan NdisClModifyCallQoS. Jika tidak, fungsi ProtocolClModifyCallQoSComplete yang terdaftar seperti itu hanya dapat mengembalikan kontrol.

Catatan Anda harus mendeklarasikan fungsi dengan menggunakan jenis PROTOCOL_CL_MODIFY_CALL_QOS_COMPLETE . Untuk informasi selengkapnya, lihat bagian Contoh berikut ini.
 

Sintaks

PROTOCOL_CL_MODIFY_CALL_QOS_COMPLETE ProtocolClModifyCallQosComplete;

void ProtocolClModifyCallQosComplete(
  [in] NDIS_STATUS Status,
  [in] NDIS_HANDLE ProtocolVcContext,
  [in] PCO_CALL_PARAMETERS CallParameters
)
{...}

Parameter

[in] Status

Menentukan status akhir permintaan asinkron klien untuk mengubah parameter panggilan untuk VC ini sebagai salah satu hal berikut:

NDIS_STATUS_SUCCESS

QoS dimodifikasi seperti yang diminta oleh klien.

NDIS_STATUS_RESOURCES

NDIS atau manajer panggilan tidak dapat memodifikasi QoS karena salah satunya tidak dapat mengalokasikan sumber daya yang cukup secara dinamis.

NDIS_STATUS_INVALID_DATA

Parameter panggilan yang disediakan klien ke NdisClModifyCallQoS tidak valid.

NDIS_STATUS_FAILURE

Manajer panggilan tidak dapat mengubah QoS karena kegagalan pada jaringan atau di komponen jaringan berorientasi koneksi lainnya.

NDIS_STATUS_XXX

Manajer panggilan gagal mengubah QoS, dan NDIS menyebarkan status kegagalan yang ditentukan CM ke klien.

[in] ProtocolVcContext

Menentukan handel ke area konteks per VC klien, yang awalnya disediakan klien ke NDIS ketika memanggil NdisCoCreateVc untuk menyiapkan VC untuk permintaan panggilan keluarnya atau dari fungsi ProtocolCoCreateVc jika klien menerima panggilan masuk pada VC ini.

[in] CallParameters

Penunjuk ke struktur CO_CALL_PARAMETERS yang di-buffer yang berisi QoS yang ditentukan klien mengubah permintaannya, atau, mungkin, QoS asli untuk VC ini dibuat ketika koneksi diaktifkan, yang telah dipulihkan oleh manajer panggilan.

Mengembalikan nilai

Tidak ada

Keterangan

Panggilan ke ProtocolClModifyCallQoSComplete menunjukkan bahwa manajer panggilan telah menyelesaikan pemrosesan permintaan yang dimulai klien untuk mengubah kualitas layanan pada VC aktif. Misalnya, jika media jaringan yang mendasar mendukung perubahan QoS dinamis, klien dapat meminta modifikasi kapan saja pada VC aktif.

Jika panggilan klien ke NdisClModifyCallQoS berhasil, ProtocolClModifyCallQoSComplete dapat menerima perubahan QoS hanya dengan mengembalikan kontrol. Jika tidak, ProtocolClModifyCallQoSComplete dapat terlibat dalam negosiasi lebih lanjut dengan manajer panggilan selama pengembang klien menempatkan beberapa batas yang wajar pada jumlah kemungkinan negosiasi ulang. Atau, ProtocolClModifyCallQoSComplete hanya dapat merobohkan panggilan dengan NdisClCloseCall setiap kali manajer panggilan menolak permintaan untuk mengubah QoS dan QoS yang dibuat sebelumnya menjadi tidak dapat diterima oleh klien.

Contoh

Untuk menentukan fungsi ProtocolClModifyCallQoSComplete , 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 ProtocolClModifyCallQoSComplete yang diberi nama "MyClModifyCallQoSComplete", gunakan jenis PROTOCOL_CL_MODIFY_CALL_QOS_COMPLETE seperti yang ditunjukkan dalam contoh kode ini:

PROTOCOL_CL_MODIFY_CALL_QOS_COMPLETE MyClModifyCallQoSComplete;

Kemudian, terapkan fungsi Anda sebagai berikut:

_Use_decl_annotations_
VOID
 MyClModifyCallQoSComplete(
    NDIS_STATUS  Status,
    NDIS_HANDLE  ProtocolVcContext,
    PCO_CALL_PARAMETERS  CallParameters
    )
  {...}

Jenis fungsi PROTOCOL_CL_MODIFY_CALL_QOS_COMPLETE 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_CL_MODIFY_CALL_QOS_COMPLETE 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 ProtocolClModifyCallQoSComplete (NDIS 5.1)) di Windows Vista. Didukung untuk driver NDIS 5.1 (lihat ProtocolClModifyCallQoSComplete (NDIS 5.1)) di Windows XP.
Target Platform Windows
Header ndis.h (termasuk Ndis.h)
IRQL <= DISPATCH_LEVEL

Lihat juga

CO_CALL_PARAMETERS

NdisClCloseCall

NdisClModifyCallQoS

NdisCmModifyCallQoSComplete

NdisMCmModifyCallQoSComplete

ProtocolCmModifyCallQoS

ProtocolCoCreateVc