是否有任何可用于VB.net的库,使我能够轻松地访问MTP设备?我希望能够找出连接的设备,列出它们的内容,并将文件复制到和复制它们。
到目前为止,我所看到的一切(无论是在堆栈溢出,还是在微软网站上,或者使用简单的谷歌搜索)都是用C++、C#或其他不是VB.net的语言。微软的文档完全超出了我的想象。
因此,除非我计划学习一门新的语言,否则一切都是不可能的。
我确实找到了MTPSharp,这给了我希望。然而,这里没有文档,它似乎没有完全实现,我尝试做某些事情会返回一个异常,作者告诉我,它是针对一个我不应该使用的旧API编写的,并且无法帮助我解决我所遇到的问题。
对于想要使用VB.net的人来说,真的没有希望吗?
发布于 2020-01-25 19:36:18
(这应该是对这个答案的评论,但我没有足够的声誉来添加评论)
@Richard说:
当我运行C#代码时,我在第107行this._device.Content(out Content)处得到一个错误;“对象引用没有设置为对象的实例”。
增加一行:
this.Connect();在第107行帮我解决问题之前。
发布于 2020-01-25 22:20:38
这个MediaDevices nuget套餐应该适合你。
来自包描述:
API与MTP / WPD设备(如智能手机、平板电脑和照相机)进行通信。包括文件在内。
(GitHub链路)。
要打开设备并在其上写入文件,请执行以下操作:
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();
}https://stackoverflow.com/questions/26514869
复制相似问题