Hello Francois,
I have a problem with this component ICSHttpprotocol under delphi 9, the
problem is when I send data using post, the data is converted in the new style
of delphi 9 (char = 2 bytes), and the data is sent corrupted, so the server
fails. The problem is when the data is copy from Fsendstream (tstream-char) to
FSendBuffer (Byte) in the procedure SocketDataSent. Pls, Check the code.
I also attached the capture and the data send to the server.
In the example and send "test=2" but the data is send as "t.e.s.", the dot
means character 0.
procedure THttpCli.SocketDataSent(Sender : TObject; ErrCode : Word);
var
Len : Integer;
begin
if not FAllowedToSend then
Exit;
if Length(FSendBuffer) = 0 then
SetLength(FSendBuffer, 8192);
{$IFDEF CLR}
Len := FSendStream.Read(FSendBuffer, Length(FSendBuffer));
{$ELSE}
Len := FSendStream.Read(FSendBuffer[0], Length(FSendBuffer));
{$ENDIF}
if Len <= 0 then begin
FAllowedToSend := FALSE;
TriggerSendEnd;
if FDelaySetReady then begin { 09/26/08 ML }
FDelaySetReady := FALSE; { 09/26/08 ML }
SetReady; { 09/26/08 ML }
end; { 09/26/08 ML }
Exit;
end;
if Len > 0 then begin
FSentCount := FSentCount + Len;
{$IFDEF CLR}
TriggerSendData(FSendBuffer, 0, Len);
FCtrlSocket.Send(FSendBuffer, Len);
{$ELSE}
TriggerSendData(@FSendBuffer[0], Len);
FCtrlSocket.Send(@FSendBuffer[0], Len);
{$ENDIF}
end;
end;
thanks in advance,
Saludos
David Rodriguez
_________________________________________________________________
Windows Live: Friends get your Flickr, Yelp, and Digg updates when they e-mail
you.
http://www.microsoft.com/middleeast/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:en-xm:SI_SB_3:092010
--
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