GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION Rückruffunktion (gpioclx.h)
Die CLIENT_QueryControllerBasicInformation Ereignisrückruffunktion ruft die Hardwareattribute des allgemeinen I/O-Controllers (GPIO) ab.
Syntax
GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION GpioClientQueryControllerBasicInformation;
NTSTATUS GpioClientQueryControllerBasicInformation(
[in] PVOID Context,
[out] PCLIENT_CONTROLLER_BASIC_INFORMATION Information
)
{...}
Parameter
[in] Context
Ein Zeiger auf den Gerätekontext des GPIO-Controllertreibers.
[out] Information
Ein Zeiger auf eine vom Aufrufer zugewiesene CLIENT_CONTROLLER_BASIC_INFORMATION Struktur. Die CLIENT_QueryControllerBasicInformation-Funktion schreibt die HARDWAREattribute und Konfigurationsinformationen des GPIO-Controllers in diese Struktur.
Rückgabewert
Die CLIENT_QueryControllerBasicInformation-Funktion gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich ist. Andernfalls wird ein entsprechender Fehlercode zurückgegeben.
Bemerkungen
Diese Rückruffunktion wird vom GPIO-Controllertreiber implementiert. Die GPIO-Frameworkerweiterung (GpioClx) ruft diese Funktion auf.
Die CLIENT_QueryControllerBasicInformation Rückruffunktion sollte alle Elemente der CLIENT_CONTROLLER_BASIC_INFORMATION-Struktur festlegen, einschließlich der Version und Size-Membern. GpioClx initialisiert das element Size vor dem Aufrufen dieser Funktion nicht, aber der Puffer, auf den der Information Parameter verweist, ist garantiert groß genug, um die Version dieser Struktur zu enthalten, die der GPIO-Controllertreiber verwendet.
Rufen Sie die GPIO_CLX_RegisterClient Methode auf, um die CLIENT_QueryControllerBasicInformation Rückruffunktion des Treibers zu registrieren. Diese Methode akzeptiert als Eingabeparameter einen Zeiger auf eine GPIO_CLIENT_REGISTRATION_PACKET Struktur, die einen CLIENT_QueryControllerBasicInformation Funktionszeiger enthält.
Beispiele
Um eine CLIENT_QueryControllerBasicInformation Rückruffunktion zu definieren, müssen Sie zuerst eine Funktionsdeklaration bereitstellen, die den Typ der Rückruffunktion identifiziert, die Sie definieren. Windows stellt eine Reihe von Rückruffunktionstypen für Treiber bereit. Durch das Deklarieren einer Funktion mithilfe der Rückruffunktionstypen können Codeanalyse für Treiber, statische Treiberüberprüfung (SDV) und andere Überprüfungstools Fehler finden, und es ist eine Anforderung zum Schreiben von Treibern für das Windows-Betriebssystem.
Um beispielsweise eine CLIENT_QueryControllerBasicInformation Rückruffunktion zu definieren, die MyEvtGpioQueryControllerBasicInformation
benannt ist, verwenden Sie den funktionstyp GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION, wie in diesem Codebeispiel gezeigt:
GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION MyEvtGpioQueryDeviceInformation;
Implementieren Sie dann die Rückruffunktion wie folgt:
_Use_decl_annotations_
NTSTATUS
MyEvtGpioQueryDeviceInformation(
PVOID Context,
PCLIENT_CONTROLLER_BASIC_INFORMATION Information
)
{ ... }
Der GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION Funktionstyp wird in der Headerdatei "Gpioclx.h" definiert. Um Fehler genauer zu identifizieren, wenn Sie die Codeanalysetools ausführen, müssen Sie der Funktionsdefinition die Use_decl_annotations Anmerkung hinzufügen. Die Use_decl_annotations Anmerkung stellt sicher, dass die Anmerkungen, die auf den Funktionstyp GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION in der Headerdatei angewendet werden, verwendet werden. Weitere Informationen zu den Anforderungen für Funktionsdeklarationen finden Sie unter Deklarieren von Funktionen mithilfe von Funktionsrollentypen für KMDF-Treiber. Weitere Informationen zu Use_decl_annotationsfinden Sie unter Annotating Function Behavior.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Wird ab Windows 8 unterstützt. |
Zielplattform- | Desktop |
Header- | gpioclx.h |
IRQL- | Wird bei PASSIVE_LEVEL aufgerufen. |
Siehe auch
CLIENT_CONTROLLER_BASIC_INFORMATION