Funzione SetupDiSetClassPropertyW (setupapi.h)
La funzione SetupDiSetClassProperty imposta una proprietà di classe per una classe di installazione del dispositivo o una classe dell'interfaccia del dispositivo.
Sintassi
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
);
Parametri
[in] ClassGuid
Puntatore a un GUID che identifica la classe di configurazione del dispositivo o la classe dell'interfaccia del dispositivo per cui impostare una proprietà del dispositivo. Per informazioni su come specificare il tipo di classe, vedere il parametro Flags .
[in] PropertyKey
Puntatore a una struttura DEVPROPKEY che rappresenta la chiave della proprietà della classe del dispositivo da impostare.
[in] PropertyType
Valore tipizzato DEVPROPTYPE che rappresenta l'identificatore property-data-type per la proprietà della classe del dispositivo. Per altre informazioni sull'identificatore property-data-type, vedere la sezione Osservazioni più avanti in questo argomento.
[in, optional] PropertyBuffer
Puntatore a un buffer contenente il valore della proprietà della classe device. Se la proprietà o i dati vengono eliminati, questo puntatore deve essere impostato su NULL e PropertyBufferSize deve essere impostato su zero. Per altre informazioni sui dati delle proprietà, vedere la sezione Osservazioni più avanti in questo argomento.
[in] PropertyBufferSize
Dimensione, in byte, del buffer PropertyBuffer . Se PropertyBuffer è impostato su NULL, PropertyBufferSize deve essere impostato su zero.
[in] Flags
Uno dei valori seguenti, che specifica se la classe è una classe di installazione del dispositivo o una classe dell'interfaccia del dispositivo:
DICLASSPROP_INSTALLER
ClassGuid specifica una classe di installazione del dispositivo. Questo flag non può essere usato con DICLASSPROP_INTERFACE.
DICLASSPROP_INTERFACE
ClassGuid specifica una classe di interfaccia del dispositivo. Questo flag non può essere usato con DICLASSPROP_INSTALLER.
Valore restituito
SetupDiSetClassProperty restituisce TRUE se ha esito positivo. In caso contrario, restituisce FALSE e l'errore registrato può essere recuperato chiamando GetLastError.
La tabella seguente include alcuni dei codici di errore più comuni che questa funzione potrebbe registrare.
Codice restituito | Descrizione |
---|---|
|
Il valore di Flags non è valido. |
|
La classe di installazione del dispositivo specificata da ClassGuid non è valida. Questo errore può verificarsi solo se viene specificato il flag DICLASSPROP_INSTALLER. |
|
La stringa di riferimento dell'interfaccia del dispositivo non è valida. Questo errore può verificarsi solo se viene specificato il flag di DICLASSPROP_INTERFACE. |
|
La chiave della proprietà fornita da PropertyKey non è valida. |
|
Valore dati interno non specificato non valido. Questo errore può essere registrato se il valore ClassGuid non è un GUID valido o il valore della proprietà non è coerente con il tipo di proprietà specificato da PropertyType. |
|
Un buffer utente non è valido. Una possibilità è che PropertyBuffer è NULL e PropertyBufferSize non è zero. |
|
La classe dell'interfaccia del dispositivo specificata da ClassGuid non esiste. Questo errore può verificarsi solo se viene specificato il flag di DICLASSPROP_INTERFACE. |
|
Un buffer di dati interno passato a una chiamata di sistema era troppo piccolo. |
|
Memoria di sistema insufficiente per completare l'operazione. |
|
Non è stato trovato un elemento non specificato. Una possibilità è che la proprietà da eliminare non esista. |
|
Il chiamante non dispone dei privilegi di amministratore. |
Commenti
SetupDiSetClassProperty fa parte del modello di proprietà del dispositivo unificato.
SetupAPI supporta solo una versione Unicode di SetupDiSetClassProperty.
Un chiamante di SetupDiSetClassProperty deve essere membro del gruppo Administrators per impostare una proprietà dell'interfaccia del dispositivo.
SetupDiSetClassProperty applica i requisiti per l'identificatore property-data-type e il valore della proprietà.
Per ottenere le chiavi delle proprietà del dispositivo che rappresentano le proprietà del dispositivo impostate per una classe di dispositivo in un computer locale, chiamare SetupDiGetClassPropertyKeys.
Per recuperare una proprietà della classe di dispositivo in un computer locale, chiamare SetupDiGetClassProperty e per recuperare una proprietà della classe di dispositivo in un computer remoto, chiamare SetupDiGetClassPropertyEx.
Per impostare una proprietà della classe di dispositivo in un computer remoto, chiamare SetupDiSetClassPropertyEx.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile in Windows Vista e versioni successive di Windows. |
Piattaforma di destinazione | DesktopFor universal, chiamare CM_Set_Class_Property |
Intestazione | setupapi.h (include Setupapi.h) |
Libreria | Setupapi.lib |