Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die IofGetDriverProxyWrapperFromEndpoint-Funktion ruft den Zeiger auf den Wrapper für eine Endpunktfunktion mithilfe des Endpunktfunktionzeigers ab.
Syntax
NTSTATUS IofGetDriverProxyWrapperFromEndpoint(
PDRIVER_PROXY_EXTENSION DriverProxyExtension,
PDRIVER_PROXY_ENDPOINT_FUNCTION Endpoint,
PDRIVER_PROXY_WRAPPED_ENDPOINT_FUNCTION *Wrapper
);
Die Parameter
DriverProxyExtension
[in] Ein Zeiger auf die DriverProxy-Erweiterung, für die die Endpunkte registriert sind. Diese Erweiterung wurde in einem vorherigen Aufruf von IoCreateDriverProxyExtension erstellt.
Endpoint
[in] Ein Zeiger auf die Endpunktfunktion, für die der Wrapper gefunden werden soll. Dies muss ein Funktionszeiger sein, der zuvor bei IoRegisterDriverProxyEndpoints registriert wurde.
Wrapper
[out] Ein Zeiger auf eine Variable, die einen Zeiger auf die umbrochene Endpunktfunktion empfängt. Wenn der Endpunkt gefunden wird, verweist dies auf die Wrapperfunktion, die anstelle des ursprünglichen Endpunkts aufgerufen werden soll.
Rückgabewert
IofGetDriverProxyWrapperFromEndpoint gibt einen der folgenden NTSTATUS-Werte zurück:
| Rückgabecode | Description |
|---|---|
| STATUS_SUCCESS | Die Wrapperfunktion wurde erfolgreich gefunden und zurückgegeben. |
| STATUS_NOT_FOUND | Die angegebene Endpunktfunktion wurde in den registrierten Endpunkten nicht gefunden. |
Bemerkungen
Diese Funktion ist die Standardmethode zum Abrufen von Endpunktwrappern in Driver Hot-Swap V2. Der an diese Funktion übergebene Endpunktzeiger muss genau mit einem Zeiger übereinstimmen, der während des automatischen Endpunktenumerationsprozesses identifiziert wurde.
Um Compilerwarnungen beim Aufrufen dieser Funktion zu vermeiden, müssen Sie möglicherweise die Parameter "Endpoint " und "Wrapper " umwandeln. Zur Vereinfachung wird ein Makro IoGetDriverProxyWrapperFromEndpoint bereitgestellt, das die Typ umwandlung automatisch behandelt. Es wird empfohlen, das Makro zu verwenden, anstatt diese Funktion direkt aufzurufen.
Die Funktion kann auf jeder IRQL-Ebene aufgerufen werden und führt einen schnellen Nachschlagevorgang aus.
Sobald ein Wrapper abgerufen wurde, sollten Treiber die Wrapperfunktion anstelle der ursprünglichen Endpunktfunktion aufrufen, um hot-swappable Funktionen zu aktivieren.
Anforderungen
| Anforderung | Wert |
|---|---|
| Zielplattform | Universal |
| Header | wdm.h |
| Library | NtosKrnl.lib |
| IRQL | Beliebige Ebene |