WpdMultiTransportDriver 示例

WPD 驱动程序文档的本部分介绍了 Windows 驱动程序工具包中的多传输驱动程序 WpdMultiTransportDriver 示例。

传输协议是便携式设备与计算机进行通信的协议。 传输示例包括 Internet 协议 (IP)、蓝牙和 USB。

现在,许多便携式设备都支持多种传输方式。 例如,某些手机同时支持蓝牙和 USB。

在 Windows 7 之前,如果用户将支持多种传输方式的便携式设备连接到计算机,则 Windows 设备管理器会为每种传输方式显示一个唯一的节点。 这可能意味着安装了多个设备。 为了解决这个问题,Windows 7 支持多传输驱动程序模式。 这种模式可确保每个具有多传输功能的设备只出现一个节点。

多传输驱动程序堆栈如下图所示:

驱动程序堆栈。

在上图中,一个假设的 WPD 应用程序 (App.exe) 可以在启用了多传输功能的手机与 USB 或蓝牙连接之间来回移动数据。 WPD 复合驱动程序 (Wpdcomp.dll) 由 Microsoft 提供,并包含在 Windows 7 中。 多传输驱动程序 (WpdMultiTranscell.dll) 是一个假设的供应商提供的驱动程序。

上图显示的是通过蓝牙和 USB 同时进行的连接。 某些驱动程序可能会实现这一功能。 WpdMultiTransportDriver 在任何给定时间点都支持单个(而非同时)连接。

此示例驱动程序基于 WDK 中包含的 WpdHelloWorldDriver。 在查看本部分中的各个主题之前,请首先熟悉 WpdHelloWorldDriver

下表列出了 WpdHelloWorldDriver 与 WpdMultiTransportDriver 之间的主要区别。

修订或更改 说明
设备抵达 新的多传输驱动程序会为指定设备创建功能唯一标识符 (FUID),启用多传输选项,设置必要的即插即用 (PnP) 值,并设置当前传输带宽。
多个队列支持 新的多传输驱动程序支持两个 I/O 队列。 (WpdHelloWorldDriver 支持单个队列。)

WPD 驱动程序示例

MTP 安装程序信息 (.inf) 文件