![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обратная связь в DataSnap [D5, D6]
Сергей Бушин © (2002-12-29 05:48:00)Уважаемые мастера, с Наступающим ВСЕХ!!!
Каким образом осуществить сабж? Т.е. как проинформаировать клиента о тех или иных событиях на сервере?
И еще вопрос в тему-возможно ли отключить клиента программно на сервере?
Nebula (2003-01-20 11:19:00) [1]Если все в локальной сети то легко можно обойтись механизмом событий существующим в COM+. На серваке регистрируется интерфейс события, а затем каждый из клиентов подписывается на это событие и из DataSnap сервера выстреливать эти события. Если через инет, то надо настраивать дополнительные службы которые осуществляли бы маршалинг вызовов. Если мне память не изменяет то в упомятуной книге "Delphi 6 и технология COM" кое-что про это есть.
Callback придется реализовывать самому - это однозначно.
Polevi (2003-01-04 12:12:00) [2]только этот способ не имеет никакого отношения к DataSnap
Sergeyy (2003-01-04 11:44:00) [3]Есть совершенно чудесная книга "Дельфи 6 и технология COM". Там именно этот вопрос очень хорошо разобран. Если нужно, могу прислать пример оттудова (там именно так, как BorisUK рассказал).
Polevi (2002-12-29 18:01:00) [4]для реализации Callback-механизма при работе через TSocketConnection надо переделывать Borland Socket Server
BorisUK (2002-12-29 07:55:00) [5]Отключить можно...
Для этого надо на сервере копить указатели на сознанные экземпляры в какойнить список, ну а потом вызавать разрушение именно того , который выберем.... Чтото типа того как если сервер ваабще закрыть, то уничтожатся все, ну а тут по одному уничтожать...
Вот только не рекомендуют делать это ибо ... (тут Остапа понесло..)
Про сабж - делается это... как то, но пока кроме того что нужно ставить Generate Event support code = true , но именно в DataSnap
этот влаг почемуто не дают установить...
Есть возможность попробовать установить свойство TSocketConnection.SupportCallback=true,
но что делать дальше никто не знает... Сам давно ищу.
Единственный пока известный мне способ это создать пару ClientSocket и ServerSocket и уже общятся через них сколько хочешь...
Тоесть документации по этому делу навалом..
Ну а про озученную Бормандом возможность реализации нотификаций от сервера до клиентов пока только знают наверно только в самом борманде :) По крайней мере именно для DataSnap...
Накопаешь чего пиши... тема жирная.