Problem with Indy- TCP-connection

Issue #81 resolved
Former user created an issue

By trying to connect a TCP-Client with a Server, I get Messages like

"Trace / breakpoint trap (5)" "Aborted(6)"

With former fmxlinux- versions (e.g. 0.905 from 12.04.2017) it works.

Comments (15)

  1. Eugene Kryukov repo owner

    Do you use VM ? If yes what exactly ? Can you check on different config. I've just played a lot with Indy SMTP - everything works good.

  2. Harry Stahl

    Ubuntu 16.04 LTS is my main machine, Windows 10 is running in a virtual machine (VirtualBox). But even when I connect the on Linux running serverprogram from on other windows-machine in my local Network, it has these Problems.

    Beginning from Version (?) for 25. April there is the Problem (first time with the splash-screen of testing fmxlinux). With the fmxlinux-versions before, I can connect, ask values, send values to start programs and so on.

    In the attached screenshot you can see, that with Version from 22. April it was possible to connect, ask for data and send strings (here to start gedit on Linux).

  3. Harry Stahl

    OK, to make an excerpt would be to much work, but I have debuged the app and found out the place, where the aborting (6) error results from. In the following sequence the call of " Size := ScreenSvc.GetScreenSize; " makes the Problem.

    if pos ('ScreenSize', sMsg) <> 0 then begin if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService, IInterface(ScreenSvc)) then begin Screen.UpdateDisplayInformation;

      Size := ScreenSvc.GetScreenSize;
    

    After all I testet some other Indy-connections, it looks good so far. When you call Getscreensize outside of a thread you'll have no problems, but in this execute part we have it. Don't know why.

    Same Problem with Screen.displaycount. Called in a Indy-Execute-thread, thread, the app Crashs; outside no problem.

  4. Eugene Kryukov repo owner

    I've played with multi-thread apps and didn't found any issue, crashes or even some warnings. I've checked Screen members in another thread. Also, it seem it is not good approach at all, you should call UI stuff only in main thread on all platforms (Windows and macOS too).

  5. Log in to comment