iaidr421 2019-12-06 14:32 采纳率: 0%
浏览 799
已结题

c# MTP 获取便携设备中的文件名称、路径等信息

根据网上代码使用 PortableDeviceApiLib.dll现在已经可以链接上设备并获取了文件与文件夹的objectID,但是不知道如何使用objectID获取文件名或者文件夹的路径名称信息,贴出获取objectid的代码,知道如何获取文件信息的大神请留言。

     /// <summary>
     ///递归 枚举出设备中的文件或文件夹ID、设备ID
     /// </summary>
     /// <param name="pContent"></param>
     /// <param name="parentID"></param>
     /// <param name="indent"></param>
     /// <param name="objectIDs"></param>
     private void Enumerate(ref PortableDeviceApiLib.IPortableDeviceContent pContent, string parentID, string indent, ref List<string> objectIDs)
     {
         indent += "    ";
         PortableDeviceApiLib.IEnumPortableDeviceObjectIDs pEnum;

         pContent.EnumObjects(0, parentID, null, out pEnum);
         uint cFetched = 0;
         do
         {
                 string objectID;
                 pEnum.Next(1, out objectID, ref cFetched);
                 pContent.Properties

                 if (objectID != null && !objectID.Equals(""))
                 {
                     objectIDs.Add(objectID);
                 }

             if (cFetched > 0)
             {
                 Enumerate(ref pContent, objectID, indent, ref objectIDs);
             }
         } while (cFetched > 0);
     }

            请告知如何通过文件的objectID获取 文件名、路径信息。
  • 写回答

2条回答 默认 最新

  • 窝米逗佛~ 2019-12-06 16:06
    关注

    你要获取的值究竟是个啥?
    什么样式的? 这样?

    USB\VID_1111&PID_1111&MI_00\6&12E9A068&2&0000
    
    
    

    还是

    USB\VID_1111&PID_1111&MI_00
    

    _说清楚啊
    我没用过c#去获取过,但是用c写过dll给c#端调用过
    什么值都有获取,但是搞不懂你要什么值

    评论

报告相同问题?

悬赏问题

  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)
  • ¥20 怎么在stm32门禁成品上增加查询记录功能
  • ¥15 Source insight编写代码后使用CCS5.2版本import之后,代码跳到注释行里面
  • ¥50 NT4.0系统 STOP:0X0000007B
  • ¥15 想问一下stata17中这段代码哪里有问题呀
  • ¥15 flink cdc无法实时同步mysql数据
  • ¥100 有人会搭建GPT-J-6B框架吗?有偿