UsbDevice.GetDeviceClassSelector(UsbDeviceClass) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得進階查詢語法 (AQS) 字串,應用程式可以傳遞至 DeviceInformation.FindAllAsync ,以尋找特定類型的 USB 裝置。
public:
static Platform::String ^ GetDeviceClassSelector(UsbDeviceClass ^ usbClass);
static winrt::hstring GetDeviceClassSelector(UsbDeviceClass const& usbClass);
public static string GetDeviceClassSelector(UsbDeviceClass usbClass);
function getDeviceClassSelector(usbClass)
Public Shared Function GetDeviceClassSelector (usbClass As UsbDeviceClass) As String
參數
- usbClass
- UsbDeviceClass
應用程式所指定裝置類別的 UsbDeviceClass 物件。
傳回
格式化為 AQS 查詢的字串。
範例
protected override async void OnLaunched(LaunchActivatedEventArgs args)
{
byte deviceClass = 0xf0;
byte deviceSubclass = 0x01;
var myDevices = await Windows.Devices.Enumeration.DeviceInformation.FindAllAsync(
UsbDevice.GetDeviceClassSelector(
new UsbDeviceClass() {
Class = deviceClass, Subclass = deviceSubclass }));
UsbDevice device = null;
foreach (var device in myDevices)
{
if (IsMyDevice(device))
{
device = await UsbDevice.FromIdAsync(device.Id);
}
}
if (device == null)
{
ShowError("Usb device not found");
return;
}
}
備註
您可以藉由指定類別代碼、子類別程式碼或通訊協定程式碼,在列舉的裝置集合中搜尋 UsbDevice 。 若要這樣做:
- 藉由指定ClassCode、SubclassCode和ProtocolCode屬性值來建立UsbDeviceClass物件。 或者,您可以藉由指定特定的 UsbDeviceClasses 屬性來呼叫建構函式。
- 呼叫 GetDeviceClassSelector 並傳遞該新類別。 呼叫會擷取 AQS 字串。
- 呼叫 FindAllAsync 並傳遞字串以取得 UsbDevice 物件。