30+ Delphi Units For The Next Level DevOps
GpDelphiUnits is a collection of Delphi units by Primož Gabrijelčič. These Delphi Units might help you to do some work quickly and efficiently. This is an open-source project and you can check out the full source code on over GitHub. What you can get from these units? Here are some of the available units with aims: DSiWin32 Collection of Win32/Win64 wrappers and helper functions. GpCommandLineParser Attribute-based command line parser. GpForm A simple form with some enhancements. GpHttp Asynchronous HTTP GET/POST with ICS and OmniThreadLibrary. GpHugeF Interface to 64-bit file functions with some added functionality. GpLists Various TList descendants, TList-compatible, and TList-similar classes. GpLockFreeQueue The sample implementation of a dynamically allocated, O(1) enqueue and dequeue, threadsafe, micro locking queue. GpManagedClass Smarter base class. Handles error codes, has a precondition and postcondition checker. GpStructuredStorage Structured storage (compound file; file system inside a file) implementation. GpStuff Various stuff with no other place to go. GpSync Enhanced synchronization primitives. GpSysHook The main unit for the GpSysHookDLL. Implements system-wide keyboard, mouse, shell, and CBT hooks. Supports multiple listeners, Delphi Units, automatic unhooking on process detach, and only installs the hooks that are needed. Supports notification listeners and filter listeners (should be used with care because SendMessage used for filtering can effectively block the whole system if the listener is not processing messages). Each listener can only listen to one hook because the hook code is sent as a message ID. All internal IDs are generated from the module name so you only have to rename the DLL to make it peacefully coexist with another GpSysHookDLL DLL. GpTextFile Interface to 8/16-bit text files and streams. Uses the GpHugeF unit for file access. GpTextStream Stream wrapper class that automatically converts another stream (containing text data) into a Unicode stream. The underlying stream can contain 8-bit text (in any codepage) or 16-bit text (in 16-bit or UTF8 encoding). GpTimezone Time zone conversion. GpVCL VCL helper library. GpVersion Version info accessors and modifiers, version storage, and formatting. SafeMem GetMem/FreeMem wrapper that checks for block overruns. SpinLock A scalable atomic lock Head over and check out the full project source code and documentation here!
