Condividi tramite


Metodo IWDFDevice::CreateDeviceInterface (wudfddi.h)

[Avviso: UMDF 2 è la versione più recente di UMDF e sostituisce UMDF 1. Tutti i nuovi driver UMDF devono essere scritti usando UMDF 2. Nessuna nuova funzionalità viene aggiunta a UMDF 1 ed è disponibile un supporto limitato per UMDF 1 nelle versioni più recenti di Windows 10. I driver di Windows universali devono usare UMDF 2. Per altre informazioni, vedere Introduzione con UMDF.]

Il metodo CreateDeviceInterface crea un'istanza di una classe di interfaccia del dispositivo.

Sintassi

HRESULT CreateDeviceInterface(
  [in]           LPCGUID pDeviceInterfaceGuid,
  [in, optional] PCWSTR  pReferenceString
);

Parametri

[in] pDeviceInterfaceGuid

Puntatore al GUID per una classe di interfaccia del dispositivo.

[in, optional] pReferenceString

Puntatore a una stringa con terminazione NULL contenente il nome dell'istanza dell'interfaccia del dispositivo. Questo parametro è facoltativo e, Il driver può passare NULL se il driver non deve specificare un nome. Se il driver deve specificare un nome, la stringa che il driver passa non deve contenere caratteri separatori di percorso ("/" o "\").

Valore restituito

CreateDeviceInterface restituisce S_OK se l'operazione ha esito positivo. In caso contrario, questo metodo restituisce uno dei codici di errore definiti in Winerror.h.

Commenti

I driver possono usare il parametro pReferenceString per distinguere istanze diverse di una singola interfaccia. In altre parole, se un driver chiama CreateDeviceInterface due volte per la stessa classe di interfaccia del dispositivo, il driver può specificare una stringa diversa per pReferenceString ogni volta. Quando viene aperta un'istanza di un'interfaccia, il framework passa la stringa di riferimento dell'istanza al driver. La stringa di riferimento viene aggiunta al componente del percorso del nome dell'istanza dell'interfaccia. Il driver può quindi usare la stringa di riferimento per determinare quale istanza della classe dell'interfaccia del dispositivo viene aperta.

Se CreateDeviceInterface riesce, lo stato iniziale dell'interfaccia è disabilitato. Se la creazione ha esito positivo, il framework abilita e disabilita automaticamente l'interfaccia in base allo stato PnP del dispositivo. Inoltre, un driver può disabilitare e riabilitare un'interfaccia del dispositivo in base alle esigenze chiamando IWDFDevice::AssignDeviceInterfaceState.

Per altre informazioni sulle interfacce dei dispositivi, vedere Uso di interfacce dispositivo nei driver basati su UMDF.

Esempio

Nell'esempio di codice seguente viene illustrato come creare un'istanza dell'interfaccia del dispositivo. In questo esempio il driver chiama in modo esplicito IWDFDevice::AssignDeviceInterfaceState per abilitare l'interfaccia.

    //
    // Create the device interface.
    //
    HRESULT hr;
    if (S_OK == hr) {
        hr = m_FxDevice->CreateDeviceInterface(
                         &GUID_DEVINTERFACE_OSRUSBFX2,
                         NULL);
    }
    if (S_OK == hr) {
        hr = m_FxDevice->AssignDeviceInterfaceState(
                        &GUID_DEVINTERFACE_OSRUSBFX2,
                        NULL,
                        TRUE);
    }

Requisiti

Requisito Valore
Fine del supporto Non disponibile in UMDF 2.0 e versioni successive.
Piattaforma di destinazione Desktop
Versione UMDF minima 1.5
Intestazione wudfddi.h (include Wudfddi.h)
DLL WUDFx.dll

Vedi anche

IWDFDevice

IWDFDevice::AssignDeviceInterfaceState