struktur SP_PROPCHANGE_PARAMS (setupapi.h)
Struktur SP_PROPCHANGE_PARAMS sesuai dengan permintaan penginstalan DIF_PROPERTYCHANGE .
Sintaks
typedef struct _SP_PROPCHANGE_PARAMS {
SP_CLASSINSTALL_HEADER ClassInstallHeader;
DWORD StateChange;
DWORD Scope;
DWORD HwProfile;
} SP_PROPCHANGE_PARAMS, *PSP_PROPCHANGE_PARAMS;
Anggota
ClassInstallHeader
Header permintaan penginstalan yang berisi ukuran header dan kode DIF untuk permintaan tersebut. Lihat SP_CLASSINSTALL_HEADER.
StateChange
Tindakan perubahan status. Dapat berupa salah satu dari nilai berikut:
DICS_ENABLE
Perangkat sedang diaktifkan.
Untuk perubahan status ini, Windows mengaktifkan perangkat jika bendera DICS_FLAG_GLOBAL ditentukan.
Jika bendera DICS_FLAG_CONFIGSPECIFIC ditentukan dan profil perangkat keras saat ini ditentukan maka Windows mengaktifkan perangkat. Jika DICS_FLAG_CONFIGSPECIFIC ditentukan dan bukan profil perangkat keras saat ini, Maka Windows menetapkan beberapa bendera dalam registri dan tidak mengubah status perangkat. Windows akan mengubah status perangkat ketika profil yang ditentukan menjadi profil saat ini.
DICS_DISABLE
Perangkat sedang dinonaktifkan.
Untuk perubahan status ini, Windows menonaktifkan perangkat jika bendera DICS_FLAG_GLOBAL ditentukan.
Jika bendera DICS_FLAG_CONFIGSPECIFIC ditentukan dan profil perangkat keras saat ini ditentukan maka Windows menonaktifkan perangkat. Jika DICS_FLAG_CONFIGSPECIFIC ditentukan dan bukan profil perangkat keras saat ini, Maka Windows menetapkan beberapa bendera dalam registri dan tidak mengubah status perangkat.
DICS_PROPCHANGE
Properti perangkat telah berubah.
Untuk perubahan status ini, Windows mengabaikan informasi Cakupan selama itu adalah nilai yang valid, dan menghentikan dan memulai ulang perangkat.
DICS_START
Perangkat sedang dimulai (jika permintaan adalah untuk profil perangkat keras yang saat ini aktif).
DICS_START harus DICS_FLAG_CONFIGSPECIFIC. Anda tidak dapat melakukan perubahan tersebut secara global.
Windows hanya memulai perangkat jika profil perangkat keras saat ini ditentukan. Jika tidak, Windows menetapkan bendera registri dan tidak mengubah status perangkat.
DICS_STOP
Perangkat sedang dihentikan. Tumpukan driver akan dibongkar dan bendera CSCONFIGFLAG_DO_NOT_START akan diatur untuk perangkat.
DICS_STOP harus DICS_FLAG_CONFIGSPECIFIC. Anda tidak dapat melakukan perubahan tersebut secara global.
Windows hanya menghentikan perangkat jika profil piranti keras saat ini ditentukan. Jika tidak, Windows menetapkan bendera registri dan tidak mengubah status perangkat.
Komponen tidak boleh menentukan DICS_STOP atau DICS_START. Sebagai gantinya, mereka harus menggunakan DICS_PROPCHANGE untuk menghentikan dan menghidupkan ulang perangkat untuk menyebabkan perubahan konfigurasi perangkat berlaku.
Scope
Bendera yang menentukan cakupan perubahan properti perangkat. Bisa jadi salah satu dari yang berikut:
DICS_FLAG_GLOBAL
Buat perubahan di semua profil perangkat keras.
DICS_FLAG_CONFIGSPECIFIC
Buat perubahan hanya di profil yang ditentukan.
Bendera berikut usang:
DICS_FLAG_CONFIGGENERAL
HwProfile
Menyediakan ID profil perangkat keras untuk perubahan khusus profil. Nol menentukan profil perangkat keras saat ini.
Persyaratan
Persyaratan | Nilai |
---|---|
Header | setupapi.h (termasuk Setupapi.h) |