We are happy to announce v5.12.00 of the most complete development toolkit for Delphi and C++Builder for building native modular and fast multi-tier solutions.

If you like kbmMW, please let others know! Share the word!

We strive hard to ensure kbmMW continues to set the bar for what an n-tier product must be capable of in the real world!

Notice that kbmMemTable v. 7.85.00 or newer is a prerequisite to this update for 10.4 Sydney.

This is a combined bugfix and selected new features release.

The release includes:

  • RAD Studio/Delphi/C++Builder 10.4 Sydney support added.
  • New remote update of client software support
  • New OpenSSL client/server support
  • More features improvements and fixes.

Please check the end of this post for a detailed change list.

Professional and Enterprise Edition is available for all with a current active SAU. If your SAU has run out, please visit our shop to extend it with another 12 months.

Community Edition (CE) can be used as a 60 day trial, alternatively as a free product, provided the license is followed. Please read license.txt file for details. CE supports a large subset of the Enterprise Edition features, but may have technical and artificial limitations in certain areas. It only supports a specific Delphi/Win32 SKU, produce Win32 executables and do not include source.

Please visit https://portal.components4developers.com to download.


kbmMW is the premiere n-tier product for Delphi, C++Builder and FPC on Win32, Win64, Linux, Java, PHP, Android, IOS, .Net, embedded devices, websites, mainframes and more.

Please visit http://www.components4developers.com for more information about kbmMW.


Components4Developers is a company established in 1999 with the purpose of providing high quality development tools for developers and enterprises. The primary focus is on SOA, EAI and systems integration via our flagship product kbmMW.

kbmMW is currently used as the backbone in hundreds of central systems, in hospitals, courts, private, industries, offshore industry, finance, telecom, governments, schools, laboratories, rentals, culture institutions, FDA approved medical devices, military and more.

5.12.00 May 31 2020

        New stuff
        - Added RAD Studio/Delphi/C++Builder 10.4 support.
        - Added new TkbmMWUpdateClient and TkbmMWPooledUpdateClient components which communicates with a
           file service (default named KBMMW_UPDATE) to handle automatic update of Win32/Win64 software.
        - Added OnBeforeConnect event to TkbmMWCustomTCPIPIndyClientTransport and descendants.
           Useful for setting up SSL connection.
        - Added new SSL client and server demo.
        - Added kbmMW ORM function QueryDataset(const ATable:TkbmMWORMTable; const AQueryString:string;
                                               const AParams:TParams; const ATransaction:TkbmMWTransaction = nil;
                                               const AOptions:TkbmMWORMQueryOptions = []):TDataset
        - Added elevation features to TkbmMWProcess for Windows.
        - Added HopCountHandleResponse property to kbmMWCustomClientMessagingTransport. It is default 1
           It can be used to define how many hops are allowed in the hop trace for a return response
           in a messaging setup before it is no longer handled as a response for the local client.
           Usually the hopcount will be 1 when forwardrequest and forwardresponse methods are used.
           However if simple message forwarding is used, the hopcount will continue to increase, and
           may thus be 2 or 3 or similar when the response arrives at the originating request client.
        - Added kbmMWGenerateUniqueTempDirectory to kbmMWGlobal.pas
        - Added overloaded kbmMWImplode to kbmMWGlobal.pas
        - Added IgnoreException to IkbmMWScheduledEvent. If set exceptions will allow RunDone methods to run,
           else RunDone methods will be skipped on exception.

       	Changes/minor additions
        - Refactored TkbmMWFileClient and TkbmMWPooledFileClient.
        - Added OnSubscribedMessage and OnUnsubscribedMessage to TkbmMWCustomSAFServerTransport.
           Useful for detecting/debugging/logging if the node is subscribing for an incomming message or not.
        - Updated FileService to be able to desribe blockSize, rootPath and maxFileSize in Smart service format.
        - Changed function kbmMWUnsignedDigitCount to support cardinal and uint64.
        - Changed function kbmMWSignedDigitCount to support integer and int64.
        - Changed TkbmMWSQLXMLData.GetFieldValue to return nil on unknown field reference rather than except.
        - Changed kbmMW_Arg attribute to use 'name' rather than 'index' for its naming.

        - Fixed WaitRun executed in main thread, to correctly continue after scheduled event has excepted due to user code.
        - Fixed WaitRun executed in main thread, to correctly continuedespite one of the Synchronized forms are used and
           thus may happen "later" to avoid thread stalling conflicts between main thread and synchronized thread.
        - Fixed Params not provided for all relevant calls internally in kbmMW ORM.
        - Fixed Pro compilation errors.
        - Fixed bug not setting size on autodetected fields containing only NULL values in kbmMWSQLJSONAPI.
        - Fixed incorrect free's in AMQP client.
        - Fixed SmartBind to datasources to detect dataset structure changes.
        - Fixed SmartBind dateTimeStyle variations bug.



Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.