-
Content Count
2047 -
Joined
-
Last visited
-
Days Won
38
Everything posted by Angus Robertson
-
Thanks Uwe, will try this next week. Angus
-
That is exactly what I need, and for that reason, but this if for dozens of existing components and I assume they would need to be changed to be derived from TSelectionEditor. I also need compatibility with Delphi 2007 and later, ideally. Angus
-
ICS V9.2 announced
Angus Robertson replied to Angus Robertson's topic in ICS - Internet Component Suite
ICS V9.3 in SVN should now build for C++ Builder, there are new defines to make all the Windows Certificate Store code including WinCrypt optional, which are disabled by default for C++, I've removed WinCrypt from the package. Angus -
ICS V9.1 announced
Angus Robertson replied to Angus Robertson's topic in ICS - Internet Component Suite
ICS has never been supported on Linux. There is preparatory work for Linux work, I created a new SSL sample PemTest last month which works on Linux, but socket based components don't work yet, this will be fixed soon by replacing the old MacOS event engine in WSocket with a new version that supports all platforms, a test version is currently in the ICS V10 SVN repository, no SSL. Angus -
TRestClient, TLS 1.2, & Windows Server 2012 R2
Angus Robertson replied to Kyle Miller's topic in Network, Cloud and Web
I used to support a Windows 2012 R2 (Windows 7) server, and keeping SChannel SSL running was a pain, since TLS/1.2 was never part of the original OS and had been added with patches. The main problem was it kept forgetting SChannel TLS/1.2 ciphers, usually after each reboot. Before rebooting, I always used the IISCrypto tool from https://www.nartac.com/ to select all the required ciphers, specifically ECDHE ciphers since I use EC key certificates which Microsoft does not like. Servers using OpenSSL worked fine of course. Angus -
What is the best way to accomplish this?
Angus Robertson replied to alank2's topic in Network, Cloud and Web
I've just written a similar application using ICS components, a server listens for remote clients to connect, those connections are kept open permanently with a tiny data packet periodically, and the server can send commands back to the clients when required. This application is actually server monitoring locally, if the remote client stop communicating, the server will restart the Windows service. I wrote a similar system 20 years ago using ICS monitoring vehicles using wifi (before 3G) and triggering FTP uploads (CCTV) from them. Angus -
I've been using TRxTrayIcon from RX tools for about 25 years, with various versions of Windows and Delphi. Without changing anything, on Windows 11 I've started getting an exception on ResumeThread when the component is asked to animate the tray icon using a timer thread. This might have happened when I updated to Delphi 11.3 a few months ago, not sure. Anyone else still using RX Tools? The Polaris unicode version. Angus
-
TIcsMQTTClient.Publish does nothing for me.
Angus Robertson replied to APAPE's topic in ICS - Internet Component Suite
Thanks, I'll test against Mosquitto MQTT server for the next release, and adapt the component if possible, but we don't always try to work with buggy or old servers. Angus -
TIcsMQTTClient.Publish does nothing for me.
Angus Robertson replied to APAPE's topic in ICS - Internet Component Suite
As I said, I've never really looked at the MQTT protocol. Is it now working? Are there changes we should be making to the MQTT component or sample to make it work with other servers and clients? Angus -
TIcsMQTTClient.Publish does nothing for me.
Angus Robertson replied to APAPE's topic in ICS - Internet Component Suite
Have you tried building and testing the OverbyteIcsMQTTst sample? It contains both client and server components, to send to each other. There is a publish button, does it work? Sorry, I know little about MQTT, not used it for any of my own projects, this is a contributed component that I improved for SSL and the latest ICS,. The sample seems to work OK, but please let us know if it does not work as expected, it has not been tested against non-ICS clients or servers. Angus -
Buffered Byte Count for SSL Socket
Angus Robertson replied to Eric Bonilha's topic in ICS - Internet Component Suite
Must say I've never used BufferedByteCount myself, don't think it's used in any ICS components. But if an SSL version is useful, please email your changed unit and it will be added, please make sure you update the latest version from SVN. My email is in many units. Angus -
ICS V9.2 announced
Angus Robertson replied to Angus Robertson's topic in ICS - Internet Component Suite
I've updated SVN with new Common and VCL C++ Builder packages, the contributor warns there is still work to be done with the WinCrypt units. I get too many errors trying to build them, but by C++ knowledge is zero. Please try yourself. Won't be in the overnight zip until midnight. Angus -
ICS V9.2 announced
Angus Robertson replied to Angus Robertson's topic in ICS - Internet Component Suite
Another ICS user created new C++ packages for ICS last week, but he is still trying to fix a long term errors building the OverbyteIcsWinCrypt unit which has too many errors, should be something in SVN in the next couple of days. In the worst case, I'll change the defines so C++ does not build WinCrypt as it doesn't for Posix. Angus -
Problem to reuse session with TSslHttpRest
Angus Robertson replied to Mischir's topic in ICS - Internet Component Suite
Not sure why you wrote such complicated code, none of our examples look like that for TSslHttpRest, only the old THttpCli component . TSslHttpRest includes TSslContext, TIcsCookies and TMemoryStream so they are all redundant. The IcsLogger is also unnecessary, since the component has logging built in, using the OnHttpRestProg event. The OverbyteIcsSnippets sample has a function doHttpRestReqClick that makes a request with only a few lines of code. But before writing any code, I would use the OverbyteIcsHttpRestTst sample to test the URL and parameters. Angus -
Attempting to create working C++ Builder 12 projects
Angus Robertson replied to w0wbagger's topic in ICS - Internet Component Suite
Thanks for your help, you've sent some updated C++ units already, look forward to the rest. Angus -
Attempting to create working C++ Builder 12 projects
Angus Robertson replied to w0wbagger's topic in ICS - Internet Component Suite
As has been mentioned once or twice, no-one supporting ICS does C++. So when I make changes, I try to keep C++ working, but without being able to test anything error occur. 10,4 and later only use 'New' packages which have $auto suffiux so work with all new compilers, avoiding all this messing with versions. So all those 110 references should be New. When you have it working, please zip and email me any changed or new files, so I can update SVN. Probably best to discuss problems by email rather than here, my email is in many source files. Angus -
Delphi 11.2, after editing a unit and trying to save it, I get an error: Unable to rename 'C:\DelphiComp\ics\Source\OverbyteIcsWebSocketSrv.pas' to 'C:\DelphiComp\ics\Source\__history\OverbyteIcsWebSocketSrv.pas.~74~'. and can do nothing else than abandon changes. The version 74 does not exist, only 73. Is there a clever way to save the changes, other than copy/paste to a new file? Suspect it happens if I edit the same file in another version of Delphi on the same PC, a couple of days ago. Angus
-
Unable to rename source file on save?
Angus Robertson replied to Angus Robertson's topic in Delphi IDE and APIs
I often have two or three bds.exe running, but different versions, and all on the task bar. The problem is when they are not obviously running... Angus -
Unable to rename source file on save?
Angus Robertson replied to Angus Robertson's topic in Delphi IDE and APIs
Just had this IDE problem again, D11.3, edit a source file, unable to rename to history file. After having the problem with one file and fixing it by renaming the source file, had it with a second file, despite closing and reopening the IDE, three times. Finally discovered there was bds.exe instance still running holding open several source files, so I guess it did not close cleanly during one previous restart, yet allowed another instance to open. Angus -
How to import Type Library for Managed Code DLLs
Angus Robertson replied to Ron Schuster's topic in General Help
Sorry, skimmed the message... Angus -
TWebBrowser - how catch or ignore ssl and certificate errors?
Angus Robertson replied to Json's topic in Cross-platform
ICS used to use self signed SSL/TLS certificates when there was nothing better, but issuing your own CA signed certificates is almost as easy and more friendly. ICS has a sample that does it manually, or the servers do it automatically, there is also a function to install the ICS root CA into the Windows store for clients. Angus -
I'm attempting to build ICS for Linux, to help with the MacOS support. I used Hyper-V Quick Create to create an Ubuntu 18 VM, took about 10 minutes and a few key clicks, except xRDP no longer works on that build and without it you can not connect to install the fixed packages. Started again with Ubuntu 20 which works fine and displays a Gnome desktop with full connectivity. Installed PAServer and running it in a terminal window, expected port and IP address. But when I create a profile in 10.4 with those details, just get connection failed. There is no Windows firewall, maybe Ubuntu 20 has one? Or am I missing something obvious? Thought I'd try and setup Apache web server, but can not find it. Angus
-
Thank you for your Linux contribution @wright. But how did you test it. Running any ICS FMX samples in Linux using the WSocket unit just freezes the application when TIcsEventQueue is created, and I can not trace into it with the debugger. I have made progress with Linux support for Ubuntu 22.04, OpenSSL now loads correctly, albeit Ubuntu has a two year old version 3.0.2 and seems not to want to upgrade to newer versions. I have a new PemTest sample that views and creates SSL/TLS certificates on Linux, not in SVN yet. Unfortunately, older Ubuntu releases don't include OpenSSL 3 so can not be used with ICS. Angus
-
How to import Type Library for Managed Code DLLs
Angus Robertson replied to Ron Schuster's topic in General Help
Component, Import Component wizard, Import Type Library. Angus -
TWebBrowser - how catch or ignore ssl and certificate errors?
Angus Robertson replied to Json's topic in Cross-platform
The best solution is for the web server to provide valid SSL certificates, Let's Encrypt for public hosts, your own CA for internal domains. For your own CA, the root certificate needs to be installed on client devices, easy for Windows, less easy for mobiles. The ICS component library does all this automatically for ICS web servers, but can also generate certificates for other web servers. Angus