Bagikan melalui


GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION fungsi panggilan balik (gpioclx.h)

Fungsi panggilan balik peristiwa CLIENT_QuerySetControllerInformation mengkueri driver pengontrol I/O tujuan umum (GPIO) untuk sekumpulan atribut pengontrol GPIO yang ditentukan.

Sintaks

GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION GpioClientQuerySetControllerInformation;

NTSTATUS GpioClientQuerySetControllerInformation(
  [in]            PVOID Context,
  [in]            PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT InputBuffer,
  [out, optional] PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT OutputBuffer
)
{...}

Parameter

[in] Context

Penunjuk ke konteks perangkat driver pengontrol GPIO.

[in] InputBuffer

Penunjuk ke struktur CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT yang menjelaskan jenis atribut yang diminta pemanggil.

[out, optional] OutputBuffer

Penunjuk opsional ke struktur CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT tempat fungsi menulis nilai atribut yang diminta.

Nilai kembali

Fungsi CLIENT_QuerySetControllerInformation mengembalikan STATUS_SUCCESS jika panggilan berhasil. Nilai yang mungkin dikembalikan termasuk kode kesalahan berikut.

Menampilkan kode Deskripsi
STATUS_NOT_SUPPORTED
Fungsi ini tidak mendukung jenis atribut yang diminta.

Keterangan

Anggota RequestType dari struktur CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT yang diacu oleh InputBuffer menentukan jenis atribut yang diminta. Untuk daftar jenis atribut yang dapat diminta, lihat CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE.

Menerapkan fungsi CLIENT_QuerySetControllerInformation bersifat opsional. Jika driver pengontrol GPIO menerapkan fungsi CLIENT_QuerySetControllerInformation , fungsi ini mungkin mendukung beberapa jenis permintaan atribut, tetapi tidak mendukung yang lain. Jika pemanggil meminta jenis atribut yang tidak didukung fungsi, fungsi mengembalikan STATUS_NOT_SUPPORTED.

Contoh

Untuk menentukan fungsi panggilan balik CLIENT_QuerySetControllerInformation , Anda harus terlebih dahulu memberikan deklarasi fungsi yang mengidentifikasi jenis fungsi panggilan balik yang Anda tentukan. Windows menyediakan sekumpulan tipe fungsi panggilan balik untuk driver. Mendeklarasikan fungsi menggunakan jenis fungsi panggilan balik 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 panggilan balik CLIENT_QuerySetControllerInformation yang diberi nama MyEvtGpioQuerySetControllerInformation, gunakan jenis fungsi GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION, seperti yang ditunjukkan dalam contoh kode ini:

GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION MyEvtGpioQuerySetControllerInformation;

Kemudian, terapkan fungsi panggilan balik Anda sebagai berikut:

_Use_decl_annotations_
NTSTATUS
  MyEvtGpioQuerySetControllerInformation(
    PVOID Context,
    PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT InputBuffer,
    PCLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT OutputBuffer
    )
{ ... }

Jenis fungsi GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION didefinisikan dalam file header Gpioclx.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 GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION dalam file header digunakan. Untuk informasi selengkapnya tentang persyaratan untuk deklarasi fungsi, lihat Mendeklarasikan Fungsi dengan Menggunakan Jenis Peran Fungsi untuk Driver KMDF. Untuk informasi selengkapnya tentang Use_decl_annotations, lihat Perilaku Fungsi Anotasi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung dimulai dengan Windows 8.
Target Platform Desktop
Header gpioclx.h
IRQL Dipanggil di PASSIVE_LEVEL.

Lihat juga

CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT

CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT

CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE