[fpc-pascal] portable SelectText replacement

Henry Vermaak henry.vermaak at gmail.com
Thu May 20 11:03:56 CEST 2010


On 20 May 2010 08:10, Hartmut Eilers <hartmut at eilers.net> wrote:
> Hi Folks,
>
> I have the following code which I want to port to Windows, but
> I have no idea how the functionality of SelectText may be done
> in Windows. I googled a lot but unfortunately I found nothing
> that helped me out. How is something like that handled under
> Windows ?
>
>        {$I-}
>                if debug then writeLOG('Sock2Text');
>                Sock2Text(sock,sin,sout);
>                if debug then writeLOG('reset');
>                reset(sin);
>                //if debug then writeLOG('rewrite');
>                //rewrite(sout);
>        {$I+}
>                if debug then WriteLOG('Reading requests...');
>                if (SelectText(sin,10000)>0) then begin
>                        Addr_len:=SizeOf(cli_addr);
>                        csock:=accept(sock, cli_addr,Addr_len);
>                        Sock2Text(csock,ccsin,ccsout);
>                        reset(ccsin);
>                        rewrite(ccsout);
>                        process_request;

You can probably get the same effect by using overlapped i/o on the
file and one of the wait functions, like WaitForSingleObject.

Henry



More information about the fpc-pascal mailing list