IWDFDevice::CreateDeviceInterface-Methode (wudfddi.h)
[Warnung: UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. UMDF 1 werden keine neuen Features hinzugefügt, und die Unterstützung für UMDF 1 in neueren Versionen von Windows 10 ist eingeschränkt. Universelle Windows-Treiber müssen UMDF 2 verwenden. Weitere Informationen finden Sie unter Erste Schritte mit UMDF.]
Die CreateDeviceInterface-Methode erstellt eine instance einer Geräteschnittstellenklasse.
Syntax
HRESULT CreateDeviceInterface(
[in] LPCGUID pDeviceInterfaceGuid,
[in, optional] PCWSTR pReferenceString
);
Parameter
[in] pDeviceInterfaceGuid
Ein Zeiger auf die GUID für eine Geräteschnittstellenklasse.
[in, optional] pReferenceString
Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Namen des instance der Geräteschnittstelle enthält. Dieser Parameter ist optional. Der Treiber kann NULL übergeben, wenn der Treiber keinen Namen angeben muss. Wenn der Treiber einen Namen angeben muss, darf die vom Treiber übergebene Zeichenfolge keine Pfadtrennzeichen ("/" oder "\") enthalten.
Rückgabewert
CreateDeviceInterface gibt S_OK zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt diese Methode einen der Fehlercodes zurück, die in Winerror.h definiert sind.
Hinweise
Treiber können den Parameter pReferenceString verwenden, um verschiedene Instanzen einer einzelnen Schnittstelle zu unterscheiden. Anders ausgedrückt: Wenn ein Treiber CreateDeviceInterface zweimal für dieselbe Geräteschnittstellenklasse aufruft, kann der Treiber jedes Mal eine andere Zeichenfolge für pReferenceString angeben. Wenn ein instance einer Schnittstelle geöffnet wird, übergibt das Framework die Verweiszeichenfolge des instance an den Treiber. Die Verweiszeichenfolge wird an die Pfadkomponente des Schnittstellennamens instance angefügt. Der Treiber kann dann mithilfe der Verweiszeichenfolge bestimmen, welche instance der Geräteschnittstellenklasse geöffnet wird.
Wenn CreateDeviceInterface erfolgreich ist, ist der Anfangszustand der Schnittstelle deaktiviert. Wenn die Erstellung erfolgreich ist, aktiviert und deaktiviert das Framework die Schnittstelle basierend auf dem PnP-Zustand des Geräts automatisch. Darüber hinaus kann ein Treiber eine Geräteschnittstelle bei Bedarf deaktivieren und erneut aktivieren, indem er IWDFDevice::AssignDeviceInterfaceState aufruft.
Weitere Informationen zu Geräteschnittstellen finden Sie unter Verwenden von Geräteschnittstellen in UMDF-basierten Treibern.
Beispiele
Im folgenden Codebeispiel wird gezeigt, wie Eine Geräteschnittstelle instance erstellt wird. In diesem Beispiel ruft der Treiber explizit IWDFDevice::AssignDeviceInterfaceState auf, um die Schnittstelle zu aktivieren.
//
// 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);
}
Anforderungen
Anforderung | Wert |
---|---|
Ende des Supports | In UMDF 2.0 und höher nicht verfügbar. |
Zielplattform | Desktop |
UMDF-Mindestversion | 1.5 |
Kopfzeile | wudfddi.h (include Wudfddi.h) |
DLL | WUDFx.dll |