次の方法で共有


UfxDevicePortDetectCompleteEx 関数 (ufxclient.h)

検出されたポートの種類について UFX に通知し、必要に応じてアクションを要求します。

構文

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

パラメーター

[in] UfxDevice

UfxDeviceCreate を呼び出してドライバーが作成した UFX デバイス オブジェクトハンドル。

[in] PortType

USBFN_PORT_TYPE型の列挙値を格納します。

[in] Action

USBFN_ACTION型の列挙値を格納します。

戻り値

何一つ

備考

クライアント ドライバーは、ポート検出が完了した後、通常は EVT_UFX_DEVICE_PORT_DETECT コールバック関数から UfxDevicePortDetectCompleteEx を呼び出します。 一部のプラットフォームでは、UFX は報告されたポートの種類を使用して、USB ポートから引き出すことができる最大電流をバッテリ マネージャーに通知することがあります。

Action パラメーターが 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