Funzione SetupDiGetDeviceInterfacePropertyW (setupapi.h)
La funzione SetupDiGetDeviceInterfaceProperty recupera una proprietà del dispositivo impostata per un'interfaccia del dispositivo.
Sintassi
WINSETUPAPI BOOL SetupDiGetDeviceInterfacePropertyW(
[in] HDEVINFO DeviceInfoSet,
[in] PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
[in] const DEVPROPKEY *PropertyKey,
[out] DEVPROPTYPE *PropertyType,
[out] PBYTE PropertyBuffer,
[in] DWORD PropertyBufferSize,
[out, optional] PDWORD RequiredSize,
[in] DWORD Flags
);
Parametri
[in] DeviceInfoSet
Handle a un set di informazioni sul dispositivo che contiene un'interfaccia del dispositivo per cui recuperare una proprietà dell'interfaccia del dispositivo.
[in] DeviceInterfaceData
Puntatore a una struttura SP_DEVICE_INTERFACE_DATA che rappresenta l'interfaccia del dispositivo per cui recuperare una proprietà dell'interfaccia del dispositivo.
[in] PropertyKey
Puntatore a una struttura DEVPROPKEY che rappresenta la chiave della proprietà dell'interfaccia dispositivo della proprietà dell'interfaccia del dispositivo da recuperare.
[out] PropertyType
Puntatore a una variabile tipizzata DEVPROPTYPE che riceve l'identificatore property-data-type della proprietà dell'interfaccia del dispositivo richiesta. L'identificatore di tipo property-data è un or bit per bit tra un identificatore di tipo di dati di base e, se il tipo di dati di base viene modificato, un modificatore di tipo property-data.
[out] PropertyBuffer
Puntatore a un buffer che riceve la proprietà dell'interfaccia del dispositivo richiesta. SetupDiGetDeviceInterfaceProperty recupera la proprietà richiesta solo se il buffer è abbastanza grande per contenere tutti i dati del valore della proprietà. Il puntatore può essere NULL. Se il puntatore è impostato su NULL e RequiredSize viene fornito, SetupDiGetDeviceInterfaceProperty restituisce le dimensioni della proprietà, in byte, in *RequiredSize.
[in] PropertyBufferSize
Dimensioni, in byte, del buffer PropertyBuffer . Se PropertyBuffer è impostato su NULL, PropertyBufferSize deve essere impostato su zero.
[out, optional] RequiredSize
Puntatore a una variabile tipizzata DWORD che riceve le dimensioni, in byte, della proprietà dell'interfaccia del dispositivo se la proprietà viene recuperata o la dimensione del buffer necessaria, se il buffer non è abbastanza grande. Questo puntatore può essere impostato su NULL.
[in] Flags
Questo parametro deve essere impostato su zero.
Valore restituito
SetupDiGetDeviceInterfaceProperty 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. Altri codici di errore possono essere impostati dalle funzioni del programma di installazione del dispositivo chiamate da questa API.
Codice restituito | Descrizione |
---|---|
|
Il valore di Flags non è zero. |
|
Il set di informazioni sul dispositivo specificato da DevInfoSet non è valido. |
|
Un parametro fornito non è valido. Una possibilità è che l'interfaccia del dispositivo specificata da DeviceInterfaceData non sia valida. |
|
La chiave di proprietà fornita da PropertyKey non è valida. |
|
Non è stato valido un valore dati interno non specificato. |
|
Un buffer utente non è valido. Una possibilità è che PropertyBuffer è NULL e PropertyBufferSize non è zero. |
|
L'interfaccia del dispositivo specificata da DeviceInterfaceData non esiste. |
|
Il buffer PropertyBuffer non è abbastanza grande per contenere il valore della proprietà o un buffer dati interno passato a una chiamata di sistema troppo piccolo. |
|
Memoria di sistema insufficiente per completare l'operazione. |
|
La proprietà del dispositivo richiesta non esiste. |
|
Il chiamante non dispone dei privilegi di amministratore. |
Commenti
SetupDiGetDeviceInterfaceProperty fa parte del modello di proprietà del dispositivo unificato.
SetupAPI supporta solo una versione Unicode di SetupDiGetDeviceInterfaceProperty.
Un chiamante di SetupDiGetDeviceInterfaceProperty deve essere membro del gruppo Administrators per impostare una proprietà dell'interfaccia del dispositivo.
Per ottenere le chiavi delle proprietà del dispositivo che rappresentano le proprietà del dispositivo impostate per un'interfaccia del dispositivo, chiamare SetupDiGetDeviceInterfacePropertyKeys.
Per impostare una proprietà dell'interfaccia del dispositivo, chiamare SetupDiSetDeviceInterfaceProperty.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile in Windows Vista e versioni successive di Windows. |
Piattaforma di destinazione | DesktopFor universal, chiamare CM_Get_Device_Interface_Property |
Intestazione | setupapi.h (includere Setupapi.h) |
Libreria | Setupapi.lib |