关于流文件的读取有关问题

关于流文件的读取问题。
  tp2[xx]:=TMemoryStream.Create;
    tp2[xx].LoadFromFile(zwj);
   tp2[xx].Position:=0;
   tp2[xx].ReadBuffer(num,SizeOf(num));
  ms:=TMemoryStream.Create;
  ms.SetSize(strtoint(ss));
  ds:= TDecompressionStream.Create(tp2[xx]);
    ds.seek(9996, soBeginning);
  ds.Read(ms.Memory^, strtoint(ss));
  ms.SaveToFile('c:\1.jpg');
  ds.Free;
  ms.Free;
  tp2[xx].Free;
 //9996是第一个文件的字节。现在的读取第二个文件,知道文件字节大小了。这样设置之后读取出来的图片还是出错。不知道怎么解决。请大神帮忙解决下。
------解决方案--------------------
  ds.Read(ms.Memory^, strtoint(ss));   ds读入数据到ms用read?还是应该write?
------解决方案--------------------
确认是要用 TDecompressionStream 吗