Condividi tramite


Funzione SetupDiCreateDeviceInterfaceA (setupapi.h)

La funzione SetupDiCreateDeviceInterface registra un'interfaccia del dispositivo in un sistema locale o in un sistema remoto.

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 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 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 SP_DEVICE_INTERFACE_DATA inizializzata dal chiamante per ricevere informazioni sulla nuova interfaccia del dispositivo. Questo puntatore è facoltativo e può essere NULL. Se la struttura viene fornita, il chiamante deve impostare il membro cbSize di questa struttura su sizeof(SP_DEVICE_INTERFACE_DATA) prima di chiamare questa funzione. Per altre informazioni, vedere la sezione Osservazioni seguente.

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.

Commenti

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 informazioni sul dispositivo specificato, aggiunge anche l'interfaccia all'elenco di interfacce associato all'elemento informazioni sul dispositivo nel set di informazioni sul 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 chiamata successiva 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

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

Vedi anche

SetupDiOpenDeviceInterfaceRegKey

SetupDiRemoveDeviceInterface