通过WinXP上的MTP - Digitalcamera而不是便携式设备

时间:2012-11-08 16:02:00

标签: linux windows-7 windows-xp mtp

我在TI814X评估板上使用Meego的MTP代码(Buteo MTP = daemon + functionfs)。当连接到Win7时,它被检测为 Protable Device ,我被允许打开资源管理器。但是在WinXP上,它被检测为数码相机,因此我可以开放扫描和图像编辑器,而探险家图标则是相机。

准备:我已将设备类型设置为0x03('便携设备')。我给了我的设备一个唯一的名称,并在每次尝试从注册表中出现此名称之前删除(否则我的更改不会出现在Windows上)。

我已经将'USB View'的输出与我的三星Galaxy手机进行了比较,我找到的唯一区别是bDeviceProtocol,它被移动设备设置为“1”(针对specification of PTP)。将此值应用于我的硬件没有任何区别。

打开硬件管理器时,我可以列出Compatible IDs。在这些ID中,三星移动列表

USB\MS_COMP_MTP
USB\Class_06&SubClass_01&Prot_01
USB\Class_06&SubClass_01
USB\Class_06

虽然我的设备缺少第一个条目:

USB\Class_06&SubClass_01&Prot_01
USB\Class_06&SubClass_01
USB\Class_06

此外,移动设备的服务仅为WUDRFd,而我的设备仅为usbscan

问题: MS_COMP_MTP触发了什么?它是我的USB / MTP配置的选项还是由vencor /产品ID触发?如何让我的设备使用WUDRFd代替usbscan

1 个答案:

答案 0 :(得分:0)

有一个名为“Microsoft OS Descriptor”的数据结构。这可以由设备转移到Windows并导致此“MS_COMP_MTP”标志。

当前的Windows版本确实在没有此描述符的情况下检测MTP - 但是Windows XP still needs it

感谢彼得information