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

Вниз

БД+DLL   Найти похожие ветки 

 
Igor_   (2004-10-09 02:08) [0]

Проблема вот в чём. У меня имеется программа в ДатаМодуле которой есть компонент TZConnection, через который идёт связь с БД mysql. Также имеется ДЛЛка в которой находятся некоторые формы, которые в свою очередь тоже должны работать с БД. Мне нужно чтобы подключение к БД данных было в единственном экземпляре, т.е. к компоненту (например TZQuery)находящемуся в ДЛЛ мне нужно подключить TZConnection, который находится в ДатаМодуле программы. Возможно ли это, если возможно то каким образом?


 
Sergey_Masloff   (2004-10-09 21:36) [1]

1)Использовать пакеты вместо DLL
2) Компилировать библиотеку и основное приложение с рантайм пакетами
3) Некоторые компоненты позволяют ШТАТНО передать хендл коннекшна в DLL и спокойно с ним работать. Читать документацию по компонентам.


 
Sergey_Masloff   (2004-10-09 21:40) [2]

А вообще баловство это. Очнь мало ситуаций в которой ЭТО (работа с коннекшном приложения из библиотеки) ДЕЙСТВИТЕЛЬНО нужно.


 
Ольга   (2004-10-10 09:59) [3]

Есть еще вариант:
DLL и клиентское приложение для связи с SQL-сервером могут использовать один UDL-файл.


 
Sergey_Masloff   (2004-10-10 10:36) [4]

Ольга   (10.10.04 09:59) [3]
>Есть еще вариант:
>DLL и клиентское приложение для связи с SQL-сервером могут >использовать один UDL-файл.
А смысл? Это ж все равно разные соединения с базой. Тогда уж не важно UDL там файл или из реестра параметры соединений читаются.


 
Ольга   (2004-10-10 10:52) [5]

[4]
Конечно, соединений с БД будет 2 (я так поняла, что автор вопроса погорячился с 1 соединением, и ему просто нужна единая строка коннекции)

> Тогда уж не важно UDL там файл или из реестра параметры соединений читаются.

С этим могу поспорить, т.к. DLL и программа могут находится на разных компьютерах.


 
Sergey_Masloff   (2004-10-10 11:50) [6]

Ольга   (10.10.04 10:52) [5]
>т.к. DLL и программа могут находится на разных компьютерах.
На этом спор можно заканчивать ;-)
.dll находится в адресном пространстве вызывающего приложения. Какие другие компьютеры?

Даже если имеется в виду COM-сервер в виде .dll то все равно делать сетевой маршалинг для вызова ФОРМ (это явно указывалось в исходном посте) это, как минимум, экстравагантно ;-))


 
Igor_   (2004-10-10 18:41) [7]

Всем спасибо за помощь, будем разбтраться с пакетами



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

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

Наверх




Память: 0.48 MB
Время: 0.04 c
1-1098284494
-=SS=-
2004-10-20 19:01
2004.11.07
Поиск в TreeView


14-1097828372
stone
2004-10-15 12:19
2004.11.07
Пятница: Альтернативные задачки


3-1097173534
coler
2004-10-07 22:25
2004.11.07
По умолчанию в TTable можно использовать повторяющиеся записи


14-1097245476
Поручик
2004-10-08 18:24
2004.11.07
Игры ZX Spectrum


3-1097045637
Aser
2004-10-06 10:53
2004.11.07
Таблица не отображается и переключениях TabSheets