Delphi has had a THandle type for a long time (at least since Delphi 6) but didn't use it consistently. I just had to check those declarations for various Delphi versions in order to get rid of compile errors or warnings in GExperts. Here is what I found: THandle is a type declared in the … Continue reading How the handle declarations changed in Delphi
Month: December 2019
Building a project in Delphi 10.3 fails if the build script output contains “error:”
I just had a nasty surprise with Delphi 10.3 when trying to build a project that worked fine with previous Delphi versions. The problem turned out the text one of my pre build events wrote to the output. It contained the string "error :". Apparently Delphi 10.3 parses the output of the build events and … Continue reading Building a project in Delphi 10.3 fails if the build script output contains “error:”
DUnit Folder Iterator Extension
In 2012 Uwe Raabe blogged about an extension to the DUnit framework he had written. He mentioned it today in the German Delphi Praxis forum. Guess what? It's brilliant. It does exactly what I always wanted to write (and never came around doing) for the Unit Tests of the GExperts Code Formatter. Those tests basically … Continue reading DUnit Folder Iterator Extension
The annoying problem of the growing GExperts menu
As I add new functionality to GExperts the menu it displays grows larger and larger. On small monitors (there are still computers with e.g. 1024x600 pixels screen size in use, usually not with the latest Delphi version though) this means that the menu has to be broken into chunks, each with a "more" entry at … Continue reading The annoying problem of the growing GExperts menu
Updating to Windows 10 broke Delphi 6 and 2007 again
Since Microsoft will end the free support for Windows 7 in January 2020, we are updating all our computers to Windows 10 (I would really have liked to avoid that. Windows 7 is definitely not the best Windows ever but its annoyances are known. Windows 10 started to annoy me with new so called "features" … Continue reading Updating to Windows 10 broke Delphi 6 and 2007 again
Accessing bitmap pixels with less ScanLine[] calls in Delphi
As you will find in the documentation and on the web the usual way to access the pixels of a Bitmap in Delphi is using the Scanline[] array property. Something like this: [delphi] type TRgbTriple = packed record // do not change the order of the fields, do not add any fields Blue: Byte; Green: … Continue reading Accessing bitmap pixels with less ScanLine[] calls in Delphi
Assigning an ImageMagick wand picture to a Delphi TBitmap
I could not find this anywhere so I had to experiment: I mentioned PascalMagick before and that it's part of the FreePascal RTL. The following assigns an image that has been processed with the Magick Wand API of ImageMagick to a Delphi TBitmap. First, we need to convert the image to bitmap format using MagickSetFormat: … Continue reading Assigning an ImageMagick wand picture to a Delphi TBitmap