Приведенный ниже фрагмент кода использует OPOS .NET, чтобы открыть POS-принтер для печати. Он отлично работает, когда выполняется как часть отдельного приложения. При выполнении службой Windows вызов GetDevice (...) всегда возвращает ноль.
explorer = new PosExplorer();
device_info = explorer.GetDevice(DeviceType.PosPrinter, PrinterName);
printer = (PosPrinter)explorer.CreateInstance(device_info);
printer.Open();
printer.Claim(1000);
printer.DeviceEnabled = true;
Это принтер Epson TM-U220B. Существует ли проблема безопасности, которую необходимо устранить, прежде чем служба получит доступ к POS-устройствам? Кто-нибудь может порекомендовать хороший источник информации о разработке служб Windows, использующих OPOS .NET?