Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TMenuItem.Click -> any.dll\procedure


Страницы:   1 2 3 4 5 6 7 8

Dennis I. Komarov ©   (2009-05-22 10:38:00) 

Вопрос - не вопрос но:

Есть: некое приложение, интерфейс которого грузим из некой БД согласно правам пользователя, который запустил это приложение. В частности, возьмем ситуацию с TMainMenu. Согласно правам загрузилось дерево меню и подменюшек. Есть некая "ссылка" (int) на то, что должно выполнится при вызове соответствующего пункта. Процедура сего действия, а так же все интерфейсы и т.п. вынесены в библиотеку (dll).

Вопрос такой: Какая (а точнее, кто придумает лучшую) логика должна быть, чтобы связать конечный пункт менюшки с соответствующей процедурой в библиотеке, при том чтобы выполнялось условие: в приложении описана только логика а конкретные данные вынесены из него, т.е. при добавлении нового пункта (в БД) не изменялось само приложение, а только библиотека (или добавлялась новая)


clickmaker   (2009-05-28 11:46:00) [21]

> со своими правами, а УЮ библиотека что бы подключиться к
> СУБД должна на ней пройти авторизацию

авторизацию может проводить хост-экзе, а в библиотеку передавать уже готовый интерфейс сервера приложений.


Dennis I. Komarov   (2009-05-28 11:43:00) [22]

А вот есть интерфейс который успешно работал с MSSQL, ORACLE .... а тут надо внедрить его в систему, которая на битрив работает, а вот УЮ ну не знает что это и как его есть...

Уходим от темы опять???

Обсуждаем трехзвенку, в частности как передать инфу с TDataSet удаленному интерфейсу (не в "формате TDataSet")
MIDAS - первое что пришло - ковыряю его. Какие еще варианты, и отзывы о них...


Сергей М.   (2009-05-28 11:33:00) [23]


> не известно умеет ли УЮ вообще работать с этим СУБД
>


А тогда нашиша грузить такую УЮ-библиотеку, которая не понимает чего от нее хотят ?)


Dennis I. Komarov   (2009-05-28 11:24:00) [24]


> Зачем ?
>
> Что полезного УЮ-библиотека поимеет, если будет знать, что
> она загружена в АП процесса какого-то там заморского VCL-
> приложения MySuperPuperProga.exe ?)
>
> ТЗ на ходу меняешь-изобретаешь ?)


И ни капельки я не меняю ТЗ. Индивид - не бла-бла-бла.exe а физическое лицо которое запустило этот ...exe :) со своими правами, а УЮ библиотека что бы подключиться к СУБД должна на ней пройти авторизацию, а авторизироваться из каджого интефейса - это по меньшей мере не удобно для юзверя :) Да и еще не известно умеет ли УЮ вообще работать с этим СУБД


> Задействование MIDAS не требует обязательного использования
> CDS.

Про MIDAS я сейчас читаю, посмотрим...


Сергей М.   (2009-05-28 11:12:00) [25]


> MIDAS плоха тем, что клиента привязываем к TClientDataSet


Задействование MIDAS не требует обязательного использования CDS.


Сергей М.   (2009-05-28 11:08:00) [26]


> библиотека то должна знать что за индивид загрузил ее


Зачем ?

Что полезного УЮ-библиотека поимеет, если будет знать, что она загружена в АП процесса какого-то там заморского VCL-приложения MySuperPuperProga.exe ?)

ТЗ на ходу меняешь-изобретаешь ?)


Dennis I. Komarov   (2009-05-28 10:38:00) [27]

C моей точки зрения MIDAS плоха тем, что клиента привязываем к TClientDataSet


Dennis I. Komarov   (2009-05-28 10:35:00) [28]


> clickmaker ©   (28.05.09 10:05) [123]

Как раз ее сейчас штудирую. Интересны реальные подводные камни, надежность и пр. кто уже использовал технологию, поэтому вопрос был:
"каким образом Вы......" Ну еще добавить почему? Чем хорошо\плохо и т.д.


Dennis I. Komarov   (2009-05-28 10:19:00) [29]

:) Ну неуж-то правда не понятно, или специально? :)))

