2017-04-19 65 views
-1

我正在UWP中开发POS应用程序,我必须将打印命令发送到连接的USB打印机。我无法在UWP中的Windows设备中检测到连接的USB打印机。有没有办法列出UWP中连接的USB打印机?

+0

你看到的[POS样品(https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/PosPrinter)来自Microsoft? – AVK

回答

0

您可以使用这样的事情:

var devicePicker = new DevicePicker(); 
//filter, so you get printer only: 
devicePicker.Filter.SupportedDeviceSelectors.Add("System.Devices.InterfaceClassGuid:=\"{0ecef634-6ef0-472a-8085-5ad023ecbccd}\""); 
devicePicker.Show(new Rect()); 

然后

devicePicker.Hide(); 

关闭名单。

或者你可以使用这样的选择设备:

var devicePicker = new DevicePicker(); 
//filter, so you get printer only: 
devicePicker.Filter.SupportedDeviceSelectors.Add("System.Devices.InterfaceClassGuid:=\"{0ecef634-6ef0-472a-8085-5ad023ecbccd}\""); 
DeviceInformation info = await devicePicker.PickSingleDeviceAsync(new Rect()); 
+0

我尝试了上面的逻辑,但没有添加过滤器,但“DeviceInformation info”给出了null。我可以连接任何USB打印机,因此无法通过其GUID进行过滤。 –

+0

尝试使用过滤器,在我的系统上工作并列出(多个)打印机。当我不使用过滤器时,我得到更多的设备列表。也许你想看看[这里](https://docs.microsoft.com/en-us/windows/uwp/devices-sensors/enumerate-devices) – Hannes

相关问题