Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.09.2010, 13:04   #1
AlexJan
 
Регистрация: 21.08.2010
Сообщений: 3
По умолчанию падает сервер((

подскажите пожалуйста,при передаче клиентом длинной строки(сообщения) серверу,сервер принимает строку(сообщение) записывает ее в файл и сам закрывается,что можно сделать что бы сервер сам не закрывался?
при передаче короткого сообщения все работает нормально...
код клиента:
procedure TForm1.Button1Click(Sender: TObject);
begin
ClientSocket1.Host:=ServerNameEdit. Text;
ClientSocket1.Active:=true;
end;
procedure TForm1.otpravitClick(Sender: TObject);
var
s,result:string;
begin
result:='фыфыфы|gfghfghfggggggggggg gggfffgggggqqqqqqqqqqqqqqqqqqgggghf hggggggggggggggggggggggggggg'+#13;
s:=result;
ClientSocket1.Socket.SendText(s);
end;

код сервера:
procedure TForm1.Button1Click(Sender: TObject);
begin
ServerSocket1.Active := True;
Memo1.Lines.Insert(0,'Сервер запущен!');
end;
procedure TForm1.ServerSocket1ClientRead(Send er: TObject;
Socket: TCustomWinSocket);
var
l:integer;
buf:PChar;
src: TFileStream;
begin
// {Записываем в l размер полученного блока
l := Socket.ReceiveLength;
// {Заказываем память для буфера
GetMem(buf,l+1);
// {Записываем в буфер полученный блок
Socket.ReceiveBuf(buf,l);
// {Открываем временный файл для записи
src:= TFileStream.Create('test.txt',fmOpe nReadWrite);
// {Ставим позицию в конец файла
src.Seek(0,soFromEnd);
// {Записываем буфер в файл
src.WriteBuffer(buf,l);
// {Закрываем файл
src.Free;
// {Освобождаем память
FreeMem(buf);
end;
AlexJan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
XP падает в синий экран! SKS Windows 8 17.03.2011 09:44
Падает компьютер. docbrain Компьютерное железо 53 19.09.2010 13:00
Файл падает после WriteFile --=SaNitinDG=- Общие вопросы C/C++ 6 15.02.2010 20:20
Падает вызов CreateProcess Lavisa Win Api 4 14.01.2010 16:08
Сервер падает Х) Slusar PHP 2 05.10.2009 22:47