Но библиотека то должна знать что за индивид загрузил ее...
Тут два варианта:
1. передаем данные аунтификации (а так же всю информацию о СУБД) библиотеке и получаем двузвенную архитектуру.
2. Строим промежуточное звено "Сервер приложений" (МА)


clickmaker   (2009-05-28 10:05:00) [30]

> СУБД - Сервер приложений (это не которое загружает библиотеки)
> - GUI (интерфейс загруженный из библиотеки)

Сервер приложений - н-р, MIDAS или другая DCOM-подобная технология, которая предоставляет методы для вызова.
Клиент - импортирует библиотеку типов сервера и получает данные в виде TClientDataset в случае MIDAS или просто путем вызова методов сервера. Данные передавать и получать можно с помощью любых OLE-совместимых типов: variant, widestring etc


Сергей М.   (2009-05-28 09:37:00) [31]


> СУБД - Сервер приложений (это не которое загружает библиотеки)
> - GUI (интерфейс загруженный из библиотеки)
>


Что-то я не вижу никакой связи между "кислым", "теплым" и "зеленым")

Если твое хост-приложение знать ничего не знает и знать не желает о происходящем внутри библиотеки, то какая ему разница, как эта самая библиотека получит данные с какого-то там сервера, дабы, например, изобразить эти данные в своем же собственномGUI ?


Dennis I. Komarov   (2009-05-28 08:58:00) [32]


> Т.е. твое хост-приложение должно передавать данные рядом
> находящейся библиотеке с использованием интернет-протокола
> ?
>
> Это ж надо до такого додуматься) ..

Да нет конечно :) И как такое в голову лезет :) Наверное утро :)...

СУБД - Сервер приложений (это не которое загружает библиотеки) - GUI (интерфейс загруженный из библиотеки)


Сергей М.   (2009-05-28 08:25:00) [33]


> над TCP/IP .. и передать  информацию .. клиенту


Т.е. твое хост-приложение должно передавать данные рядомнаходящейся библиотеке с использованием интернет-протокола ?

Это ж надо до такого додуматься) ..


Сергей М.   (2009-05-28 08:14:00) [34]


> не-е... клиент библиотека


А какая разница, где будет размещен код клиента ?
Абсолютно никакой)


Dennis I. Komarov_   (2009-05-27 21:18:00) [35]


> Сергей М. ©   (27.05.09 20:57) [117]

не-е... клиент библиотека, а обрабатывать инфу через http... ну в принципе реально конечно, но думаю не самое то :)))))


Сергей М.   (2009-05-27 20:57:00) [36]


> Нужно придумать протокол обмена (скорее всего над TCP/IP)
> и передать информацию (из DataSet) клиенту


Все уже придумано до и за нас - http называется)
А браузер - тот самый "тонкий клиент")


Dennis I. Komarov_   (2009-05-27 20:22:00) [37]


> И что же библиотека будет делать с тем, о чем она понятия
> не имеет ?

А я не говорил, что она получит TDataSet :)

Нужно придумать протокол обмена (скорее всего над TCP/IP) и передать информацию (из DataSet) клиенту. А как там с ней будут поступать, нас уже не интериует, как впрочем и функционал этой библиотеки. Вот интересуют мысли по этому поводу...


Сергей М.   (2009-05-27 20:03:00) [38]


> передача данных TDataSet с сервера, которая в свою очередь,
>  понятия не имеет о существовании некой TDataSet


И что же библиотека будет делать с тем, о чем она понятия не имеет ?


Dennis I. Komarov   (2009-05-27 17:33:00) [39]


> ... передача данных TDataSet с сервера...

...от сервера приложений библиотеке, которая...


Dennis I. Komarov   (2009-05-27 17:17:00) [40]

Чтобы не терялась мысль задам тут еще вопрос:

При вышеперечисленных условиях каким образом Вы реализовали "тонкий клиент" к СУБД. из библиотеки?

Больше всего интересует передача данных TDataSet с сервера, которая в свою очередь, понятия не имеет о существовании некой TDataSet


Страницы:   1 2 3 4 5 6 7 8

Наверх

Титульная страница Поиск, карта сайта Написать письмо