首页 > 解决方案 > 访问移动设备属性数据

问题描述

有没有办法通过 C# 访问移动设备属性。目的是显示设备的序列号和 iOS 版本,以便像 iPhone 一样连接 USB。

使用像下面这样的 WMI 查询可以访问通过计算机管理器访问的基本信息,例如 DeviceID 或 PnpDeviceID。但是我一直无法找到提供设备序列号等的属性。

ManagementObjectSearcher(@"Select * From Win32_USBHub WHERE Description LIKE 'Apple Mobile Device%'")

或者

ManagementObjectSearcher(@"Select * From Win32_PnPEntity")

或者

ManagementObjectSearcher("@Select * From Win32_USBControllerDevice")

我所指的设备属性菜单如下图所示,通过右键单击设备,然后单击属性来访问。

在此处输入图像描述

标签: c#usbwmi-query

解决方案


lockdown.lockdownd_client_new_with_handshake(deviceHandle, out lockdownHandle, "Quamotion").ThrowOnError();在您能够访问序列号或 iOS 版本等值之后,放置下面的代码。这只是一个粗略的例子:

        string t1;
        string t2;

        PlistHandle tested1;
        PlistHandle tested2;

        //Find serial number in plist
        lockdown.lockdownd_get_value(lockdownHandle, null, "SerialNumber", out 
        tested1);

        //Find IOS version in plist
        lockdown.lockdownd_get_value(lockdownHandle, null, "ProductVersion", out 
         tested2);

        //Get string values from plist
        tested1.Api.Plist.plist_get_string_val(tested1, out t1);
        tested2.Api.Plist.plist_get_string_val(tested2, out t2);

        //Place data in textboxes
        serialTXT.Text = t1.Trim();
        verTXT.Text = t2.Trim();

推荐阅读