【问题标题】:How to get media devices information?如何获取媒体设备信息?
【发布时间】:2018-03-16 05:26:37
【问题描述】:

我正在使用MediaDevices NuGet 包来识别连接到计算机的所有媒体设备。我不确定如何获得MediaStorageInfo,比如它可以容纳多少空间或有多少可用空间。

我的代码的 sn-p:

var mediadevices = mediadevice.GetDevices();
MediaStorageInfo info = new MediaStorageInfo();
foreach (var device in mediadevices)
{
    ulong cap = info.Capacity
    ulong freespace = info.FreespaceInObjects;   
}

手册建议:

var devicess = MediaDevice.GetDevices();
using (var device = devicess.First(d => d.FriendlyName == "My Cell Phone"))
{
    device.Connect();

    // get list of available storages (SD-Card, Internal Flash, ...)
    var objects = device.FunctionalObjects(FunctionalCategory.Storage);
    MediaStorageInfo infoss = GetStorageInfo(objects.First());
    ulong size = infoss.FreeSpaceInBytes;

    device.Disconnect();
}

GetStorageInfo 似乎丢失了,因为错误指出无法解决并且当前联系人中不存在。我不确定如何将我的MediaDevice 传递给MediaStorageInfo。任何建议都有帮助。谢谢!

【问题讨论】:

  • 您是否尝试阅读manual
  • 是的,我做到了。代码中显示的手册中的 mediastorageinfo 似乎不起作用。

标签: c# nuget mediadevices


【解决方案1】:

只是改变:

GetStorageInfo(objects.First());

device.GetStorageInfo(objects.First())

应该是这样的:

var devicess = MediaDevice.GetDevices();
using (var device = devicess.First(d => d.FriendlyName == "My Cell Phone"))
{
    device.Connect();

    // get list of available storages (SD-Card, Internal Flash, ...)
    var objects = device.FunctionalObjects(FunctionalCategory.Storage);
    MediaStorageInfo infoss = device.GetStorageInfo(objects.First());
    ulong size = infoss.FreeSpaceInBytes;

   device.Disconnect();
}

【讨论】:

    猜你喜欢
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-19
    • 1970-01-01
    • 2021-11-05
    • 2011-06-21
    相关资源
    最近更新 更多