fungsi WinUsb_SetPowerPolicy (winusb.h)
Fungsi WinUsb_SetPowerPolicy menetapkan kebijakan daya untuk perangkat.
Sintaks
BOOL WinUsb_SetPowerPolicy(
[in] WINUSB_INTERFACE_HANDLE InterfaceHandle,
[in] ULONG PolicyType,
[in] ULONG ValueLength,
[in] PVOID Value
);
Parameter
[in] InterfaceHandle
Handel buram ke antarmuka pertama (default) pada perangkat, yang dikembalikan oleh WinUsb_Initialize.
[in] PolicyType
Nilai yang menentukan kebijakan daya yang akan ditetapkan. Tabel berikut ini menjelaskan konstanta simbolis yang didefinisikan dalam winusbio.h.
Parameter kebijakan | Deskripsi |
---|---|
AUTO_SUSPEND (0x81) |
Menentukan jenis kebijakan yang ditangguhkan secara otomatis; parameter kebijakan daya harus ditentukan oleh pemanggil dalam parameter Nilai .
Untuk penangguhan otomatis, parameter Nilai harus menunjuk ke variabel UCHAR. Jika NilaiTRUE (bukan nol), tumpukan USB menangguhkan perangkat jika perangkat tidak aktif. Perangkat diam jika tidak ada transfer yang tertunda, atau jika satu-satunya transfer yang tertunda adalah transfer IN untuk mengganggu atau titik akhir massal. Nilai default ditentukan oleh nilai yang ditetapkan dalam pengaturan registri DefaultIdleState . Secara default, nilai ini TRUE. |
SUSPEND_DELAY (0x83) |
Menentukan jenis kebijakan suspend-delay; parameter kebijakan daya harus ditentukan oleh pemanggil dalam parameter Nilai .
Untuk suspend-delay, Nilai harus menunjuk ke variabel ULONG. Nilai menentukan jumlah waktu minimum, dalam milidetik, bahwa driver WinUSB harus menunggu pasca transfer sebelum dapat menangguhkan perangkat. Nilai default ditentukan oleh nilai yang ditetapkan dalam pengaturan registri DefaultIdleTimeout . Secara default, nilai ini adalah lima detik. |
[in] ValueLength
Ukuran, dalam byte, dari buffer di Nilai.
[in] Value
Nilai baru untuk parameter kebijakan daya. Jenis data dan nilai untuk Nilai tergantung pada jenis kebijakan daya yang diteruskan dalam PolicyType. Untuk informasi selengkapnya, lihat PolicyType.
Nilai kembali
WinUsb_SetPowerPolicy mengembalikan TRUE jika operasi berhasil. Jika tidak, fungsi ini mengembalikan FALSE, dan pemanggil dapat mengambil kesalahan yang dicatat dengan memanggil GetLastError.
GetLastError dapat mengembalikan kode kesalahan berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Pemanggil melewati NULL dalam parameter InterfaceHandle . |
|
Pemanggil melewati ukuran yang tidak valid untuk buffer parameter kebijakan dalam parameter ValueLength . |
|
Menunjukkan bahwa memori tidak cukup untuk melakukan operasi. |
Keterangan
Daftar berikut ini meringkas efek perubahan pada status manajemen daya:
- Semua handel pipa, handel antarmuka, kunci, dan pengaturan alternatif dipertahankan di seluruh peristiwa manajemen daya.
- Setiap transfer yang sedang berlangsung ditangguhkan saat perangkat ditransfer ke status daya rendah, dan dilanjutkan saat perangkat dipulihkan ke status kerja.
- Perangkat dan sistem harus dalam status berfungsi sebelum klien dapat memulihkan konfigurasi khusus perangkat. Klien dapat menentukan apakah perangkat dan sistem dalam keadaan berfungsi dari pesan WM_POWERBROADCAST.
- Klien dapat menunjukkan bahwa antarmuka menganggur dengan memanggil WinUsb_SetPowerPolicy.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Header | winusb.h (termasuk Winusb.h) |
Pustaka | Winusb.lib |
DLL | Winusb.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk