Я следую примеру из следующего репозитория: https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/PosPrinter.
В Scenario1_ReceiptPrinter.xaml.cs я изменил FindReceiptPrinter для запуска FindAllAsync(), как показано ниже:
DeviceInformationCollection deviceCollection = await DeviceInformation.FindAllAsync();
При запуске функции таким образом, а не при передаче селектора устройств, я могу найти идентификатор устройства, который соответствует принтеру SymbolicName в моем реестре для установленного принтера. Однако объект принтера всегда имеет значение null, даже когда я явно передаю идентификатор принтера.
Я не уверен, есть ли проблема с тем, как установлен мой принтер, или мне нужно называть его по-другому, если это USB-принтер. Ниже приведены некоторые снимки экрана моего модифицированного кода для целей отладки:
Коллекция устройств заполнена:
Принтер найден:
Нулевой объект принтера: