首页 > 解决方案 > UWP 设备制造商

问题描述

我正在尝试获取无线电设备的制造商(在 Windows 系统上)。我检索无线电设备并查找 System.Devices.DeviceManufacturer 属性类型。但它不在收藏中。我可以在设备管理器中看到收音机处于活动状态,当我检查它的属性时,有一个制造商。所以我的问题——设备​​属性列表中是否存在与设备管理器属性对话框中显示的制造商相关的相同制造商属性。如果没有 - 是否有可能获得制造商 - 我该怎么做?

彼得

标签: uwpdeviceradio

解决方案


要获取制造商,您需要使用Windows.Devices.Enumeration.Pnp API。PnpObject 的用法与Enumeration API类似。当您使用其中一种静态方法创建 PnpObject 时,您需要将“System.Devices.Manufacturer”添加到属性列表中,如下所示:

private PnpObjectWatcher pnpObjectWatcher = null;

private void Button_Click(object sender, RoutedEventArgs e)
{
    List<string> properties = new List<string>();
    properties.Add("System.Devices.Manufacturer");
    pnpObjectWatcher = PnpObject.CreateWatcher(PnpObjectType.DeviceContainer,properties);
    pnpObjectWatcher.Added += PnpObjectWatcher_Added;
    pnpObjectWatcher.Start();
}

private void PnpObjectWatcher_Added(PnpObjectWatcher sender, PnpObject args)
{
    Debug.WriteLine(args.Properties["System.Devices.Manufacturer"]);
}

注意PnpObjectType必须是DeviceContainer类型,否则无法获取厂商名称。


推荐阅读