Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.28;
Скачать: CL | DM;

Вниз

Вопрос по TServiceApplication (события OnCreate и OnStart).   Найти похожие ветки 

 
girich   (2004-03-04 09:38) [0]

Здравствуйте. Вопрос по TServiceApplication.
Моё сервис приложение содержит следующий компонент ADOConnection1. В событии OnStart я присваиваю ADOConnection1.ConnectionString соответствующую строку и выполняю метод ADOConnection1.Open.
Создаю сервис приложение - компилирую и инсталирую, все проходит нормально. Но при запуске приложение выдается сообщение об ошибке.
Когда я описываю эти деиствия в OnCreate службы то запуск проходит успешно. Объясните почему. Но так как мне желательно это делать в OnStart службы прошу подсказать что именно надо описывать в обработчике события OnCreate и OnStart.

И Ещё как организовать интерфейс для сервиса ведь в нем нельзя использовать формы? Если есть ссылки, исходники или знаете книгу по написанию сервиса на Delphi, подскажите.
Спасибо.


 
Семен Сорокин ©   (2004-03-04 09:43) [1]

girich   (04.03.04 09:38)  
CoInitilize сделал до создания connection?


 
Digitman ©   (2004-03-04 09:51) [2]

события TService.OnCreate/OnDestroy возбуждаются в осн.код.потоке сервис-приложения, все прочие (OnStart/OnStop/OnExecute)- в дополнительном

отсюда и пляши


> в нем нельзя использовать формы


можно. но, как и в обычном приложении, обращение к св-вам/методам формы должно происходить в осн.код.потоке


 
girich   (2004-03-04 10:11) [3]

>Семен Сорокин ©   (04.03.04 09:43) [1]
>CoInitilize сделал до создания connection?

Что такое CoInitilize?


 
Семен Сорокин ©   (2004-03-04 10:21) [4]

girich   (04.03.04 10:11) [3]
Что такое CoInitilize?

В Help"е же есть:

The CoInitialize function initializes the Component Object Model(COM) library. You must initialize the library before you can call its functions.

PS. ADO основан на COM.


 
girich   (2004-03-04 12:49) [5]

Семен Сорокин ©   (04.03.04 10:21) [4]

спасибо нашел в Help"е.
Извини может вопрос глупый но какую библиотеку подключить потому что при компиляции выдает сообщение:
[Error]  Undeclared identifier: "CoInitialize"


 
Digitman ©   (2004-03-04 12:56) [6]

ActiveX


 
girich   (2004-03-04 13:53) [7]

На счет connection - CoInitilize помогла. Спасибо.


 
Digitman ©   (2004-03-04 14:10) [8]


> girich   (04.03.04 13:53) [7]


не забудь выполнить в конце и CoUninitialize

т.е. если CoInitialize вызывается в OnStart(), то соотв-но CoUninitialize - в OnStop()



Страницы: 1 вся ветка

Текущий архив: 2004.03.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.043 c
3-1077868874
din
2004-02-27 11:01
2004.03.28
Sql запрос


4-1073733697
FireMan_Alexey
2004-01-10 14:21
2004.03.28
Hooks


3-1077881107
Алексей
2004-02-27 14:25
2004.03.28
BDE и MSSQL


7-1073758291
_наблюдатель_
2004-01-10 21:11
2004.03.28
MapFIle


7-1072748121
Equilebriya
2003-12-30 04:35
2004.03.28
Com порт