Funzione SetupDiSetDevicePropertyW (setupapi.h)

La funzione SetupDiSetDeviceProperty imposta una proprietà dell'istanza del dispositivo.

Sintassi

WINSETUPAPI BOOL SetupDiSetDevicePropertyW(
  [in]           HDEVINFO         DeviceInfoSet,
  [in]           PSP_DEVINFO_DATA DeviceInfoData,
  [in]           const DEVPROPKEY *PropertyKey,
  [in]           DEVPROPTYPE      PropertyType,
  [in, optional] const PBYTE      PropertyBuffer,
  [in]           DWORD            PropertyBufferSize,
  [in]           DWORD            Flags
);

Parametri

[in] DeviceInfoSet

Handle a un set di informazioni sul dispositivo. Questo set di informazioni sul dispositivo contiene un elemento informativo del dispositivo che rappresenta l'istanza del dispositivo per cui impostare una proprietà dell'istanza del dispositivo.

[in] DeviceInfoData

Puntatore alla struttura SP_DEVINFO_DATA che identifica l'istanza del dispositivo per cui impostare una proprietà dell'istanza del dispositivo.

[in] PropertyKey

Puntatore a una struttura DEVPROPKEY che rappresenta la chiave della proprietà della proprietà della proprietà dell'istanza del dispositivo da impostare.

[in] PropertyType

Valore tipizzato DEVPROPTYPE che rappresenta l'identificatore property-data-type per la proprietà dell'istanza del dispositivo. Per altre informazioni, vedere la sezione Osservazioni più avanti in questo argomento.

[in, optional] PropertyBuffer

Puntatore a un buffer contenente il valore della proprietà dell'istanza del dispositivo. Se la proprietà viene eliminata o impostata su un valore NULL , questo puntatore deve essere NULL e PropertyBufferSize deve essere impostato su zero.

[in] PropertyBufferSize

Dimensioni, in byte, del buffer PropertyBuffer . Se PropertyBuffer è NULL, PropertyBufferSize deve essere impostato su zero.

[in] Flags

Questo parametro deve essere impostato su zero.

Valore restituito

La funzione 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
ERROR_INVALID_FLAGS
Il valore di Flags non è zero.
ERROR_INVALID_HANDLE
Il set di informazioni sul dispositivo specificato da DevInfoSet non è valido.
ERROR_INVALID_PARAMETER
Un parametro fornito non è valido. Una possibilità è che l'elemento informativo del dispositivo non sia valido.
ERROR_INVALID_REG_PROPERTY
La chiave di proprietà fornita da PropertyKey non è valida o la proprietà non è scrivibile.
ERROR_INVALID_DATA
L'identificatore di tipo property-data fornito da PropertyType o il valore della proprietà fornito da PropertyBuffer non è valido.
ERROR_INVALID_USER_BUFFER
Un buffer utente non è valido. Una possibilità è che PropertyBuffer è NULL e PropertyBufferSize non è zero.
ERROR_NO_SUCH_DEVINST
L'istanza del dispositivo specificata da DevInfoData non esiste.
ERROR_INSUFFICIENT_BUFFER
Un buffer dati interno passato a una chiamata di sistema è troppo piccolo.
ERROR_NOT_ENOUGH_MEMORY
Memoria di sistema insufficiente per completare l'operazione.
ERROR_NOT_FOUND
Non è stato trovato un elemento interno non specificato. Una possibilità è che la proprietà da eliminare non esiste.
ERROR_ACCESS_DENIED
Il chiamante non dispone dei privilegi di amministratore.

Commenti

SetupDiSetDeviceProperty fa parte del modello di proprietà del dispositivo unificato.

SetupAPI supporta solo una versione Unicode di SetupDiSetDeviceProperty.

Un chiamante di SetupDiSetDeviceProperty deve essere membro del gruppo Administrators per impostare una proprietà dell'istanza del dispositivo.

SetupDiSetDeviceProperty applica i requisiti per l'identificatore property-data-type e il valore della proprietà.

Per ottenere le chiavi delle proprietà del dispositivo per le proprietà del dispositivo di istanza impostate per un dispositivo, chiamare SetupDiGetDevicePropertyKeys.

Per recuperare una proprietà dell'istanza del dispositivo, chiamare SetupDiGetDeviceProperty.

Requisiti

   
Client minimo supportato Disponibile in Windows Vista e versioni successive di Windows.
Piattaforma di destinazione DesktopFor universal, chiamare CM_Set_DevNode_Property
Intestazione setupapi.h (includere Setupapi.h)
Libreria Setupapi.lib

Vedi anche

SetupDiGetDeviceProperty

SetupDiGetDevicePropertyKeys