![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Вообщем пробую сделать приложение клиент-сервер в Delphi 2009 на сокетах, тестирую на локалхосте. Клиент с сервером соединяется, а при попытке послать текст (как клиент -> сервер так и наоборот) приходит пустая строка. Что не так?
|
|
#2
|
||||
|
||||
|
покажи процедуры отправки-получения текста
|
|
#3
|
|||
|
|||
|
Код:
procedure TForm1.ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
begin
if Socket.ReceiveText = '12' then ShowMessage('Test Command Arrived')
else
begin
ShowMessage('Arrived data: ' + Socket.ReceiveText);
ClientSocket1.Socket.SendText('Error!');
end;
end;Код:
procedure TForm1.Button1Click(Sender: TObject);
var
test: string;
begin
if ServerSocket1.Socket.Connected = true then
begin
test := '12';
ServerSocket1.Socket.Connections[0].SendText(test);
end
else
ShowMessage('No connection...');
end;На клиентсокет приходит строка '?'#0 Последний раз редактировалось UltraBloxX, 21.02.2010 в 19:17. |
|
#4
|
||||
|
||||
|
а где ServerSocket1.Active := True; и ClientSocket1.Open?
на клиентской стороне: Код:
ClientSocket1.Open;
ClientSocket1.Socket.SendText('test');
ClientSocket1.Close;на серверной: Код:
procedure TForm1.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket); begin ShowMessage(Socket.ReceiveText); end; Последний раз редактировалось Ultras, 21.02.2010 в 19:19. |
|
#5
|
|||
|
|||
|
Да, Open не было. Но сейчас оба сокета активны и открыты а строка всё равно не приходит...
|
|
#6
|
||||
|
||||
|
попробуй сделать вначале как я показал, будет работать или нет...
|