Показать сообщение отдельно
  #1  
Старый 22.05.2009, 05:22
AIMor AIMor вне форума
Прохожий
 
Регистрация: 13.03.2009
Сообщения: 31
Репутация: 10
По умолчанию Application и Service Application - в чем разница???

Приветствую всех, товарищи программисты!

Существует ряд приложений визуализация для которых не нужна, зато есть необходимость, чтобы они начинали работать при загрузке Windows (допустим XP либо 2003). Для реализации таких задач прекрасно подходят проекты типа Service Application, написанные на Delphi.

Но если бы все было так харошо, как хочется.
При реализации проектов типа Service Application я столкнулся с такой особенностью - тот код, который был написан в проекте типа Application и с успехом работал отказывается работать в проекте типа Service Application. Ниже приведу два примера.

Для реализации связи с DDE-сервером применяю DdeClientConv.

Код:
DdeClientConv1.SetLink('RSLinx','T_DD');

В проекте типа Application связь с топиком T_DD устанавливается успешно, а вот в проекте типа Service Application после выполнения этой строки кода команда GetLastError возвращает номер ошибки 2 (The system cannot find the file specified). Если свойство службы Interactive установить True, то команда GetLastError возвращает номер ошибки 203 (The system could not find the environment option that was entered).

Для реализации связи с OPC-сервером служит следующая команда:

Код:
OPC_Server:=CreateComObject(ProgIDToClassID('RSLinx OPC Server')) As IOPCServer;

В проекте типа Application связь с OPC-сервером устанавливается успешно, а вот в проекте типа Service Application запуск службы прерывается при выполнении этой команды.
Ответить с цитированием