anchor.diff:    lvSendBuffer:array of byte;  
   begin
     lvOwner := TDiocpExTcpServer(Owner);
  +{$IFDEF StartEndCut}
  +      // ȥͷβ
     lvStartData := @lvOwner.FStartData[0];
     lvStartDataLen := lvOwner.FStartDataLen;
     lvEndData := @lvOwner.FEndData[0];
     lvEndDataLen := lvOwner.FEndDataLen;
  -
     j := lvStartDataLen + pvDataLen + lvEndDataLen;
  +{$ELSE}
  +  lvStartDataLen:=0;
  +  lvEndDataLen:=0;
  +  j := pvDataLen;
  +{$ENDIF}
  +
  +
  +
     SetLength(lvSendBuffer, j);
     if lvStartDataLen > 0 then
     begin
  
positive.code:     inc(lvPtr);
      if r = 1 then
      begin
        // ȥͷβ
        OnDataAction(@FCacheBuffer.FRawBytes[lvStartDataLen], FCacheBuffer.FRawLength - lvStartDataLen - lvEndDataLen);
        ResetPacakge(@FCacheBuffer);
      end;
  
  
negative.code: 
  procedure TDiocpStringContext.WriteAnsiString(pvData:AnsiString);
  begin
    WriteData(PAnsiChar(pvData), Length(pvData));
  end;
  
  end.
  