| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Сети > Ошибка при отправке сообщения сервером клиенту |
| Автор: Dmitry05 23.11.2005, 19:38 |
| Создал Сервер и Клиент на основе компонентов ServerSocket/ClientSocket. Приотправке клиентом сообщения серверу ClientSocket.Socket.SendText(Edit2.Text); проблем нету, все отправляется... а вот при отправке сообщения сервером клиенту(или всем клиентам, точно не знаю) ServerSocket.Socket.SendText(Edit1.Text); возникает ошибка.. как правильно отправлять сообщения сервером? |
| Автор: DemoCode 26.11.2005, 13:35 | ||
|
| Автор: z-END 26.11.2005, 13:42 | ||
DemoCode это тут причем?
сервер служит для приема сообщений а клиент для отправки, ок? |
| Автор: DemoCode 26.11.2005, 13:45 | ||||
Но ведь, Dmitry05 пишет что
И у него не отправляется потому что не указано соединение |
| Автор: z-END 26.11.2005, 13:50 | ||
а я думаю потому-что клиент не открывает порт для обработки запросов, в отличие от сервера, и поэтому на клиент ничего отправить нельзя, пока там не будет установлен сервер |
| Автор: DemoCode 26.11.2005, 13:56 | ||
Разве нельзя отправить сообщение от сервера к клиенту? |
| Автор: Демо 26.11.2005, 14:10 | ||
Хм. Сервер может принимать и отправлять сообщения. DemoCode совершенно прав. Модель Borland подразумевает событийную модель работы с TClientSocket и TServerSocket. В случае обработки сообщения от клиента в обработчик будет передан клиентский сокет, которому и надо передавать текст. А список всех активных клиентских сокетов на сервере находится в массиве ServerSocket.Socket.Connections. |
| Автор: z-END 26.11.2005, 15:11 | ||
а клиент принимать? =)) |
| Автор: Демо 26.11.2005, 16:11 | ||
Естественно. И даже не могу представить, к чему может быть ирония. Вообще-то после установления соединения серверный и клиентский сокеты абсолютно равноправны. |
| Автор: Dmitry05 27.11.2005, 12:28 |
| Да... все получилось, спасибо )) |
| Автор: DemoCode 28.11.2005, 15:40 | ||
И принимать, и отправлять. Основная разница между клиентом и сервером в дельфи, это то, что клиент может установить одновременно только одно соединение с сервером, а сервер, одновременно может быть соединен с несколькими клиентами. |