There are many free Delphi components out there. Some of them are of great value and quality. I wanted to take the chance and promote some of the better Delphi components/libraries on this blog by listing the free components that we use in SmartInspect (in the Console):
- TMPHexEditor
This is a hex editor control to display and edit binary data. You can build your own hex editor with it in minutes. We use it in the Console for the binary viewer which lets you inspect logged binary data.
- Indy Sockets
Indy is a very complete networking library. Although we built our own TCP classes for the Delphi library to reduce external dependencies, we use the Indy TCP Server in the SmartInspect Console and are very satisfied with it. Additionally to the basic protocols like TCP and UDP, Indy contains implementations of many high-level protocols like HTTP and SMTP.
- SynEdit
SynEdit is a source code editor control with highlighting support for many different programming languages. We use it for the source code viewer in the Console to display logged source code and SQL strings. It mimics many of the features of the Delphi code editor and can be used to build a sophisticated text editor.
- TRegExpr
If you need a regular expression library for Delphi, I would recommend taking a look at TRegExpr. It’s an efficient regular expression component written natively in Delphi and supports advanced regular expression features like non-greedy quantifiers. We use TRegExpr for the search feature of the Console.
- VirtualTreeView
This tree view control is probably the most flexible and customizable control I have ever seen. We use it for the Views and for almost all of the toolboxes. You can use it as a tree, a grid, a list or customize it to use whatever presentation style fits your needs. Additionally it supports Unicode natively, which is a big plus.
There are more great free Delphi components out there, but since we used the above components extensively in SmartInspect, I can highly recommend them. Thanks to the components authors for such a great work!




8 Comments
Thumps up for Indy!
I used it for an application which needed to access web server/ftp server and it worked like a charm!
I worked on only one Delphi project and I am amazed by quality of the components available to Delphi developers (free/not-free). It’s the best environment out there for a developer!
Indy is great, as long as you ignore the memory leaks due to bad design that have stayed there over a year. SynEdit is nice, but tough to support since languages are defined in code instead of a script.
TRegExpr is great and addresses a pretty major omission in the basic Delphi library. DevCo should consider adding this to basic Delphi libraries (although I question the wisdom of basing core features on third party code, this isn’t per-se a core feature like basic math, so should be much safer to add)
Hey I’m using Indy Sockets 10.1.5
Do they have a new version that doesn’t have memory leaks? They don’t lose lots a memory only a few bytes that are not that significant.
Any help will be appriciated.
Thanks
Bill
Your Delphi source code (SmartInspect.pas etc.) is very well documented. I wonder what tools you guys are using for that? Any useful IDE extensions etc. that I am not aware of?
Hi Michael,
Sorry for the late reply. We use doc-o-matic for our documentation (for both the API documentation and the Console manual). It’s pretty expensive ($1000 if I recall correctly) but it’s very customizable and works with Java, Delphi and .NET. It’s by far not perfect (at least the version 4 which we are using) but overall I can recommend it.
Here’s the link:
http://www.toolsfactory.com/
Tobias,
thanks for answering. I know doc-o-matic (meaning, I am aware of it’s existence
), but my question was specifically regarding an IDE wizard/extensions that makes adding comments to the source code easier. E.g. so one does not have to type things like the tags by hand every time, or automatic indenting of new comment lines. I don’t find any info regarding such an IDE extension one the doc-o-matic website, although I am going to check out the trial now.
Or are you doing that manually and I am expecting just too much comfort?
Hi Michael,
I normally document the .NET library first in Visual Studio. Visual Studio helps you a lot with the XML tags, function parameters etc. Since all three libraries have nearly the same API I then take the .NET API documentation, copy it to the Delphi and Java source files and change them a bit (renaming the function parameters etc.). That’s why all libraries use XML as documentation format.
I think you can also edit your documentation directly in doc-o-matic and doc-o-matic then inserts the generated text into your source code. I’m not sure how well this works though.
One Trackback
[...] Okay, no problem I thought. You have a 14-day grace period in which you don’t have to activate Delphi. So I continued without activation and started Delphi. The first thing I usually do after installing Delphi is to install the third-party components that we use. So I opened the SynEdit Delphi package, compiled it and pressed the “Install” button. Guess what? Without activating Turbo Delphi Professional, it behaves like Turbo Delphi Express and I was unable to install any packages and use any third-party components. [...]