Delphi Dev
449 subscribers
1 photo
1 video
783 links
News, articles, books and videos from the world of Delphi development.
Download Telegram
​​Today guys from CleverComponents have published a new Delphi example that starts listening to an incoming connection, accepts the connection, and receives all data over the established connection. No data is sent back to the client. This functionality might be useful when you debug a Network app and want to analyze the produced TCP traffic, e.g. using Wireshark.

The program uses the TcpServerConnection socket class from the Clever Internet Suite library to start listening on the specified local port and receive TCP packets over the Network.
https://www.clevercomponents.com/portal/kb/a180/silent-socket-receiver-in-delphi.aspx

The program can be easily modified to send TCP response back to the connected client because the sources are available on GitHub πŸ‘
https://github.com/CleverComponents/Clever-Internet-Suite-Tutorials/tree/master/vcl/SilentSocketReceiver
​​Yet another post about design patterns. If you use the patterns in your code, please check out this big article that might help you to tackle certain problems in certain situations.

I know guys who learned patters one-by-one to quickly apply them when coding. To be honest, I didn't learn design patterns so closely, but used some of them, such as Singleton and Visitor. In fact, they was helped me a lot.

The article covers, I think, the most of possible design patterns and provides good code examples.
The examples are not in Delphi, but in fact, they allow to catch the main idea of the pattern.

Put πŸ‘ if the article was useful for you.
https://github.com/kamranahmedse/design-patterns-for-humans
​​Hello, please take a look on a simple Delphi project to learn the TLS handshake implementation using OpenSSL 3.0 Memory BIOs.

This project represents my experience in implementing the in-memory TLS handshake using OpenSSL 3.0. There are lots of examples with previous versions of the library on the Internet. So I decided to share this project to help other developers to get started with OpenSSL memory BIOs in Delphi. The main our task was to implement a cross-platform version of our Delphi components. Currently the components use Microsoft Schannel and CryptoAPI to implement TLS and other crypthographic features.

I worked with MS Schannel, SSPI, and CryptoAPI for many years and familiar with many tricks, problems, and use-cases. But OpenSSL become a real challenge for me 😲

I'm still working on this test project. So if you find any errors or have questions, do not hesitate to contact me.

Also, please feel free to ⭐️ the repo to help other devs to find this project!

Regards, Sergey Shirokov
https://github.com/CleverComponents/OpenSSL-With-Memory-Bios
​​Less than three hours left before the "The Changing Nature of Debugging" webinar starts. At this webinar, the speaker, Nick Hodges, developer advocate at Rollbar and Embarcadero MVP, will discuss the debugging strategies, testing, using CCI for faster debugging, and many more 😲

Check out the link to register and choose your T-shirt πŸ‘
https://try.rollbar.com/webinar/changing-nature-of-debugging/
​​Wow, Embarcadero introduced the theme of Delphi’s 27th anniversary - Building the Future ❀️
The event starts on Feb 14, 2022 10.00 AM CST.

Don't miss Delphi's 27th birthday! Register your seat here πŸ‘
https://blogs.embarcadero.com/building-the-future-delphis-27th-anniversary-delphi27th/
​​Recently, the OmniPascal guys have updated their OmniPascal extension for Visual Studio Code up to the version 0.19.0, improved syntax highlighting for inline JavaScript asm blocks, and fixed some parser bugs.

Check out more details on the project's website πŸ‘
http://blog.omnipascal.com/omnipascal-0-19-0-pas2js-asm-blocks-with-javascript/
To those who for some reason didn't attend the webinar about WSL2, the Windows Subsystem for Linux, guys from Embarcadero have published this replay.

Just check out Linux GUI Applications on Windows Subsystem for Linux on their YouTube channel πŸ‘
https://youtu.be/5AFZH-UhU6A
​​OFF πŸ˜‚ by Programmer Jokes
Woah, recently guys from Skia4Delphi released the new version 3.0 of their exceptional graphical library!

You can check out the video demos on YouTube. Don't forget to πŸ‘

πŸ‘‰ BTW: the sources are available on GitHub.
https://youtu.be/hI8L4qBXTgk
​​Generics, generics... recently I've read one old but actual Marco Cantu's blogpost. Generic vs. Traditional Collections. Which ones to use?
Generics allow you to prevent typecasting in your code. But Marco discusses two basic reasons not to use generics.
I know at least one more reason not to use them - when your code needs to support old Delphi versions, e.g. D7.

