GPIO_CLX_RegisterClient 函数 (gpioclx.h)

GPIO_CLX_RegisterClient 方法将常规用途 I/O (GPIO) 控制器驱动程序注册为 GPIO 框架扩展的客户端, (GpioClx) 。

语法

NTSTATUS GPIO_CLX_RegisterClient(
  [in]      WDFDRIVER                        Driver,
  [in, out] PGPIO_CLIENT_REGISTRATION_PACKET RegistrationPacket,
  [in]      PUNICODE_STRING                  RegistryPath
);

参数

[in] Driver

GPIO 控制器驱动程序的框架驱动程序对象的 WDFDRIVER 句柄。

[in, out] RegistrationPacket

指向调用方分配 的GPIO_CLIENT_REGISTRATION_PACKET 结构的指针,该结构包含调用方注册信息。 此结构包含指向 GPIO 控制器驱动程序实现的事件回调函数的指针。 此外,此结构指定 GPIO 控制器驱动程序为其内部配置数据和状态信息所需的设备上下文的大小。

[in] RegistryPath

指向 UNICODE_STRING 结构的指针,该结构包含 GPIO 控制器驱动程序的注册表项的路径名称。 此参数应该是传递给驱动程序的 DriverEntry 例程的注册表路径名称。 有关驱动程序注册表项的详细信息,请参阅 设备和驱动程序的注册表树

返回值

如果调用成功,GPIO_CLX_RegisterClient将返回STATUS_SUCCESS。 可能的返回值包括以下错误代码。

返回代码 说明
STATUS_INVALID_PARAMETER
DriverRegistrationPacketRegistryPath 参数为 NULL。
STATUS_GPIO_INVALID_REGISTRATION_PACKET
指定的注册数据包无效。
STATUS_INSUFFICIENT_RESOURCES
内存不足。

注解

GPIO 控制器驱动程序调用此方法,以向 GpioClx 注册其事件回调函数。 通常,驱动程序从其 DriverEntry 例程调用此方法,该例程在驱动程序加载到内存后不久运行。

稍后,就在 GPIO 控制器驱动程序卸载之前,驱动程序会调用 GPIO_CLX_UnregisterClient 方法来取消其 GpioClx 注册。

要求

要求
最低受支持的客户端 从Windows 8开始可用。
目标平台 通用
标头 gpioclx.h
Library Msgpioclxstub.lib
IRQL PASSIVE_LEVEL

另请参阅

DriverEntry

GPIO_CLIENT_REGISTRATION_PACKET

GPIO_CLX_UnregisterClient

UNICODE_STRING