Текущий архив: 2003.01.20;
Скачать: CL | DM;
Вниз
ClientSocketRead Найти похожие ветки
← →
Dmitriy Polskoy © (2002-11-20 17:58) [0]Есть ли возможность помещения данного обработчика в отдельный поток, а то при приеме большого файла клиент подвисает?
← →
Digitman © (2002-11-21 08:21) [1]есть такая возможность
впрочем, никто не заставляет тебя в OnClientRead считывать сразу весь поток (да и некорректно это). Можно считывать вх.поток поблочно, один блок небольшого размера за время обработки одного события OnRead.
← →
Dmitriy Polskoy © (2002-11-21 14:03) [2]А он так и считывается
procedure TClientForm.ClientSocket1Read(Sender: TObject;
Socket: TCustomWinSocket);
var
Str: string;
Sp: string;
label Receive;
begin
Str := Socket.ReceiveText;
Sp := Copy(Str, 1, 4);
if Sp <> "file" then goto Receive;
if Sp = "file" then
begin
Delete(Str, 1, 5);
FileName := Copy(Str, 1, Pos("#", Str) -1);
Delete(Str, 1, Length(FileName) +1);
Size := StrToInt(Copy(Str, 1, Pos("#", Str) -1));
StatusBar.Panels.Items[0].Text := "
← →
Polevi © (2002-11-21 14:06) [3]ох..
← →
Digitman © (2002-11-21 14:15) [4]еще как - оххххх(....
← →
Dmitriy Polskoy © (2002-11-21 14:25) [5]Да охать и я умею. Вы бы лучше помогли разобраться. Насколько я понимаю, надо ограничивать длинну входных данных и работать только с ними. Или опять мимо?
← →
Digitman © (2002-11-21 14:32) [6]Ну почему SendText()/ReceiveText()-то ?
Что, других методов нет ?
Ты у кого это содрал ? Зачем ты себе геморрой зарабатываешь, повторяя (практически - один-в-один !) чужие ошибки ?
Ну ведь каждый же божий день здесь разжевываем, почему это плохо и, если не так уж и плохо, то - конкретно в каких случаях ....
← →
Digitman © (2002-11-21 14:38) [7]Ну вот же, почти рядом ветка идет
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1037796770&n=4
Человек там "бьется лбом" ну практически в те же грабли !
Ну почему не прочитать-то да не вникнуть ?
Или вы друг у друга код сдираете ? Уж больно похоже)
Страницы: 1 вся ветка
Текущий архив: 2003.01.20;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.013 c