TADOQuery.Create(nil) не работает в dll

NTFS 07.06.2004 - 14:18 | Такая вот ситуация. В обычном проекте такой код работает. Т.е., строка вида TADOQuery.Create(nil) создает новый объект. В dll - вылетает, да еще и сервер падает :-) (пишу UDF) Компилятор Delphi 5.
VaS 1 - 07.06.2004 - 17:09 | CoInitialize()
siapk 2 - 07.06.2004 - 18:47 | и не будет работать.... надо явно передать вместо Nil .... Application.Handle и все заработает ....
NTFS 3 - 07.06.2004 - 19:11 | siapk - никак. В качестве параметра надо передавать компонент. А не хэндл. VaS - не помогло. Те же глюки. Причем теперь и в Application, а не только в dll.
NTFS 4 - 07.06.2004 - 19:45 | VaS - все, порядок. Спасибо большое. Конечно, дело в CoInitialize(nil) ; Просто я вызывал CoInitialize(nil) ; в одном потоке - а TADOQuery.Create(nil) в другом. Естественно, ничего не работало. Если интересно - делаю UDF, чтобы InterBase видел таблицы MSAccess как свои. Надо два проекта согласовать - один на IB, другой на Access. Вот и мучаюсь с ADO.
VaS 5 - 07.06.2004 - 21:20 | "Согласовать" - это как? Если я правильно понял задачу, то мне решение видется в виде двух различных СОМ-серверов (IB, Access), реализующих некий интерфейс работы с БД. Работать с СOM прямо из UDF я бы не рискнул :)
NTFS 6 - 08.06.2004 - 10:11 | А я вот рискнул :-) Реализован набор UDF-функций для открытия запроса к mdb, работы с ним и закрытия. Каждое новое подключение получает свой уникальный номер, так что никаких проблем с несколькими подключениями. Пока что все работает. Завтра буду тестировать на сервере. Может, выложить на общее тестирование? Наверное, стоит.
VaS 7 - 08.06.2004 - 12:44 | Лучше сделай приложение, осуществляющее стресс-тестирование. Погоняй сутки-двое, пару сотен тысяч запросов с конторолем утечек памяти.
NTFS 8 - 08.06.2004 - 17:09 | Стресс-тестирование - это я понимаю. А как контролировать утечку памяти?
VaS 9 - 09.06.2004 - 10:43 | TurboPower CodeWatch, AQTime. По идее можно будет подключиться к процессу сервера, хотя не уверен.

>>