Could you produce a clear explanation of the issue you are faced with
instead of publishing long code no one has time to read ?
--
francois.pie...@overbyte.be
Author of ICS (Internet Component Suite, freeware)
Author of MidWare (Multi-tier framework, freeware)
http://www.overbyte.be

----- Original Message ----- 
From: "Fastream Technologies" <ga...@fastream.com>
To: "ICS support mailing" <twsocket@elists.org>
Sent: Tuesday, May 26, 2009 2:15 PM
Subject: Re: [twsocket] C++ THttpsTst demo code problem


> Hello,
>
> I believe there _might_ be a problem with Httpstst/Thttpcli 304
> responses with no "connection" response header. However due to the
> problem below, I am unable to test with the demos. Hope somebody could
> help.
>
> Regards,
>
> SZ
>
> On 5/25/09, Fastream Technologies <ga...@fastream.com> wrote:
> > Hello,
> >
> > I see the code:
> >
> >    if(DateTimeEdit->Text != "")
> >        SslHttpCli1->ModifiedSince = StrToDateTime(DateTimeEdit->Text);
> >    else
> >        SslHttpCli1->ModifiedSince = 0;
> >
> > in prepareconnection(). I am not sure what to enter to DateTimeEdit as
> > it seems that what the server returns  as last-modified is not
> > accepted--at least not in my locale. What do you suggest? I recall
> > donating the function:
> >
> > function THttpMTConnection.RFCToDateTime(S:string):TDateTime;
> > var
> >   M,D,Y:Word;
> >   H,N,Sc,T:Word;
> >   Ch,CHtag:Char;
> >   Ts:string;
> >   PosCh:integer;
> >
> > begin
> >   posch:=Pos(';',S);
> >   if posch>0 then
> >      delete(s,posCH,length(s)-posCh+1);
> >   T:=0;
> > try
> >   Ch:=S[3];
> > except
> >   Result:=Now;
> >   Exit;
> > End;
> >   S:=Uppercase(S);
> >   if Ch=#32 then begin
> >      Delete(S,1,4);
> >      Ts:=Copy(S,1,Pos(#32,S)-1);
> >      Delete(S,1,Length(TS));
> >      S:=Trim(S);
> >      M:=Pos(TS,#32#32'JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC')div 3;
> >      Ts:=Copy(S,1,Pos(#32,S)-1);
> >      Delete(S,1,Length(TS)+1);
> >      S:=Trim(S);
> >      try
> >         D:=StrToInt(TS);
> >      except
> >         D:=1;
> >      end;
> >      Ch:=S[3];
> >      if Ch<>':' then begin
> >         Ts:=Copy(S,1,Pos(#32,S)-1);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            Y:=StrToInt(TS);
> >         except
> >            DecodeDate(Now,Y,T,T);
> >            T:=0;
> >         end;
> >      end;
> >      Ts:=Copy(S,1,Pos(':',S)-1);
> >      Delete(S,1,Length(TS)+1);
> >      S:=Trim(S);
> >      try
> >         H:=StrToInt(TS);
> >      except
> >         H:=0;
> >      end;
> >      Ts:=Copy(S,1,2);
> >      Delete(S,1,Length(TS)+1);
> >      S:=Trim(S);
> >      try
> >         N:=StrToInt(TS);
> >      except
> >         N:=0;
> >      end;
> >      Ts:=Copy(S,1,2);
> >      Delete(S,1,Length(TS)+1);
> >      S:=Trim(S);
> >      try
> >         Sc:=StrToInt(TS);
> >      except
> >         Sc:=0;
> >      end;
> >      if S<>'' then begin
> >         Ch:=S[1];
> >         if Ch in ['0'..'9'] then begin
> >            try
> >               Y:=StrToInt(S);
> >            except
> >               DecodeDate(Now,Y,T,T);
> >               T:=0;
> >            end;
> >         end;
> >      end;
> >   end
> >   else
> >      if Ch=',' then begin// RFC 822 or RFC 1123
> >         Delete(S,1,Pos(#32,S));
> >         S:=Trim(S);
> >         Ts:=Copy(S,1,Pos(#32,S)-1);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            D:=StrToInt(TS);
> >         except
> >            D:=1;
> >         end;
> >         Ts:=Copy(S,1,Pos(#32,S)-1);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         M:=Pos(TS,#32#32'JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC')div 3;
> >         Ts:=Copy(S,1,Pos(#32,S)-1);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            Y:=StrToInt(TS);
> >         except
> >            DecodeDate(Now,Y,T,T);
> >            T:=0;
> >         end;
> >         Ts:=Copy(S,1,Pos(':',S)-1);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            H:=StrToInt(TS);
> >         except
> >            H:=0;
> >         end;
> >         Ts:=Copy(S,1,2);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            N:=StrToInt(TS);
> >         except
> >            N:=0;
> >         end;
> >         Ts:=Copy(S,1,2);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            Sc:=StrToInt(TS);
> >         except
> >            Sc:=0;
> >         end;
> >      end
> >      else begin// RFC 850 or RFC 1036
> >         Delete(S,1,Pos(#32,S));
> >         S:=Trim(S);
> >         chtag:='-';
> >         posCh:=Pos(chtag,S);
> >         if (posCH>0)and(posCh<5) then
> >            chtag:='-'
> >         else
> >            chtag:=' ';
> >         Ts:=Copy(S,1,Pos(chtag,S)-1);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            D:=StrToInt(TS);
> >         except
> >            D:=1;
> >         end;
> >         Ts:=Copy(S,1,Pos(chtag,S)-1);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         M:=Pos(TS,#32#32'JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC')div 3;
> >         Ts:=Copy(S,1,Pos(#32,S)-1);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            Y:=StrToInt(TS);
> >         except
> >            DecodeDate(Now,Y,T,T);
> >            T:=0;
> >         end;
> >         Ts:=Copy(S,1,Pos(':',S)-1);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            H:=StrToInt(TS);
> >         except
> >            H:=0;
> >         end;
> >         Ts:=Copy(S,1,2);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            N:=StrToInt(TS);
> >         except
> >            N:=0;
> >         end;
> >         Ts:=Copy(S,1,2);
> >         Delete(S,1,Length(TS)+1);
> >         S:=Trim(S);
> >         try
> >            Sc:=StrToInt(TS);
> >         except
> >            Sc:=0;
> >         end;
> >      end;
> >   if Y<100 then begin
> >      DecodeDate(Now,Y,T,T);
> >   end;
> >   try
> >      Result:=EncodeDate(Y,M,D) + EncodeTime(H,N,Sc,T);
> >   except
> >      result:=now;
> >   end;
> > end;
> >
> > Why don't you use it?
> >
> > Regards,
> >
> > SZ
> --
> 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