procedure LoginSocketDocEnd(Sender: TObject);
var p: PChar;
   s: string;
begin
 p := TMemoryStream(LoginSocket.RcvdStream).Memory;
 s:= Copy(StrPas(p), 1, LoginSocket.RcvdStream.Size);

 LoginSocket.RcvdStream.Destroy;
 LoginSocket.RcvdStream := nil;

or if you need stringlists:

procedure ServiceSocketDocEnd(Sender: TObject);
var tt: TStringList;
begin
 tt:= TStringList.Create;

 ServiceSocket.RcvdStream.WriteBuffer(#0' ', 1);
 ServiceSocket.RcvdStream.Position := 0;
 tt.LoadFromStream(ServiceSocket.RcvdStream);
 ServiceSocket.RcvdStream.Destroy;
 ServiceSocket.RcvdStream := nil;


> ----- Original Message ----- 
> From: "Gilles" <[EMAIL PROTECTED]>
> To: <twsocket@elists.org>
> Sent: Wednesday, August 13, 2008 7:31 AM
> Subject: [twsocket] Converting memorystream to string?
>
>
>> Hello
>>
>> The HTTPCLI object uses a memorystream, but I need to turn this into
>> a string so that I can pass the web page to a TPerlRegEx object to
>> extract some information.
>>
>> I'm a newbie, and can't find why Delphi2007 complains about incompatible 
>> type:
>>
>> =========
>> function StreamToText(oStream : TMemoryStream ): String;
>> var
>>           oSL : TStringlist;
>> begin
>>           oSL := TStringlist.Create;
>>           oSL.LoadFromStream(oStream);
>>
>>           result := oSL.Text;
>>
>>           oSL.Free;
>> end;
>>
>> procedure TForm1.Button1Click(Sender: TObject);
>> var
>>   WebPage : String;
>> begin
>>   With HttpCli1 do begin
>>     URL            := 'www.acme.com';
>>     RcvdStream := TMemoryStream.Create;
>>     try
>>       Get;
>>     except
>>       ShowMessage('Oops');
>>       RcvdStream.Free;
>>       Exit;
>>     end;
>>
>>     RcvdStream.Seek(0,0);
>>     //Memo1.Lines.LoadFromStream(RcvdStream);
>>
>>     //E2010 Incompatible types: 'TMemoryStream' and 'TStream'
>>     WebPage := StreamToText(RcvdStream);
>>     RcvdStream.Free;
>>   end;
>> =========
>>
>> Any idea what is wrong?
>>
>> Thank you for any tip.
>>
>> -- 
>> To unsubscribe or change your settings for TWSocket mailing list
>> please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
>> Visit our website at http://www.overbyte.be
> 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to