FN_VMB_CHANNEL_SEND_SYNCHRONOUS_REQUEST fungsi panggilan balik (vmbuskernelmodeclientlibapi.h)

[Beberapa informasi berkaitan dengan produk pra-rilis yang mungkin dimodifikasi secara substansial sebelum dirilis secara komersial. Microsoft tidak memberikan jaminan, tersurat atau tersirat, sehubungan dengan informasi yang diberikan di sini.]

Fungsi VmbChannelSendSynchronousRequest mengirimkan paket ke titik akhir yang berlawanan dan menunggu respons.

Sintaks

FN_VMB_CHANNEL_SEND_SYNCHRONOUS_REQUEST FnVmbChannelSendSynchronousRequest;

NTSTATUS FnVmbChannelSendSynchronousRequest(
  VMBCHANNEL Channel,
  PVOID Buffer,
  UINT32 BufferSize,
  PMDL ExternalDataMdl,
  UINT32 Flags,
  PVOID CompletionBuffer,
  PUINT32 CompletionBufferSize,
  PLARGE_INTEGER Timeout
)
{...}

Parameter

Channel

Handel untuk saluran.

Buffer

Data yang akan dikirim.

BufferSize

Ukuran, dalam byte, dari data yang akan dikirim.

ExternalDataMdl

Daftar Deskriptor Memori (MDL) yang menjelaskan buffer tambahan untuk dikirim.

Flags

Bendera standar.

CompletionBuffer

Buffer untuk menyimpan hasil paket penyelesaian.

CompletionBufferSize

Ukuran, dalam byte, dari nilai CompletionBuffer . Nilai ini harus dibulatkan ke atas ke 8 byte terdekat, atau fungsi gagal. Jika berhasil, mengembalikan jumlah byte yang ditulis ke dalam CompletionBuffer.

Timeout

Batas waktu dengan gaya perutean KeWaitForSingleObject . Setelah waktu ini berlalu, paket dibatalkan. Untuk batas waktu nol (0), jika paket tidak cemara di buffer cincin, paket tidak diantrekan.

Nilai kembali

Menampilkan kode Deskripsi
STATUS_SUCCESS
Fungsi berhasil diselesaikan.
STATUS_BUFFER_OVERFLOW
Paket tidak pas di buffer dan tidak diantrekan.
STATUS_CANCELLED
Paket dibatalkan.
STATUS_DEVICE_REMOVED
Saluran sedang dimatikan.

Keterangan

Klien dapat menjalankan fungsi ini dengan kombinasi parameter apa pun.

Akar hanya dapat memanggil ini jika *Timeout == 0 dan bendera VMBUS_CHANNEL_FORMAT_FLAG_WAIT_FOR_COMPLETION tidak diatur.

Penting

Fungsi ini dipanggil melalui antarmuka VMBus Kernel Mode Client Library (KMCL), yang disediakan oleh driver bus Vmbkmcl.sys. Ini adalah fungsi klien yang diakses dari struktur KMCL_CLIENT_INTERFACE_V1 .

Untuk informasi selengkapnya, lihat bagian Keterangan dari KMCL_CLIENT_INTERFACE_V1.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 10, versi 1803
Header vmbuskernelmodeclientlibapi.h

Lihat juga

KeWaitForsingleObject