命令(WPD API)
客户端应用程序和驱动程序通过从客户端(通过 Windows 可移植设备 API)发送到驱动程序(通过 User-Mode 驱动程序框架)的命令进行通信。 命令可以或不包含参数,也可以不返回结果。 客户端可以通过调用 IPortableDevice::SendCommand 方法或 IPortableDeviceService:SendCommand 方法或通过调用客户端接口的任何方法隐式发送命令。 只能显式发送几个命令;这些记录在命令的文档中。 命令参考页描述了命令的用途,以及它期望接收哪些参数,以及它应返回哪些参数。
命令由 PROPERTYKEY 结构标识。 这由两个部分组成:GUID 部分(fmtid 成员)和 DWORD 部件(pid 成员)。 GUID 部件用于指示命令所属的类别(相关命令属于同一类别,因此将具有相同 fmtid)。 DWORD 部件指示命令 ID,用于区分命令类别中的单个命令(相同类别中命令的 pid 值将不同)。
下表列出了 Windows 可移植设备定义的命令类别。 设备制造商可以通过创建自己的命令类别和命令 ID 来定义自己的命令。 但是,制造商不应将命令添加到下面列出的类别,因为这些命令由Microsoft保留。
命令类别
命令类别 | 描述 |
---|---|
WPD_CATEGORY_COMMON | 所有对象和设备通用的命令。 |
WPD_CATEGORY_DEVICE_HINTS | 用于检索可用于改善最终用户体验的可选设备信息的命令。 |
WPD_CATEGORY_SMS | 用于支持短消息服务(SMS)功能的设备的命令,通常在移动电话上公开。 |
WPD_CATEGORY_STILL_IMAGE_CAPTURE | 用于支持静止图像捕获的设备的命令。 |
WPD_CATEGORY_STORAGE | 用于存储功能对象的命令。 |
下表中提供了为每种类型定义的特定命令,这些命令按命令类型进行组织。
WPD_CATEGORY_COMMON 类别
命令 | 描述 |
---|---|
WPD_COMMAND_COMMON_RESET_DEVICE | 重置设备。 |
WPD_CATEGORY_DEVICE_HINTS 类别
命令 | 描述 |
---|---|
WPD_COMMAND_DEVICE_HINTS_GET_CONTENT_LOCATION | 检索可以保存指定类型的对象的文件夹的对象 ID。 |
WPD_CATEGORY_STORAGE 类别
命令 | 描述 |
---|---|
WPD_COMMAND_STORAGE_EJECT | 弹出可由驱动程序远程弹出的存储介质。 |
WPD_COMMAND_STORAGE_FORMAT | 设置设备上的存储功能对象的格式。 |
WPD_CATEGORY_SMS 类别
命令 | 描述 |
---|---|
WPD_COMMAND_SMS_SEND | 通过 SMS 功能对象启动短信发送。 |
WPD_CATEGORY_STILL_IMAGE_CAPTURE 类别
命令 | 描述 |
---|---|
WPD_COMMAND_STILL_IMAGE_CAPTURE_INITIATE | 通过静止图像功能对象启动静止图像捕获。 |
相关主题