EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD fungsi panggilan balik (wdfwmi.h)

[Berlaku untuk KMDF saja]

Fungsi panggilan balik EvtWmiInstanceExecuteMethod driver menjalankan metode tertentu yang disediakan driver untuk instans penyedia data WMI.

Sintaks

EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD EvtWdfWmiInstanceExecuteMethod;

NTSTATUS EvtWdfWmiInstanceExecuteMethod(
  [in]      WDFWMIINSTANCE WmiInstance,
  [in]      ULONG MethodId,
  [in]      ULONG InBufferSize,
  [in]      ULONG OutBufferSize,
  [in, out] PVOID Buffer,
  [out]     PULONG BufferUsed
)
{...}

Parameter

[in] WmiInstance

Handel ke objek instans WMI.

[in] MethodId

Nilai yang mengidentifikasi metode dalam instans penyedia. Nilai ini sesuai dengan nilai WmiMethodId yang ditentukan dalam file MOF penyedia.

[in] InBufferSize

Jumlah byte data input.

[in] OutBufferSize

Jumlah byte data output yang dapat ditahan oleh buffer yang dapat ditahan oleh Buffer .

[in, out] Buffer

Penunjuk ke buffer yang digunakan untuk input, output, atau keduanya, seperti yang ditentukan oleh metode yang ditentukan. Jika data input dan output disediakan, driver akan menimpa data input dengan data output.

[out] BufferUsed

Penunjuk ke lokasi yang menerima jumlah byte yang ditulis driver ke dalam buffer output. Jika ukuran buffer output yang ditentukan parameter OutBufferSize terlalu kecil, driver mengatur lokasi ini ke ukuran buffer yang diperlukan.

Nilai kembali

Fungsi panggilan balik EvtWmiInstanceExecuteMethod harus mengembalikan STATUS_SUCCESS jika operasi berhasil. Jika tidak, fungsi ini harus mengembalikan nilai status yang NT_SUCCESS(statusnya) sama dengan FALSE. Driver harus mengembalikan STATUS_BUFFER_TOO_SMALL jika nilai parameter OutBufferSize menunjukkan bahwa buffer output terlalu kecil untuk menerima data.

Keterangan

Untuk mendaftarkan fungsi panggilan balik EvtWmiInstanceExecuteMethod , driver Anda harus menempatkan alamat fungsi dalam struktur WDF_WMI_INSTANCE_CONFIG sebelum memanggil WdfWmiInstanceCreate.

Setelah driver menjalankan metode instans yang ditentukan parameter MethodId , driver harus menggunakan parameter BufferUsed untuk menyimpan jumlah byte yang ditulis ke buffer.

Kerangka kerja tidak menyinkronkan panggilan ke fungsi panggilan balik peristiwa WMI driver satu sama lain atau dengan fungsi panggilan balik peristiwa lainnya dari driver. Jika data fungsi panggilan balik EvtWmiInstanceExecuteMethod bersifat dinamis dan dibagikan dengan fungsi panggilan balik lainnya, driver Anda dapat menggunakan kunci tunggu kerangka kerja atau kunci putar untuk menyinkronkan akses ke data.

Untuk informasi selengkapnya tentang fungsi panggilan balik EvtWmiInstanceExecuteMethod , lihat Mendukung WMI di driver Framework-Based.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1,0
Header wdfwmi.h (termasuk Wdf.h)
IRQL PASSIVE_LEVEL

Lihat juga

EvtWmiInstanceQueryInstance

EvtWmiInstanceSetInstance

EvtWmiInstanceSetItem

EvtWmiProviderFunctionControl

WDF_WMI_INSTANCE_CONFIG

WdfWmiInstanceBuat