我将rxrichedit的内容(图片和文字)转成tmemorystream;现在我想把这个数据发送到服务器端,并转发给指定客户端,然后再由客户端读出,应怎样编写代码? rxrichedit2.Lines.LoadFromStream(ms2);是将rxrichedit2清空后再写入消息,有没有办法保留原来的信息再添加tmemorystream信息呢?
转换的代码如下:
 ms2:=tmemorystream.Create;
 try
    rxrichedit3.Lines.SaveToStream(ms2);
  ms2.Position:=0;
    rxrichedit2.Lines.LoadFromStream(ms2);
 finally
    ms2.free;
  end;
我想知道将这个ms2保存成什么类型的数据并发送到服务器呢?

解决方案 »

  1.   

    找到点代码:
    测试通过
    合并:
    procedure CombineStream(SrcName: string; Src, Dst: TStream);
    var
      l: Integer;
    begin
      l := length(srcname);
      with dst do
      begin
        writebuffer(l, sizeof(integer));
        writebuffer(srcname[1], l);
        l := src.size;
        writebuffer(l, sizeof(integer));
        copyfrom(src);
      end;
    end;读取:
    procedure ReadAnyStream(Dst, Src: TStream; Name: string);
    var
      l: Integer;
      buffer: string;
    begin
      with src do
      begin
        seek(0,0);
        repeat
          readbuffer(l, sizeof(integer));
          setlength(buffer, l);
          readbuffer(buffer[1], l);
          readbuffer(l, sizeof(integer));
          if buffer=name then
          begin
            dst.copyfrom(src, l);
            break;
          end
          else seek(1, l);
        until position >= size;
      end;
    end;  
    分给我,不给没完
      

  2.   

    晕,我都要放弃这个贴了,没想到还有人答.........
    谢谢Devillyd(ξ赤 影ξ) ,虽然还没解决,不过已经知道方向了