And what is your opinion? Please share your experience πŸ‘
https://community.idera.com/developer-tools/b/blog/posts/delphi-rtl-generic-vs-traditional-collections
Yesterday I've read a blog post, which was shared in Delphi Developer, about encryption in Delphi. The text describes DBXOpenSSL and some other classes πŸ€”
I've followed the link to the website and investigated it's content. I wondered if it contains other interesting things. So I found articles about VCL, DataSnap, JSON SQL, etc. You can check them out yourself.

The author writes in Chinese, but now this is not a problem. At least Chrome and Edge have built-in translator πŸ‘
https://grandruru.blogspot.com/2022/02/what-is-encryption-in-delphi.html
​​Hi, please take a look on this Delphi tutorial by CleverComponents that utilizes the Clever Mail Message and S/MIME Message components to parse / compose E-mail messages in MIME format, with file or image attachments.
☝️The Clever Mail Message component doesn't store attachmets in memory, and the given program shows you how to deal with them.

Check out the sources on GitHub πŸ‘
https://github.com/CleverComponents/Clever-Internet-Suite-Tutorials/tree/master/vcl/RecomposeMailMessage
​​More news from CleverComponents πŸ”₯ Today they released a new version of Clever Internet Suite 10.2!

This new version of our Internet components improves the SFTP connection speed, adds more data protection options to the SOAP component, updates the DNS Query component, and includes a lot of new features, optimizations, and bugfixes.

Just visit the product web site to learn more πŸ‘

https://www.clevercomponents.com/products/inetsuite/
​​Check out this interesting interview, where Serge Pilko is talking to Andrea Magni about the TFrameStand, FMX component developed by Andrea Magni, which helps to create Flexible Cross-Platform FireMonkey apps.

PS: Do not forget to πŸ‘
https://youtu.be/2P_kfv-rMY4
​​Do you know how to send a photo to a Telegram channel in Delphi?

Just take a look at this program that utilizes the Clever HTTP and HttpRequest components to submit an image to a Telegram channel using Telegram Bot API.

The sources are published on GitHub πŸ‘
https://github.com/CleverComponents/Clever-Internet-Suite-Tutorials/tree/master/vcl/SendTelegramPhoto
​​One week left before an interesting webinar where Jim McKeeth and Ian Barker will discuss how to use Skia4Delphi to take your cross-platform 2D graphics to the next level πŸ”₯

This is really actual, because Chrome, Firefox, Android, and others already do this. They have accelerated graphics thanks to Skia 😲

Don't forget: April 27th at Noon CDT. Registration is here:
https://register.gotowebinar.com/register/1647503147887687947
​​Are you working on an Email service app? Check out a simple tutorial that shows how to override the default POP3 command handlers and implement your own ones using the Clever POP3 Server component.

You can find the source code for this Delphi project on GitHub.

PS: Don't forget to ⭐️ GitHub repo if you like this project πŸ‘
https://github.com/CleverComponents/Clever-Internet-Suite-Tutorials/tree/master/vcl/Pop3ServerCmdOverride
​​Today, I've read one interesting article on using THTTPRIO together with Synapse TCP library for SOAP-based REST services.

This might be useful when you are experiencing problems with the standard Microsoft SChannel, e.g. when TLS 1.3 is required. In this situation, Synapse looks as a good alternative πŸ€”

The article is written in Czech, as always, Chrome rules πŸ‘
https://delphi.cz/post/Pouziti-synapse-v-THTTPRIO-pri-volani-SOAP.aspx
​​Jordan Russell Software have updated their wonderful πŸ”₯ installer tool - InnoSetup up to the version 6.2.1.

The update includes protection against potential DLL preloading attacks and fixes some cosmetic issues. I've already installed this update and tried to recompile installations for our Delphi components.

In fact, the dark theme rules πŸ‘
https://jrsoftware.org/isdl.php
​​Good news for those who use Interbase in their work. Last week Ebmarcadero has released the Interbase 2020 Update 3 😲

There are UX enhancements, expression indices, ADO.NET support for change views, and others πŸ€”

Just check out their dev blog for more details πŸ‘
https://blogs.embarcadero.com/embarcadero-interbase-2020-update-3-released/