将文件写入连接到Windows PC的PNP设备

Yau*_*sau 9 c# windows mobile-devices plug-and-play

通过将PNP设备插入Windows PC,我想知道设备是否支持数据传输功能.我非常有兴趣将一些内容推送到设备.因此,例如当我插入Windows Phone时,我可以看到Windows管理查询添加了5个新设备

名称:Windows Phone

CompartibleId:USB\MS_COMP_MTP,USB\Class_06&SubClass_01&Prot_01,USB\Class_06&SubClass_01,USB\Class_06


名称:WinUsb设备

CompartibleId:USB\MS_COMP_WINUSB,USB\Class_ff&SubClass_ff&Prot_ff,USB\Class_ff&SubClass_ff,USB\Class_ff


名称:WinUsb设备

CompartibleId:USB\MS_COMP_WINUSB,USB\Class_ff&SubClass_ff&Prot_ff,USB\Class_ff&SubClass_ff,USB\Class_ff


名称:WinUsb设备

CompartibleId:USB\MS_COMP_WINUSB,USB\Class_ff&SubClass_ff&Prot_ff,USB\Class_ff&SubClass_ff,USB\Class_ff


名称:USB复合设备

CompartibleId:USB\DevClass_00&SubClass_00&Prot_00,USB\DevClass_00&SubClass_00,USB\DevClass_00,USB\COMPOSITE

我怎么能得到一个胶水:

  • 所有设备都是单个设备的一部分
  • 该设备允许我在其上保存文件
  • 找到一个指标,肯定告诉我有关支持的文件传输协议
  • 如果文件转移有多个单一可能性选择更快(或现代)

即使你能告诉我一个有意义的方向,我还是应该继续我的学习/调查,我会提供任何帮助.

我正在寻找一种使用设备的通用方法.期望的实现语言是C#.

Jer*_*rin 1

首先,您可以查阅此代码项目,它为您提供了 Windows 设备驱动程序的详细信息。
SharpUSBLibHidLibrary是两个广泛使用的库,您甚至可以在这里获得带有实现的教程项目。
SharpUsbLib 早期版本用于搞砸系统。

更喜欢libusbdotnet。如果您必须使用 USB 设备(发送请求、处理响应),这个库是我能找到的最佳解决方案。

优点:

拥有在同步或异步模式下工作所需的所有方法。源代码提供了足够的示例,可以立即开始使用它。

缺点:

文档质量差(这是开源项目的常见问题)。基本上,您可以在 CHM 帮助文件中找到方法的常见描述,仅此而已。但我仍然发现提供的示例和源代码足以进行编码。只是有时我会看到一种奇怪的行为,想知道为什么它是以这种方式实现的,但却无法得到任何提示......似乎不再受支持。最新版本于2010年10月发布。有时很难得到答案。