Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
ВнизСервис и ADO Найти похожие ветки
← →
Knight © (2010-04-01 14:47) [0]Почему-то в сервисе сбоит подключение к базе.
Если размещаю ADOConnection на форме TService и делаю DRSU_Connection.Open то соединения не происходит, если сделать ДатаМодуль и делаю там процедуру, тоже не работает, а если в DataModuleCreate(), то работает... может, что-то не то делаю?
← →
turbouser © (2010-04-01 14:50) [1]DRSU_Connection.LoginPrompt=true?
← →
Knight © (2010-04-01 14:52) [2]False
← →
Knight © (2010-04-01 14:53) [3]сервер, база, логин-пароль прописаны в ConnectionString ... в общем всё как всегда... но всегда работало, а в сервисе упёрлось.
← →
Медвежонок Пятачок © (2010-04-01 14:54) [4]может, что-то не то делаю?
логировать надо ошибки в неинтерактивных приложениях.
тогда будет видно, что в нитке сервиса не был произведен вызов CoInitialize
← →
Knight © (2010-04-01 14:55) [5]В событиях винды засветилось...
"В записи события содержится следующая информация: Не был произведен вызов CoInitialize."
← →
Медвежонок Пятачок © (2010-04-01 14:56) [6]вот видишь как все просто
← →
Knight © (2010-04-01 14:56) [7]А что с этим делать?
← →
Медвежонок Пятачок © (2010-04-01 14:57) [8]ну как бы по-русски же написано.
"не был произведен вызов"
произведи вызов
← →
Knight © (2010-04-01 15:00) [9]Это я понял, а почему именно в сервисе? Никогда такого не вызывал.. и прекрасно работает.
← →
Knight © (2010-04-01 15:01) [10]Или в TApplication это зашито, а в TServiceApplication нет?
← →
Медвежонок Пятачок © (2010-04-01 15:02) [11]не только в сервисе.
в гуи тоже надо.
и оно там вызывается. в одном из модулей который включен в юзез гуи проекта по дефолту
← →
KSergey © (2010-04-01 15:15) [12]> Медвежонок Пятачок © (01.04.10 14:54) [4]
> не был произведен вызов CoInitialize
Супертелепат!
← →
KSergey © (2010-04-01 15:17) [13]> Knight © (01.04.10 15:00) [9]
> Это я понял, а почему именно в сервисе? Никогда такого не вызывал.. и прекрасно работает.
потому как многопоточек не писал с ADO. Писал бы - сразу бы знал :)
А в сервисе для основного действа - как раз доп. поток запускается.
← →
12 © (2010-04-01 15:20) [14]стандартная трабла, в общем-то
консольки тоже так брыкаются
← →
tesseract © (2010-04-01 15:29) [15]Хорошо, что пока на ADO не пишут драйвера.......
← →
Knight © (2010-04-01 15:29) [16]Правильно будет прописать CoInitialize(nil) в ServiceStart(), а CoUninitialize в ServiceStop()?
← →
turbouser © (2010-04-01 15:33) [17]
> Knight © (01.04.10 15:29) [16]
лучше в Create и Destroy
← →
Медвежонок Пятачок © (2010-04-01 15:37) [18]не лучше.
это разные нитки
← →
Knight © (2010-04-01 15:37) [19]Спасибо всем.
Всё заработало.
← →
Медвежонок Пятачок © (2010-04-01 15:38) [20]Киэйт выполняется не в той нитке, в которой будет работать адо коннекшен.
а потому в криэйт вызывать бесполезно.
← →
Knight © (2010-04-01 15:39) [21]
> Медвежонок Пятачок
Да в ServiceStart() и ServiceStop() работает, а в Create-Destroy вываливается.
← →
Anatoly Podgoretsky © (2010-04-01 16:27) [22]> Knight (01.04.2010 15:29:16) [16]
Лучше в начале Execute
← →
Knight © (2010-04-01 16:41) [23]
> Anatoly Podgoretsky
Я сам никаких потоков не создаю... оно само :)
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.061 c