Andreas Hausladen - most probably know him because he wrote the very popular Delphi IDE Fixpack - has just announced (in German) that he published the source code of one of his other useful tools: DFMCheck. It's in his GitHub repository. Now I have just to figure out how to actually use it. 😉
Category: Delphi
GExperts for Delphi 10.4.1
I have received a few reports about bugs in GExperts in Delphi 10.4.1 that do not occur in Delphi 10.4. Here is a GExperts DLL that was compiled with Delphi 10.4.1. Maybe it will solve some of theses problems. Simply extract the DLL and put it into the GExperts installation directory, replacing the original one. … Continue reading GExperts for Delphi 10.4.1
Delphi’s TZipFile working on a stream
Recent versions of Delphi (for a suitable definition of "recent") come with a TZipFile class implemented in the unit System.Zip. This class has the really neat feature that it can not only read the contents of a ZIP file directly from a stream but also extract a file from that stream to a TBytes array, … Continue reading Delphi’s TZipFile working on a stream
Filtering and sorting for the GExperts PE Information Exports list
The GExperts PE Information tool just got a small improvement: The Exports list can now be sorted by clicking on the column header and filtered on the export name by simply typing text. The Escape key resets the filter. If you want to discuss this article, you can do so in the corresponding post in … Continue reading Filtering and sorting for the GExperts PE Information Exports list
External Exception $406D1388 in Delphi
Reminder to self: Exception $406D1388 is the exception used to set a name for a thread, like in: [delphi] procedure SetThreadName(const _Name: AnsiString); var ThreadNameInfo: TThreadNameInfo; begin ThreadNameInfo.FType := $1000; ThreadNameInfo.FName := PAnsiChar(_Name); ThreadNameInfo.FThreadID := $FFFFFFFF; ThreadNameInfo.FFlags := 0; try RaiseException($406D1388, 0, SizeOf(ThreadNameInfo) div SizeOf(LongWord), Pointer(@ThreadNameInfo)); except // ignore end; end; [/delphi] If you encounter … Continue reading External Exception $406D1388 in Delphi
IntToHex for UInt64 in Delphi
Just in case I ever need this again: [delphi] function IntToHex(_Value: UInt64): string; overload; var Buf: PUInt32; begin Buf := PUInt32(UInt32(@_Value) + 8); Result := IntToHex(Buf^, 8); Buf := PUInt32(@_Value); Result := Result + IntToHex(Buf^, 8); end; [/delphi] (Delphi 2007 does not have IntToHex for UInt64.) Note: This works only for 32 bit compilers. For … Continue reading IntToHex for UInt64 in Delphi
Compiling TeeChart 2020 for Delphi 2007
We recently bought TeeChart 2020.30 VCL/FMX with full source code (of course) and I now tried to install it. Steema provides a "TeeChart Source Code Recompilation Tool" (TeeRecompile.exe) that supposedly does this for you. This is fine if it works, it's a pain in the lower back if it doesn't. It worked fine for Delphi … Continue reading Compiling TeeChart 2020 for Delphi 2007
New Filter Exceptions expert in GExperts
I my last GExperts related blog post I wrote about the new "Close Exception Notification" expert which I just had added to GExperts. It was a hack that hooked the Exception Notification dialog. This spawned a discussion in the international Delphi Praxis forum and resulted in a rewrite of the expert. It's now called "Filter … Continue reading New Filter Exceptions expert in GExperts
GExperts supports even more laziness
I got into programming because I am lazy, I'd rather have the computer do the boring work than doing it myself. So it's no wonder that I always liked Delphi and GExperts because both support my laziness. Today I added yet another feature to save me a key stroke or mouse click: The "Close Exception … Continue reading GExperts supports even more laziness
Fixing wrong position and size of the Delphi 10.4 IDE window
Apparently the bug that causes the Delphi IDE to not store its position correctly when placed in full screen on a secondary monitor to the left of the primary monitor (which is my setup at home and at work) still hasn't been fixed in Delphi 10.4. Luckily the work around of editing the desktop settings … Continue reading Fixing wrong position and size of the Delphi 10.4 IDE window