<p>Am 21.09.2015 17:58 schrieb "Bo Berglund" <<a href="mailto:bo.berglund@gmail.com">bo.berglund@gmail.com</a>>:<br>
><br>
> On Mon, 21 Sep 2015 17:24:50 +0200, Sven Barth<br>
> <<a href="mailto:pascaldragon@googlemail.com">pascaldragon@googlemail.com</a>> wrote:<br>
><br>
> >Am 21.09.2015 16:42 schrieb "Bo Berglund" <<a href="mailto:bo.berglund@gmail.com">bo.berglund@gmail.com</a>>:<br>
> >> Unfortunately since the existing code is built on non-blocking serial<br>
> >> communications and events to handle the data reception I am at a loss<br>
> >> right now concerning what TCP socket component to use.<br>
> >> Indy is blocking, synapse is blocking and ICS being non-blocking is<br>
> >> not open for commercial use and even so not really maintained for FPC<br>
> >> either...<br>
> ><br>
> >You could take a look at the TInetSocket of the ssockets unit which is part<br>
> >of FPC (at least in 3.0.0, don't remember about 2.6.4).<br>
><br>
> I tried to find information on this but it seems a bit difficult...<br>
> Since I have Lazarus installed in my Win7 PC it would be good to know<br>
> where in the installation I might find the units for this component.<br>
> A search from the top of Lazarus finds a number of files with socket<br>
> in their names but no ssocket file at all.<br>
> The sockets.pas file I found indicates that it is for OS/2 only</p>
<p>As I said it might be that you need at least 3.0.0. But you could try to install the release candidate for that.<br>
The code should be in lazarusdir/fpc/VER/packages/fcl-net/src (Note: path might be not entirely correct as I don't have a Windows installation of Lazarus in front of me right now).</p>
<p>><br>
> I also found a wiki page <a href="http://wiki.freepascal.org/Sockets">http://wiki.freepascal.org/Sockets</a> where some<br>
> info could be gleaned.<br>
> But I am worried that this component actually is TEXT oriented such<br>
> that it strips off/adds line endings to whatever is sent/received...</p>
<p>No, that's a different unit/component/class...</p>
<p>> Could you confirm that the TSocketClient can actually handle raw<br>
> binary data such taht one can send/receive a binary file over the TCP<br>
> connection?<br>
> If tha is the case then it might just be what I need to implement my<br>
> simple serial port interface via TCP/IP.</p>
<p>I can't say anything about TSocketClient, but the TInetClient in the ssockets unit I mentioned is a class that's rather directly on top of the native socket API, so that should definitely be able to handle it.</p>
<p>Regards,<br>
Sven</p>