Fungsi SetupDiSetClassPropertyW (setupapi.h)

Fungsi SetupDiSetClassProperty mengatur properti kelas untuk kelas penyiapan perangkat atau kelas antarmuka perangkat.

Sintaks

WINSETUPAPI BOOL SetupDiSetClassPropertyW(
  [in]           const GUID       *ClassGuid,
  [in]           const DEVPROPKEY *PropertyKey,
  [in]           DEVPROPTYPE      PropertyType,
  [in, optional] const PBYTE      PropertyBuffer,
  [in]           DWORD            PropertyBufferSize,
  [in]           DWORD            Flags
);

Parameter

[in] ClassGuid

Pointer ke GUID yang mengidentifikasi kelas penyiapan perangkat atau kelas antarmuka perangkat untuk mengatur properti perangkat. Untuk informasi tentang cara menentukan jenis kelas, lihat parameter Bendera .

[in] PropertyKey

Penunjuk ke struktur DEVPROPKEY yang mewakili kunci properti perangkat dari properti kelas perangkat yang akan diatur.

[in] PropertyType

Nilai berjenis DEVPROPTYPE yang mewakili pengidentifikasi tipe data properti untuk properti kelas perangkat. Untuk informasi selengkapnya tentang pengidentifikasi tipe data properti, lihat bagian Keterangan nanti dalam topik ini.

[in, optional] PropertyBuffer

Penunjuk ke buffer yang berisi nilai properti kelas perangkat. Jika properti atau data sedang dihapus, penunjuk ini harus diatur ke NULL, dan PropertyBufferSize harus diatur ke nol. Untuk informasi selengkapnya tentang data properti, lihat bagian Keterangan nanti dalam topik ini.

[in] PropertyBufferSize

Ukuran, dalam byte, dari buffer PropertyBuffer . Jika PropertyBuffer diatur ke NULL, PropertyBufferSize harus diatur ke nol.

[in] Flags

Salah satu nilai berikut, yang menentukan apakah kelas tersebut adalah kelas penyiapan perangkat atau kelas antarmuka perangkat:

DICLASSPROP_INSTALLER

ClassGuid menentukan kelas penyiapan perangkat. Bendera ini tidak dapat digunakan dengan DICLASSPROP_INTERFACE.

DICLASSPROP_INTERFACE

ClassGuid menentukan kelas antarmuka perangkat. Bendera ini tidak dapat digunakan dengan DICLASSPROP_INSTALLER.

Nilai kembali

SetupDiSetClassProperty mengembalikan TRUE jika berhasil. Jika tidak, kesalahan mengembalikan FALSE, dan kesalahan yang dicatat dapat diambil dengan memanggil GetLastError.

Tabel berikut ini menyertakan beberapa kode kesalahan yang lebih umum yang mungkin dicatat fungsi ini.

Menampilkan kode Deskripsi
ERROR_INVALID_FLAGS
Nilai Bendera tidak valid.
ERROR_INVALID_CLASS
Kelas penyiapan perangkat yang ditentukan oleh ClassGuid tidak valid. Kesalahan ini hanya dapat terjadi jika bendera DICLASSPROP_INSTALLER ditentukan.
ERROR_INVALID_REFERENCE_STRING
String referensi antarmuka perangkat tidak valid. Kesalahan ini hanya dapat terjadi jika bendera DICLASSPROP_INTERFACE ditentukan.
ERROR_INVALID_REG_PROPERTY
Kunci properti yang disediakan oleh PropertyKey tidak valid.
ERROR_INVALID_DATA
Nilai data internal yang tidak ditentukan tidak valid. Kesalahan ini dapat dicatat jika nilai ClassGuid bukan GUID yang valid atau nilai properti tidak konsisten dengan jenis properti yang ditentukan oleh PropertyType.
ERROR_INVALID_USER_BUFFER
Buffer pengguna tidak valid. Salah satu kemungkinannya adalah propertyBuffer adalah NULL, dan PropertyBufferSize bukan nol.
ERROR_NO_SUCH_INTERFACE_CLASS
Kelas antarmuka perangkat yang ditentukan oleh ClassGuid tidak ada. Kesalahan ini hanya dapat terjadi jika bendera DICLASSPROP_INTERFACE ditentukan.
ERROR_INSUFFICIENT_BUFFER
Buffer data internal yang diteruskan ke panggilan sistem terlalu kecil.
ERROR_NOT_ENOUGH_MEMORY
Tidak tersedia cukup memori sistem untuk menyelesaikan operasi.
ERROR_NOT_FOUND
Item yang tidak ditentukan tidak ditemukan. Salah satu kemungkinan adalah bahwa properti yang akan dihapus tidak ada.
ERROR_ACCESS_DENIED
Pemanggil tidak memiliki hak istimewa Administrator.

Keterangan

SetupDiSetClassProperty adalah bagian dari model properti perangkat terpadu.

SetupAPI hanya mendukung setupDiSetClassProperty versi Unicode.

Penelepon SetupDiSetClassProperty harus menjadi anggota grup Administrator untuk mengatur properti antarmuka perangkat.

SetupDiSetClassProperty memberlakukan persyaratan pada pengidentifikasi jenis data properti dan nilai properti.

Untuk mendapatkan kunci properti perangkat yang mewakili properti perangkat yang diatur untuk kelas perangkat di komputer lokal, panggil SetupDiGetClassPropertyKeys.

Untuk mengambil properti kelas perangkat di komputer lokal, panggil SetupDiGetClassProperty, dan untuk mengambil properti kelas perangkat di komputer jarak jauh, panggil SetupDiGetClassPropertyEx.

Untuk mengatur properti kelas perangkat di komputer jarak jauh, panggil SetupDiSetClassPropertyEx.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Windows Vista dan versi Windows yang lebih baru.
Target Platform DesktopUntuk universal, panggil CM_Set_Class_Property
Header setupapi.h (termasuk Setupapi.h)
Pustaka Setupapi.lib

Lihat juga

SetupDiGetClassProperty

SetupDiGetClassPropertyEx

SetupDiGetClassPropertyKeys

SetupDiSetClassPropertyEx