Драйвер фискального регистратора

Обсуждение вопросов, связанных с написанием и адаптированием приложений для компьютеров с несколькими рабочими местами. Специфика, новые возможности, ограничения.

Модератор: AsterMaster

Aravir
Сообщения: 19
Зарегистрирован: Пт июн 17, 2005 11:18

Драйвер фискального регистратора

Сообщение Aravir » Вс июл 10, 2005 15:13

Драйвер фискального регистратора OLE-сервер при первом запуске захватывает порт (любое приложение, запускающее драйвер). Если другое приложение (любое количество) подключается, повторного захвата не требуется, организуется очередь и что-то типа того. Все это прекрасно работает в рамках одной пользовательской сессии. Но с Астером возникают проблемы, под другой пользовательской сессией OLE-сервер запускается заново, и естественно "порт занят". От имени системы как сервис OLE-сервер запустить нельзя. что делать ума не приложу :(

Аватара пользователя
AsterMaster
ИБИК
Сообщения: 2222
Зарегистрирован: Сб фев 05, 2005 0:48
Откуда: Москва
Контактная информация:

Сообщение AsterMaster » Вс июл 10, 2005 21:56

Можно попробовать установить версию АСТЕР 2.3.0429 PE (это полная версия, при запуске потребует установить диск). В этой версии изменена схема управления для named pipes; теперь программы, использующие эту технологию для установки связи между экземплярами, будут "видеть" друг друга при запуске на разных рабочих местах. Однако это, возможно, не решит проблему.

Предлагаю провести показательную проверку. В пределах одного рабочего места (для чистоты эксперимента АСТЕР можно не запускать) выполнить вход сразу под двумя различными пользователями (Windows XP допускает это); запустить в одном сеансе программу, использующую порт, затем перейти в другой сеанс (посредством быстрого переключения пользователей), и там выполнить проверку на занятость порта. Если порт окажется занят, значит программа изначально не расчитана на работу с терминальным сервисом, и проблему можно будет решить только внесением поправок непосредственно в код OLE-сервера или написав отдельную программу поддержки OLE-сервера в терминальной среде.

Есть предположение, что OLE-сервер по старинке использует локальное пространство имен для создания именованных объектов общего доступа, поэтому эти объекты не видны из другой сессии. Как следствие, проблема будет проявляться не только на рабочих местах АСТЕР, но и на рабочих местах Terminal Services и в параллельных сеансах Windows XP (о чем я и писал выше, это легко проверить).

Закрыто

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя