Jump to content

Angus Robertson

Members
  • Content Count

    2047
  • Joined

  • Last visited

  • Days Won

    38

Everything posted by Angus Robertson

  1. Angus Robertson

    ICS for Linux?

    Using a different virtual environment means starting again, which will not happen soon. The Windows 10 VM will not run under 2018 due to different disks and NIC, so that is start again as well. I have better things on which to spend my time. Angus
  2. Angus Robertson

    ICS for Linux?

    Yes, it seems that my Windows 10 Hyper-V virtual Ethernet adapter only allows outgoing TCP connections, and blocks incoming, to all my VMs. Don;t often open servers in VMs. I'm going to try moving the Linux VM to a Windows 2018 server. Angus
  3. Angus Robertson

    Twsocket Tcp Client miss some packets

    A properly written ICS application will never lose any data with TCP. Try receiving the data with the OverbyteIcsIpStmLogTst.dpr sample, Angus
  4. Angus Robertson

    Cache mode - Debug

    Thanks, changed the literal, the PeerX change has already been done in V8.65. Angus
  5. I brought the ICS TWSocketServer component page up to date, and the TWSocketServer.IcsHosts properties page, since those two components are the basis of all the servers, and I extended the capability a lot so you don't need TSslContext which is probably the component you want documented. And I'm slowly adding new components that don't need TSslContext either, already done HTTP, FTP and SMTP, to make SSL easier to use. I used Document Insight to create a 20MB CHM file, it has various other formats, But it really needs a large amount of XML added to the source files to be useful, which is many weeks or months of work. The file is on the wiki site but I'm not publishing the URL here since it's not useful in it's present form. Angus
  6. The ICS FAQ pages already have a lot of SSL/TLS documentation for major subjects, and some of the server components have almost up to data documentation for properties and methods. But proper documentation takes weeks and no-one will pay for it, so I spend more time writing new components. http://wiki.overbyte.eu/wiki/index.php/Main_Page I have created a complete help file of all ICS components, properties, methods and events, but it would take weeks to make it useful with actual text on what they do. Some developers give up at that point and just leave a skeleton help file. Angus
  7. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    SVN is updated again with (I hope) all the MacOS fixes reported here, including fixing some FMX samples so they build again. Will be zipped overnight. Angus
  8. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    Yes, when Delphi first got Linux as a target I did try to create a Linux VM, but I've at this stuff so long I really do not have the energy to learn much new, and in particular another command line language, so I never got Linux working. At the time it did not support AnsiString so would not have got very far anyway. You'd have thought a Hyper-V disk of a working Linux OS would be easy to find, but no, they wanted you to start from scratch. Angus
  9. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    OK, did not know about Posix.SysTypes which is what should have included rather than adding size_t to our types unit. Can you please remove that block of Posix code from OverbyteIcsTypes and see how manu units need Posix.SysType adding? NTLM is used in both clients and servers, but should not used for Posix, I'll look at it. BTW, I've just got a need VCL.Forms unit error building the FMX package, did not see that last time I built it so must have added something horrible in the last day or two. Angus
  10. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    The magic is: unit Ics.Fmx.OverbyteIcsWndControl; {$DEFINE FMX} {$DEFINE ICS_INCLUDE_MODE} {$I OverbyteIcsWndControl.pas} which is how FMX gets defined and all the units get then built for FMX or VCL. Not sure how VCL.Forms is being dragged in. Angus
  11. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    ICS defines FMX at the top of all Ics.Fmx.xx units, which are built by the FMX runtime package. But I guess should also be in any FMX projects that include other units that are VCL/FMX. Angus
  12. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    I built all the ICS FMX sample projects OK yesterday using the XSamples group, for Windows only, IcsHttpsTst worked fine with SSL once I copied the latest DLLs into that directory. Two server samples need minor fixes that were made to VCL ages ago but forgot FMX, and StrokeThickness has disappeared from Bitmap.Canvas, IcsHttpsTst is a little basic compared to the VCL version, need to add more SSL stuff. I'll look at the other Interlocked stuff, one problem is these are also Windows APIs so removing them from the ICS unit does not stop units building if they also include Winapi.Windows. Angus
  13. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    Change InterlockedExchangePointer to TInterlocked.Exchange, and InterlockedExchangeAdd to TInterlocked.Add, then add System.SyncObjs,to Uses and you should get a little further. Angus
  14. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    I changed all the old InterlockedIncrement to AtomicIncrement, but seems I missed InterlockedExchange which has now gone, Not sure of the modern replacement for InterlockedExchang, hopefully someone watching will know immediately. I've not done the GetTickCount64 stuff yet, the 10.4 runtime has various ticks functions for different platforms, just lots of new conditionals so it works on all platforms. Angus
  15. Angus Robertson

    RansomWare blues

    Layers of protection are good, even multiple firewalls provided there is not too much performance hit. External firewalls also means external logs, mine syslogs to my office systems as well as the rack, so it can not be compromised. Angus
  16. Angus Robertson

    RansomWare blues

    The firewall that blocks RDP from Windows should be external to Windows, not a Windows application, they can be stopped or modified by those that try very hard. I have my own firewall in my rack. Angus
  17. Angus Robertson

    RansomWare blues

    Always best to restrict the remote addresses allowed to access RDP through firewall rules. For remote hosted servers, always make sure at least two address blocks in case your ISP does some renumbering without telling you. Angus
  18. The mail queue sample sends the same message to a list, but each message has different headers with a sing;e To: address. There is no reason you can not queue a different message to each address as well. Which ever way you queue the messages, they are saved as separate messages since they are sent one at time, with multiple attempts if delivery attempts fail. Essentially using the TIcsMailQueue component means you only have to prepare the messages, all the actual SMTP sending is done for you, and that is what you want to duplicate in your own code, why? Angus
  19. No point in looking at the code since it is using the wrong component, for the third time. You are attempting to recreate code that already exists and works in the TIcsMailQueue component. Angus
  20. I told you before to use the Mail Queue sample, which you did, that is specifically designed for exactly what you are trying to do, sending hundreds of emails by queuing them. The sample program allows a list of email addresses to be entered. Beware your email supplier AOL may block your email if it thinks you are behaving like a spammer. you may need a proper email account. Angus
  21. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    All now in SVN, last for this week, OSX32 targets seem to disappear in 10.4 so I guess are now dead. Angus
  22. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    My live 10.4 design packages only have Win32 target, I'll have to double check if master is the same, it should be, I can not add Mac platforms from the IDE, despite having the compiler installed, I'll try hacking the XML. Still can not build since I can not create a connection profile. Though we had MacOS targets before because others have used it okay, so perhaps Delphi deletes them if I modify the package. Angus
  23. Angus Robertson

    Invalid Compiler Directive: 'MESSAGES'

    Excellent, I'll be even happier when you manage to make an SSL connection somewhere, although I've no idea if any the FMX samples still work, never looked at them. Just about to put more stuff into SVN so will do these changes. GetTickCount64 is only used in samples at the moment, system seems to provide 32-bit versions for Posix but not 64-bit. Angus
  24. That is actually part of TSslSocketServer providing you are using IcsHosts to configure it which handles all the SSL stuff for you, even creating a self signed certificate automatically if nothing supplied so it can start and order one from Let's Encrypt. Angus
  25. We have explained why threads are very rarely necessary in ICS applications a few times in this forum. I don't debug such applications. Angus
×