Bagikan melalui


Fungsi SetupDiChangeState (setupapi.h)

Fungsi SetupDiChangeState adalah handler default untuk permintaan penginstalan DIF_PROPERTYCHANGE .

Sintaks

WINSETUPAPI BOOL SetupDiChangeState(
  [in]      HDEVINFO         DeviceInfoSet,
  [in, out] PSP_DEVINFO_DATA DeviceInfoData
);

Parameter

[in] DeviceInfoSet

Handel ke set informasi perangkat untuk komputer lokal. Set ini berisi elemen informasi perangkat yang mewakili perangkat yang statusnya akan diubah.

[in, out] DeviceInfoData

Penunjuk ke struktur SP_DEVINFO_DATA yang menentukan elemen informasi perangkat di DeviceInfoSet. Ini adalah parameter IN-OUT karena DeviceInfoData.DevInst mungkin diperbarui dengan nilai handel baru saat dikembalikan.

Nilai kembali

Fungsi mengembalikan TRUE jika berhasil. Jika tidak, kesalahan mengembalikan FALSE dan kesalahan yang dicatat dapat diambil dengan melakukan panggilan ke GetLastError.

Keterangan

SetupDiChangeState mengubah status perangkat yang diinstal.

Pemanggil SetupDiChangeState harus menjadi anggota grup Administrator.

Catatan Hanya penginstal kelas yang harus memanggil SetupDiChangeState dan hanya dalam situasi di mana penginstal kelas harus melakukan operasi perubahan properti setelah SetupDiChangeState menyelesaikan operasi perubahan properti default. Dalam situasi seperti itu, penginstal kelas harus langsung memanggil SetupDiChangeState ketika alat penginstal memproses permintaan DIF_PROPERTYCHANGE. Untuk informasi selengkapnya tentang memanggil handler default, lihat Memanggil Penangan Kode DIF Default.
 
Penelepon SetupDiChangeState harus menentukan bendera DICS_XXX di SP_PROPCHANGE_PARAMS untuk elemen perangkat yang menunjukkan jenis perubahan status yang akan dilakukan pada perangkat. Pemanggil fungsi ini harus mengatur bidang yang sesuai di SP_PROPCHANGE_PARAMS dan memanggil SetupDiSetClassInstallParams sebelum memanggil fungsi ini.

Jika Anda menentukan bendera DICS_FLAG_CONFIGSPECIFIC di SP_PROPCHANGE_PARAMS maka Anda harus mengisi bidang HwProfile . Nilai nol untuk HwProfile menunjukkan profil saat ini.

Untuk mengaktifkan/menonaktifkan perangkat di profil perangkat keras saat ini, atur bendera DICS_FLAG_CONFIGSPECIFIC di SP_PROPCHANGE_PARAMS. Untuk mengaktifkan/menonaktifkan perangkat secara global, seperti di profil perangkat keras yang di-dock dan tidak di-dock, atur bendera DICS_FLAG_GLOBAL.

Fungsi ini melakukan hal berikut:

Penelepon fungsi ini tidak boleh menentukan DICS_STOP atau DICS_START dalam SP_PROPCHANGE_PARAMS. Gunakan DICS_PROPCHANGE untuk menghentikan dan memulai ulang perangkat untuk menyebabkan perubahan konfigurasi perangkat berlaku.

Jika DI_DONOTCALLCONFIGMG diatur untuk perangkat, Anda tidak boleh memanggil SetupDiChangeState untuk perangkat tetapi seharusnya mengatur bendera DI_NEEDREBOOT.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Microsoft Windows 2000 dan versi Windows yang lebih baru.
Target Platform Desktop
Header setupapi.h (termasuk Setupapi.h)
Pustaka Setupapi.lib
DLL Setupapi.dll
Set API ext-ms-win-setupapi-classinstallers-l1-1-2 (diperkenalkan dalam Windows 10, versi 10.0.14393)

Lihat juga

DIF_PROPERTYCHANGE

SP_PROPCHANGE_PARAMS

SetupDiCallClassInstaller