Прочитать на английском

Поделиться через


Функция UfxDevicePortDetectCompleteEx (ufxclient.h)

Уведомляет UFX о обнаруженном типе порта и при необходимости запрашивает действие.

Синтаксис

void UfxDevicePortDetectCompleteEx(
  [in] UFXDEVICE       UfxDevice,
  [in] USBFN_PORT_TYPE PortType,
  [in] USBFN_ACTION    Action
);

Параметры

[in] UfxDevice

Дескриптор объекта устройства UFX, созданного драйвером, вызывая UfxDeviceCreate.

[in] PortType

Содержит значение перечисления типа USBFN_PORT_TYPE.

[in] Action

Содержит значение перечисления типа USBFN_ACTION.

Возвращаемое значение

Никакой

Замечания

Драйвер клиента вызывает UfxDevicePortDetectCompleteEx после завершения обнаружения портов, как правило, из функции обратного вызова EVT_UFX_DEVICE_PORT_DETECT. На некоторых платформах UFX может использовать тип порта, чтобы уведомить диспетчер батареи о максимальном текущем, который он может извлечь из USB-порта.

Если параметр действия имеет значение UsbfnActionNoCad, UFX не уведомляет диспетчер батареи вообще.

Если для параметра Action задано значение UsbfnActionDetectProprietaryCharger, UFX запрашивает, что драйвер клиента инициирует обнаружение собственных зарядных устройств, вызвав функцию обратного вызова EVT_UFX_DEVICE_DETECT_PROPRIETARY_CHARGER драйвера клиента.

В следующем фрагменте кода показано, как драйвер клиента вызывает UfxDevicePortDetectCompleteEx.

    switch (OnAttach.AttachAction) {
    case UsbfnPortDetected:
        TraceInformation("Port Detected");
        UfxDevicePortDetectComplete(
            ControllerData->UfxDevice,
            OnAttach.PortType);

        break;

    case UsbfnPortDetectedNoCad:
        TraceInformation("Port Detected No CAD");
        UfxDevicePortDetectCompleteEx(
            ControllerData->UfxDevice,
            OnAttach.PortType,
            UsbfnActionNoCad);

        break;


Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 10
целевая платформа Виндоус
заголовка ufxclient.h
библиотеки ufxstub.lib
IRQL DISPATCH_LEVEL