Показать сообщение отдельно
Старый 26.06.2003, 11:40   #17  
Grizzly is offline
Grizzly
Участник
 
85 / 10 (1) +
Регистрация: 30.01.2003
Адрес: Омск
Цитата:
Изначально опубликовано Lexi
А Вы не "ведите", вы говорите как есть.
Хорошо.

Напомню задачу. Из внешнего приложения (из командной строки) нужно запустить NA, залогиниться в БД, открыть фирму, выполнить некоторый объект и по возможности закрыть NA.

Когда вы заявили, что можете сделать это, использовав COM-технологию, меня это заинтересовало. Это противоречит моим представлениям о системе. Однако я допускаю, что могу многого не знать, т.к. активно программированием уже давно не занимаюсь.

А знаю я следующее:

1. Клиент NA не может выступать в качестве COM-сервера, а только так вы можете инициализировать его из внешнего приложения. Если это не так, то укажите, пожалуйста, через какой COM-интерфейс вы это собираетесь делать.

2. В поставке с NA действительно идут несколько COM-объектов. Однако, назначение их не в том, чтобы дать возможность доступа к функциям NA из других приложений, а в том, чтобы дать возможность самому клиенту NA получить доступ к внешним функциям (winsocket, tapi и т.д.), потому что, например, нет иного способа в NA вызвать функцию из динамически связываемой библиотеки. И по отношению к этим COM-объектам клиент NA выступает COM-клиентом.

Цитата:
Клиент NA (с интегрированным Socket Server-ом) в данном случае является сервером по отношению к программе (Socket client) запускающий требуемый датапорт.
3. Никакого интегрированного в клиент NA Socket Server не существует. Клиент NA может выступать в качестве Socket Server-а (см. п. 2), однако, для этого сначала нужно:
-запустить NA;
-залогиниться в БД;
-запустить на выполнение объект, который создает набор Automation-переменных, через которые реализуется доступ к winsocket, открывает нужный порт и «слушает» его.

Т.е. вы опять вернулись к исходной задаче.

Цитата:
У данного варианта есть ряд преимуществ перед эмуляцией кнопок:
Несомненно. С этим никто спорить не будет. Однако, есть один большой недостаток – он из другой сказки.

P.S. Я буду рад если вы аргументировано опровергнете мое представление о NA, потому что считаю, что если бы ситуация была такой, какой описали ее вы, то всем от этого стало бы только лучше.