Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Registers the client driver with the Policy Manager to report hub arrival/removal and connector state changes.
Syntax
NTSTATUS UsbPm_Register(
[In] PUSBPM_CLIENT_CONFIG ClientConfig,
[Out] USBPM_CLIENT *ClientHandle
);
Parameters
[In] ClientConfig
The pointer to a caller-supplied USBPM_CLIENT_CONFIG structure. Initialize the structure by calling macro USBPM_CLIENT_CONFIG_INIT.
[Out] ClientHandle
A pointer to a location that receives a handle to the registration operation.
Return value
Returns STATUS_SUCCESS if the operation succeeds. Otherwise, returns an appropriate NTSTATUS value.
Remarks
The client driver's callback functions might start getting invoked before UsbPm_Register returns. The ClientHandle value is set to a valid value before callback functions are invoked.
The driver typically calls UsbPm_Register in the driver's EVT_WDF_DEVICE_SELF_MANAGED_IO_INIT and unregisters in EVT_WDF_DEVICE_SELF_MANAGED_IO_CLEANUP by calling UsbPm_Deregister.
Requirements
| Requirement | Value |
|---|---|
| Minimum supported client | Windows 10, version 1809 |
| Minimum KMDF version | 1.27 |
| Minimum UMDF version | 2.27 |
| Header | usbpmapi.h |
| Library | UsbPmApi.lib |
| IRQL | PASSIVE_LEVEL |