![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Mikel |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 882 Регистрация: 30.3.2002 Где: Саратов Репутация: 1 Всего: 2 |
Есть сеть. Пишу для неё программу. На каждом пк стоит прога-клиент и 1 сервер, клиенты спрятаны. Надо чтобы клиентские программы(сокеты) не выдавали ошибок, если они появятся и вели себя предельно тихо, а также пытались восстановить связь с сервером после её обрыва.
-------------------- ...so remember, it's better to burn out than to fade away |
|||
|
||||
| Song |
|
|||
![]() Sysman.ru ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1095 Регистрация: 2.6.2002 Репутация: 2 Всего: 4 |
TServerSocket/TClientSocket.onError
-------------------- Прежде чем сказать "Невозможно", подумай, прав ли ты |
|||
|
||||
| RAdmin |
|
|||
|
Unregistered |
Если память не подводит то кажись error.Free;
|
|||
|
||||
| Fantasist |
|
|||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: нет Всего: 41 |
Что это такое? По типу: win.ini: bugs=off Честно скажу, Делфийские сокеты это жуть - что-то нормальное на них написать тяжело. Однако пару tips: Tсокеты любят бросать исключения многие из которых отловить можно только в Application.OnException (это мы про асинхронные сокеты говорим); TClientSocket лучше убивать и создавать заново, Close/Open у меня не работали при обрыве связи; асинхронные сокеты (во всяком случае их Делфовая оболочка) неудобны и глюковаты, поэтому лучше использовать блокирующие, во всяком случае для сервера (клиент скорее всего и так и так нормально сработает). Блокирующие сокеты на Делфи(TServer/ClientSocket) реализованны довольно хреново, поэтому лучше написать свой сервер на API, чем я сейчас и занимаюсь. -------------------- Волны гасят ветер... |
|||
|
||||
| XpyDi |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 114 Регистрация: 25.11.2002 Где: USSR Репутация: нет Всего: 2 |
смотри WinSock
это не сильно сложнее TClientSocket и TSrverSocket |
|||
|
||||
| RA |
|
||||
![]() Брутальный буратина ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: 14 Всего: 115 |
это обработка события OnError Но там меня память подвела, спутал с другим компонентом. А тут надо так ErrorCode:=free; |
||||
|
|||||
| X-Vlad |
|
|||
|
Unregistered |
Что-бы не появлялись ошибки делаешь: в обработчике OnError errorcode:=0; Что-бы при дисконекте клиент снова конектился: В Обработчике On Disconect clientsocket1.open; |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |