Funzione SetupDiCreateDeviceInterfaceA (setupapi.h)
La funzione SetupDiCreateDeviceInterface
Sintassi
WINSETUPAPI BOOL SetupDiCreateDeviceInterfaceA(
[in] HDEVINFO DeviceInfoSet,
[in] PSP_DEVINFO_DATA DeviceInfoData,
[in] const GUID *InterfaceClassGuid,
[in, optional] PCSTR ReferenceString,
[in] DWORD CreationFlags,
[out, optional] PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData
);
Parametri
[in] DeviceInfoSet
Handle per un set di informazioni sul dispositivo . Questo set contiene un elemento di informazioni sul dispositivo che rappresenta il dispositivo per il quale registrare un'interfaccia. Questo handle viene in genere restituito da SetupDiGetClassDevs.
[in] DeviceInfoData
Puntatore a una struttura di SP_DEVINFO_DATA che specifica l'elemento informazioni sul dispositivo in DeviceInfoSet.
[in] InterfaceClassGuid
Puntatore a un GUID di classe che specifica la classe di interfaccia per la nuova interfaccia.
[in, optional] ReferenceString
Puntatore a una stringa con terminazione NULL che fornisce una stringa di riferimento. Questo puntatore è facoltativo e può essere NULL. Le stringhe di riferimento vengono usate solo da alcuni driver di bus che usano interfacce di dispositivo come segnaposto per i dispositivi software creati su richiesta.
[in] CreationFlags
Riservato. Deve essere zero.
[out, optional] DeviceInterfaceData
Puntatore a una struttura di SP_DEVICE_INTERFACE_DATA inizializzata dal chiamante per ricevere informazioni sulla nuova interfaccia del dispositivo. Questo puntatore è facoltativo e può essere NULL. Se viene fornita la struttura, il chiamante deve impostare il membro cbSize
Valore restituito
SetupDiCreateDeviceInterface restituisce TRUE se la funzione è stata completata senza errori. Se la funzione è stata completata con un errore, restituisce FALSE e il codice di errore per l'errore può essere recuperato chiamando GetLastError.
Osservazioni
Il chiamante di questa funzione deve essere membro del gruppo Administrators.
SetupDiCreateDeviceInterface registra un'interfaccia per un dispositivo. Se un dispositivo ha più di un'interfaccia, chiamare questa funzione una volta per ogni interfaccia registrata.
Se questa funzione registra correttamente un'interfaccia per il dispositivo che corrisponde all'elemento di informazioni sul dispositivo specificato, aggiunge anche l'interfaccia all'elenco di interfacce associato all'elemento informazioni sul dispositivo nel set di informazioni del dispositivo specificato.
Prima che un'interfaccia registrata possa essere usata dalle applicazioni e da altri componenti di sistema, l'interfaccia deve essere abilitata dal driver per il dispositivo.
Questa funzione crea una chiave del Registro di sistema per la nuova interfaccia del dispositivo. I chiamanti di questa funzione possono accedere all'archiviazione non volatile in questa chiave usando SetupDiOpenDeviceInterfaceRegKey.
Se SetupDiCreateDeviceInterface crea correttamente una nuova interfaccia del dispositivo, ma il buffer fornito dal chiamante nel parametro DeviceInterfaceData non è valido, questa funzione restituirà false e una successiva chiamata a GetLastError restituirà ERROR_INVALID_USER_BUFFER. Tuttavia, la funzione crea e registra la nuova interfaccia del dispositivo.
Nota
L'intestazione setupapi.h definisce SetupDiCreateDeviceInterface come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile in Microsoft Windows 2000 e versioni successive di Windows. |
piattaforma di destinazione | Desktop |
intestazione |
setupapi.h (include Setupapi.h) |
libreria |
Setupapi.lib |