![]() |
ЛЮДИ ПОМОГИТЕ В Delphi
:( Такая проблема, пытаюсь сам сделать на Delphi свой сервер по принцыву тоя на основе Socket-ов и функией SendText чтобы посылать команы серверу...
Но вот проблема вылитает ошибка соединения и ошибка передачи или приёма команды. Чедалеть подскажите... |
Постарайся подробнее объяснить... Ip было прописано или надо вводить в поле? Вообще кинь код.
И я не понял, он не соединяется или не отправляет команды? Или ты не знаешь что именно? Вообщем у меня такая же трабла была... Я где то нашел хороший FAQ на тему создания соединений в delphi... Щас если сайт вспомню напишу. Там ещё примеров куча бы ла |
Дай сорс посомтрю помогу чем нить думаю.
Тока не понял ты посылаешь команды серверы чтоли и он при определнной команде должен выполнять что нибудь да? |
Через какой порт работаешь?
|
Пишу отельно сервак, порт оптономный выбрал сам port=2581 и после запускю сервер, он работает, на соединение отвечает и дает произвести connect, но как только отправляю ему какую либо команду вот что получается:
--- От сервера : Asinchronous Socket Error 10053. --- -- От клиента: Windows Soxket Error :Запрос на отправку или получение данных ( When sending on a dategrem socket using a sendto call) no addres wes suppied (10057), no API 'recv'. --- Вот такая загогулина... |
Цитата:
Что означает, как я понял, что соединение было сброшено ещё до установки, например неправильно отреагировал сервер на фрейм SYN, или чтото подобное. Скорее всего - у тебя это происходит из-за того что супер классные делфи-кодеры из компании Borland в своих классах Socket намутили чтото с асинхронными неблокирующими сокетами, возможно не использована select(). Используй обычный интерфейс WinSocket и у тебя все будет нормально (ну насчет в делфи незнаю, но по нормальному все должно быть ок)) А вообще, мастерите на делфи! У вас тоже такие же офигенные программы будут) хаха |
Ну вот простейший пример:
...Form1.Create... begin ServerSocket1.port:=...; ServerSocket1.Action:=true; end; ...ServerSocket1.ClientRead... begin if serverSocket1.Socket.ReciveText='...' then ...; Что в простейшем сервере нетак????? И слиент к серваку тоже простейший: ...form1.Button1.click... begin ClientSocket1.host... clientSocket1.addres... ClientSocket1.Action:=treu; end; ...form1.Button2.click... ClisentSocket1.Socket.SandText:='...'; и что тут нетак??? |
Может у тебя фаер порт закрывает?
|
Нет я пробовал его просто намертво отрубать... и всеравно нефига, что телать незна.
НО ФАКТ НЕЧЕГО НЕРАБОТАЕТ!! |
Запусти обе проги (клиент и сервер) на своем компе и укажи Ip 127.0.0.1 и проверь. Если будет та же ошибка, значит у тебя че-то с кодом
|
| Время: 21:55 |