Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];

Вниз

БД+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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 1.643 c
1-1098275631
СержК
2004-10-20 16:33
2004.11.07
Как отследить из приложения - что на машине запущен Excel?


1-1098740749
Vov
2004-10-26 01:45
2004.11.07
Даты


1-1098340163
AntonSh
2004-10-21 10:29
2004.11.07
Строка


4-1096683717
TitanDesign
2004-10-02 06:21
2004.11.07
Как программно определить установлен Flash


1-1097385449
focor
2004-10-10 09:17
2004.11.07
mousewheel





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский