![]() |
|
|
![]()
|
|
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
При старте сервиса происходит подключение к базе данных MySQL.
Исключение возникает на этой строке в эвенте TService.OnStart:
В виде десктопного приложения код отрабатывает нормально. Думаю что бок в ADO в работе из под сервиса. Собственно вопрос как это побороть? Буду признателен за конструктивные ответы. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
Может нужно службе дать разрешение на взаимодействие с рабочим столом?
|
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
1. Зачем? Подключение к базе через порт. 2. Данная функция в висте и семерке не имеет никакого смысла, тк служба все равно остается на своей станции/столе. Думаю что не происходит инициализация чего-то того что автоматически инициализируется для десктопных приложений... вот только чего??? Еще как вариант это контекст выполнения... возможно в контексте TService.OnStart нельзя вызывать функции ADO... но тогда где их вызывать? Это сообщение отредактировал(а) drkot - 13.1.2011, 15:40 -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
Ммммда..... Похоже никто не сталкивался с подобными вещами... а жаль...
-------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 9 Всего: 51 |
У меня была похожая проблема, вызвана была тем, что мой сервис стартовал раньше чем сервисы, с помощью которых осуществлялось подключение. Лечилось указанием зависимостей от нужных сервисов.
|
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
Возможно, но проблема сохраняется и при ручном старте, в это время уже все запущено. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| pseud |
|
||||
![]() Экспёрт Тыдыщ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1175 Регистрация: 18.5.2007 Где: Минск, Беларусь Репутация: 16 Всего: 40 |
Но ведь проверить можно. Ничего не отвалится. Думаю, что при попытке коннекта пытается вывалиться окно запроса имени/пароля. Даже если они вбиты умалчиваемые, окно возможно все-равно пытается проинициализироваться. Добавлено через 1 минуту и 41 секунду какое исключение? Добавлено через 2 минуты и 59 секунд
а в ХРшке проверял свой сервис? -------------------- Испытание чужого терпения можно считать успешным, если оно лопнуло... |
||||
|
|||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
Мдддааа... Почему на более ли менее серьезный вопрос предлагаются ответы уровня чайника? А Вы попробуйте TADOConnection.Open сделать в сервисе и увидите. А может у Вас все пройдет отлично и тогда я стерплю любую критику в свою сторону ;) -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| pseud |
|
|||
![]() Экспёрт Тыдыщ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1175 Регистрация: 18.5.2007 Где: Минск, Беларусь Репутация: 16 Всего: 40 |
drkot, тема стартовала 13.01.2011.
15.03.2011 - остается проблема или она решена и вы можете выложить лечение для жаждущих? Сервисы писал. С TADOConnection никогда не работал -------------------- Испытание чужого терпения можно считать успешным, если оно лопнуло... |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
Проблема решена в лоб, отказом от ADO, что тянет за собой неудобства (в частности при многопоточной работе)
Поэтому проблема ADO + Service остается. наверно не совсем корректен был... реально не происходит старт сервиса (если не ошибаюсь). возможно таймаут выходит. Само по себе соединение с базой не должно превышать таймаут запуска сервиса. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
| drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
Проблема решена....
Собственно все просто нужно только понять.... Итог: не стоит пользоваться мастером настройки ADOConnection для подключения ODBC драйвера если процесс планируется запускать под системной учетной записью. Как-то так... Заполняйте строку подключения вручную и будет счастье. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |