У меня есть приложение UWP C #, которое должно использовать принтеры, подключенные через USB. К сожалению, встроенная функциональность UWP для таких устройств (пространство имен Windows.Devices.Usb) имеет ряд существенных недостатков. Он не распознает USB-принтеры как принтеры без установки драйвера производителя (поскольку Pnp-менеджер не предоставляет достаточно информации в реестр). Установка конкретного драйвера — это то, что я не хочу делать. Я написал сценарий C ++, используя CreateFile и WriteFile для доступа к принтерам, но, к сожалению, UWP не предлагает поддержку CreateFile, а CreateFile2 имеет ограниченный доступ только к локальной папке приложения и месту установки пакета.
Есть ли у вас какие-либо предложения, как я мог бы обойти ограничения UWP, или, возможно, каким-то другим способом, кроме CreateFile, получить дескриптор устройства, который я мог бы передать WriteFile?
Приложение UWP запускается в изолированной среде, оно может получить доступ только к определенным расположениям файловой системы по умолчанию как документ Права доступа к файлу. Поэтому я предлагаю вам попытаться создать классическое приложение для использования этих конкретных API, а затем преобразовать его в UWP, используя Настольный мост.
Других решений пока нет …