首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Visual .NET中访问MTP/WPD设备

在Visual .NET中访问MTP/WPD设备
EN

Stack Overflow用户
提问于 2014-10-22 18:48:17
回答 2查看 7.2K关注 0票数 3

是否有任何可用于VB.net的库,使我能够轻松地访问MTP设备?我希望能够找出连接的设备,列出它们的内容,并将文件复制到和复制它们。

到目前为止,我所看到的一切(无论是在堆栈溢出,还是在微软网站上,或者使用简单的谷歌搜索)都是用C++、C#或其他不是VB.net的语言。微软的文档完全超出了我的想象。

因此,除非我计划学习一门新的语言,否则一切都是不可能的。

我确实找到了MTPSharp,这给了我希望。然而,这里没有文档,它似乎没有完全实现,我尝试做某些事情会返回一个异常,作者告诉我,它是针对一个我不应该使用的旧API编写的,并且无法帮助我解决我所遇到的问题。

对于想要使用VB.net的人来说,真的没有希望吗?

EN

回答 2

Stack Overflow用户

发布于 2020-01-25 19:36:18

(这应该是对这个答案的评论,但我没有足够的声誉来添加评论)

@Richard说:

当我运行C#代码时,我在第107行this._device.Content(out Content)处得到一个错误;“对象引用没有设置为对象的实例”。

增加一行:

代码语言:javascript
复制
this.Connect();

在第107行帮我解决问题之前。

票数 1
EN

Stack Overflow用户

发布于 2020-01-25 22:20:38

这个MediaDevices nuget套餐应该适合你。

来自包描述:

API与MTP / WPD设备(如智能手机、平板电脑和照相机)进行通信。包括文件在内。

(GitHub链路)。

要打开设备并在其上写入文件,请执行以下操作:

代码语言:javascript
复制
var devices = MediaDevice.GetDevices();
using (var device = devices.First(d => d.FriendlyName == "My Cell Phone"))
{
  device.Connect();

  device.CreateDirectory(@"\Phone\Documents\Temp");

  using(FileStream stream = File.OpenRead(@"C:/Temp/Test.txt"))
  {
    device.UploadFile(stream, @"\Phone\Documents\Temp\Test.txt");
  }
  device.Disconnect();
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26514869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档