-
Content Count
1881 -
Joined
-
Last visited
-
Days Won
33
Everything posted by Angus Robertson
-
The simple fix for tms/times is to replace the line with something more modern: Result := System.Classes.TThread.GetTickCount; Angus
-
As I understand it. RDP is how Hyper-V displays the VM window, no different to using RDP separately, the VMs the Quick Create don't support any other means of access, no open ports for a terminal or anything. Angus
-
The overloaded functions error is almost certainly down to our using variously RawByteString, UnicodeString, AnsiString, PWideChar and UTF8String for overloaded functions, and maybe more, two of which may be the same in the Linux compiler, but I've really not looked yet. Angus
-
I'm on Windows 10 Enterprise 2004 64-bit 10.0.19041 so more recent. The blog that mentions the problem is 18 months old, so maybe some other issue. Anyway, Ubuntu 20.04 seems to be working OK for my purposes, building the ICS common package gives 57 errors in the Utils unit, so now need to go looking more closely at what string types the Linux compiler supports and why it does not like UTF8, but won't be this week, need to finish other stuff before starting this migration project. Angus
-
PAServer is finally running after adding a second virtual network adapter for the default switch, which means PAServer now has two IP addresses 192.168.1.137 and 172.23.99.102 and I can connect to the second one. Something strange about Hyper-V on Windows 10., I've had VMs running on Windows Server for 12 years with external public access with public and LAN IPs, and never needed to add a second network adaptor. Delphi is currently transferring a lot of stuff somewhere, so not managed to build a package yet. Thanks again for pointing me in the right direction. Angus
-
That is exactly what I installed on Monday, are you also using Windows 10 2004 or earlier? Angus
-
Thanks, will read your blog. When starting the UBUNTU 18 VM, I get an error window saying: connecting to sesman ip 127.0.0.1 port 3350 sesman connect ok sending login login successful started connecting connection problem, giving up some problem which a little searching indicates is a known problem - Issues with xRDP and Ubuntu 18.04.2 – How to fix it https://c-nergy.be/blog/?p=13390 but without xRDP you can not follow the instructions. Angus
-
That is the IP range of the internal adaptor, I have 192.168.1.137 on the same subnet as my LAN with the external adapter. I'll try adding a second Hyper-V internal adaptor. I'm aware UBUNTU 20 is not officially supported by Delphi, but UBUNTU 18 does not install properly with the Hyper-V Quick Create image. Thanks for trying. Angus
-
The Hyper-V adaptor status shows the same IPv4 address as the VM. There is probably some obscure Powershell network command needed to allow incoming TCP access, but I've not found it after a lot of searching. Angus
-
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
-
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
-
A properly written ICS application will never lose any data with TCP. Try receiving the data with the OverbyteIcsIpStmLogTst.dpr sample, Angus
-
Thanks, changed the literal, the PeerX change has already been done in V8.65. Angus
-
Generic circular buffer library released
Angus Robertson replied to TurboMagic's topic in Algorithms, Data Structures and Class Design
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 -
Generic circular buffer library released
Angus Robertson replied to TurboMagic's topic in Algorithms, Data Structures and Class Design
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 -
Invalid Compiler Directive: 'MESSAGES'
Angus Robertson replied to Incus J's topic in ICS - Internet Component Suite
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 -
Invalid Compiler Directive: 'MESSAGES'
Angus Robertson replied to Incus J's topic in ICS - Internet Component Suite
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 -
Invalid Compiler Directive: 'MESSAGES'
Angus Robertson replied to Incus J's topic in ICS - Internet Component Suite
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 -
Invalid Compiler Directive: 'MESSAGES'
Angus Robertson replied to Incus J's topic in ICS - Internet Component Suite
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 -
Invalid Compiler Directive: 'MESSAGES'
Angus Robertson replied to Incus J's topic in ICS - Internet Component Suite
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 -
Invalid Compiler Directive: 'MESSAGES'
Angus Robertson replied to Incus J's topic in ICS - Internet Component Suite
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 -
Invalid Compiler Directive: 'MESSAGES'
Angus Robertson replied to Incus J's topic in ICS - Internet Component Suite
Change InterlockedExchangePointer to TInterlocked.Exchange, and InterlockedExchangeAdd to TInterlocked.Add, then add System.SyncObjs,to Uses and you should get a little further. Angus -
Invalid Compiler Directive: 'MESSAGES'
Angus Robertson replied to Incus J's topic in ICS - Internet Component Suite
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 -
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
-
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