Bagikan melalui


Fungsi panggilan balik PFNKSDEVICEQUERYPOWER (ks.h)

AVStream memanggil rutinitas AVStrMiniDeviceQueryPower minidriver saat menerima permintaan IRP_MN_QUERY_POWER .

Sintaks

PFNKSDEVICEQUERYPOWER Pfnksdevicequerypower;

NTSTATUS Pfnksdevicequerypower(
  [in] PKSDEVICE Device,
  [in] PIRP Irp,
  [in] DEVICE_POWER_STATE DeviceTo,
  [in] DEVICE_POWER_STATE DeviceFrom,
  [in] SYSTEM_POWER_STATE SystemTo,
  [in] SYSTEM_POWER_STATE SystemFrom,
  [in] POWER_ACTION Action
)
{...}

Parameter

[in] Device

Arahkan ke struktur KSDEVICE yang mengirimkan IRP_MN_QUERY_POWER.

[in] Irp

Arahkan ke IRP_MN_QUERY_POWER yang dikeluarkan oleh Perangkat.

[in] DeviceTo

Status daya yang diminta oleh penerbit Irp.

[in] DeviceFrom

Status daya perangkat saat ini.

[in] SystemTo

Status sistem ke transisi ke, ditentukan ketika transisi status daya sistem sedang dikueri. Nilai ini tidak ditentukan jika panggilan disebabkan oleh kueri perubahan status daya perangkat.

[in] SystemFrom

Status sistem saat ini, ditentukan ketika transisi status daya sistem sedang dikueri. Nilai ini tidak ditentukan jika panggilan disebabkan oleh kueri perubahan status daya perangkat.

[in] Action

Menentukan informasi tambahan tentang transisi yang diminta. Nilai yang mungkin adalah enumerator dari jenis POWER_ACTION.

Mengembalikan nilai

Harus mengembalikan STATUS_SUCCESS atau kode kesalahan yang dikembalikan dari upaya untuk melakukan operasi. Dengan mengembalikan STATUS_SUCCESS, driver menjamin bahwa driver tidak akan memulai operasi apa pun yang akan mengubah kemampuannya untuk mengatur status daya yang diminta. Driver harus mengantrekan IRP apa pun yang akan memerlukan operasi seperti itu sampai menyelesaikan IRP_MN_SET_POWER yang mengembalikan perangkat ke status daya yang dapat diterima.

Keterangan

Manajer daya atau pemilik kebijakan daya perangkat mengirimkan permintaan IRP_MN_QUERY_POWER untuk menentukan apakah dapat mengubah sistem atau status daya perangkat (misalnya, untuk tidur).

Jika driver gagal IRP_MN_QUERY_POWER meminta status daya sistem, manajer daya biasanya merespons dengan mengeluarkan IRP_MN_SET_POWER. Biasanya, IRP ini akan menegaskan kembali status sistem saat ini. Namun, ada kemungkinan bahwa driver mungkin menerima IRP_MN_SET_POWER ke status dikueri atau ke beberapa status perantara lainnya. Pengemudi harus siap untuk menangani situasi ini.

Minidriver menentukan alamat rutin ini di anggota QueryPower dari struktur KSDEVICE_DISPATCH-nya .

Rutinitas ini bersifat opsional.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Microsoft Windows XP dan sistem operasi yang lebih baru serta DirectX 8.0 dan versi DirectX yang lebih baru.
Target Platform Desktop
Header ks.h (termasuk Ks.h)

Lihat juga

IRP_MN_QUERY_POWER

KSDEVICE_DISPATCH