Показать сообщение отдельно
  #4  
Старый 23.01.2012, 15:56
xNeKiToSx xNeKiToSx вне форума
Прохожий
 
Регистрация: 23.01.2012
Сообщения: 10
Репутация: 10
По умолчанию

case k of
01: memo1.Lines.Add(str);
02: begin
Len:=Socket.ReceiveLength;
Buffer:=GetMemory(Len);
try
Len:=Socket.ReceiveBuf(Buffer^, Len);
WriteFile(FPipeWrite, Buffer^, Len, dummy, nil);
finally
FreeMemory(Buffer);
end;
while True do
begin
Len:=GetFileSize(FPipeRead, nil);
if Len=0 then Break;
if FDataLen=0 then
begin
if Len<SizeOf(DWORD) then Break;
ReadFile(FPipeRead, FDataLen, SizeOf(DWORD), dummy, nil);
FDataRead:=0;
FFileStream:=TFileStream.Create(ExtractFileDir(App lication.ExeName)+'\1.jpg', fmCreate);
end else
begin
Buffer:=GetMemory(Len);
try
ReadFile(FPipeRead, Buffer^, Len, dummy, nil);
FFileStream.Write(Buffer^, Len);
Inc(FDataRead, Len);
if FDataRead=FDataLen then
begin
FFileStream.Free;
FDataLen:=0;
Memo1.Lines.Add('Ok');
end;
finally
FreeMemory(Buffer);
end;
end;
end;
end;
end;


вот код. сначало мне приходит текст с требуемой операцией. работа с текстом идет нормально а вот файл принять не могу. вылазиет куча сообщений о том что буква это не интеджи. как исправить?(((
Ответить с цитированием