Chilkat v11.3.0 Release Notes

Pinned December 16, 2025

  The main features of this release focus on Chilkat’s Ai class, enabling interactive AI response streaming directly into embedded desktop application browsers. It supports Azure, custom base URLs for OpenAI-compatible providers, and local providers like Ollama. ✨ New Features Ai Real-Time Streaming AI Responses to Embedded Browsers in Desktop Apps — Stream AI responses […]

Chilkat v11.2.0 Release Notes

Pinned November 3, 2025

Previous Version: Chilkat v11.1.0 Release Notes The main addition in v11.2.0 is the Chilkat.Ai class, and the Chilkat.StringBuilder.MarkdownToHtml method. Ai: The Chilkat AI class provides a unified API for interacting with different AI providers: OpenAI, Google, Claude, xAI, Perplexity, and DeepSeek. It provides functionality for conversation management, multimodal inputs, and streaming mode. Markdown to HTML […]

Semantic Versioning Starting with Chilkat 10.0.0

Pinned September 26, 2024

Starting with the v10.0.0 release (end of September 2024), Chilkat moves to standard semantic versioning.   Prior to this release, for various technical reasons, Chilkat was stuck with versions 9.5.0.xx, where only xx changed. For this first leap to semantic versioning, where the major version changes to 10 (from 9), there are no backward incompatible changes.  […]

Delphi Error: Undeclared identifier ‘TChilkatGlobal’

July 17, 2023 in Delphi

See the “Quick Start” instructions here:   https://www.chilkatsoft.com/delphiDll.asp The Chilkat distribution contains Delphi .pas source files, one for each Chilkat class. For each Chilkat class used, add the corresponding .pas file to your project. You’ll always need to add “Global.pas” because your app must always call UnlockBundle at the start. Also add “Global” to the “uses” […]

Delphi Binary Data

February 13, 2023 in Delphi

This post shows some code snippets for getting data from Delphi Byte arrays (TBytes) and TMemoryStream’s in and out of Chilkat. First, here are some code snippets to convert from a TMemoryStream to a byte array, and back. Delphi TBytes to TMemoryStream

Convert CkDateTime to Delphi TDateTime

May 21, 2020 in Delphi

Question: Which is the best way to convert a CkDateTime to a Delphi TDateTime? Answer: I didn’t know the answer, so I Googled “Delphi TDateTime” to see exactly what it is.  It brought me to this web page:  http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/System_TDateTime.html In Delphi, TDateTime is a type that maps to a Double. In C++, the TDateTime class […]

Delphi DLL TaskCompleted Callbacks

December 11, 2019 in Uncategorized

Also see: Delphi DLL AbortCheck Callbacks Delphi DLL PercentDone Callbacks Delphi DLL ProgressInfo Callbacks 1) First define a procedure exactly as shown here. Make sure to use the “cdecl” calling convention. 2) Set the task completed callback by calling the appropriate SetTaskCompleted function. For the CkRest object it is CkZip_SetTaskCompleted(rest,MyTaskCompleted); Note: This example shows TaskCompleted […]

Delphi DLL ProgressInfo Callbacks

December 11, 2019 in Uncategorized

Also see: Delphi DLL AbortCheck Callbacks Delphi DLL PercentDone Callbacks Delphi DLL TaskCompleted Callbacks 1) First define a procedure exactly as shown here. Make sure to use the “cdecl” calling convention. 2) Set the ProgressInfo callback by calling the appropriate SetProgressInfo function. For the CkSocket object it is CkSocket_SetProgressInfo(sock,MyProgressInfo); Note: This example shows ProgressInfo callbacks […]

Delphi DLL AbortCheck Callbacks

December 11, 2019 in Uncategorized

Also see: Delphi DLL PercentDone Callbacks Delphi DLL ProgressInfo Callbacks Delphi DLL TaskCompleted Callbacks 1) First define a function exactly as shown here. Make sure to use the “cdecl” calling convention. Returning a non-zero Result will cause the Chilkat method to abort. 2) Set the abort check callback by calling the appropriate SetAbortCheck function. For […]

Delphi DLL PercentDone Callbacks

December 11, 2019 in Uncategorized

Also see: Delphi DLL AbortCheck Callbacks Delphi DLL ProgressInfo Callbacks Delphi DLL TaskCompleted Callbacks 1) First define a function exactly as shown here.  Make sure to use the “cdecl” calling convention. Returning a non-zero Result will cause the Chilkat method to abort.  It is important to set Result := 0 to allow the Chilkat method […]

Delphi DLL – GetBytesPtr (Writing PByte to TStream)

September 8, 2019 in Uncategorized

Chilkat v9.5.0.80 adds a new BinData function named GetBytesPtr.   It returns a pointer to the internal bytes contained within the BinData.   This post shows one way of writing those bytes to a Delphi TStream (using the Chilkat non-ActiveX Delphi DLL). procedure TForm1.Button2Click(Sender: TObject); var rawBytes: PByte; ItemCount: Integer; binDat: HCkBinData; Stream: TMemoryStream; Writer: TBinaryWriter; byteArr: […]

Chilkat 64-bit DLL for Delphi XE4 Now Available.

August 20, 2013 in Uncategorized

The 64-bit build of the Chilkat DLL for Delphi XE4 has been added to the v9.4.1 SP1 distribution. See http://www.chilkatsoft.com/delphiDll.asp The 32-bit DLL is named ChilkatDelphiXE.dll and is valid for Delphi XE2, XE3, and XE4  (and will likely be valid for future Delphi releases). The 64-bit DLL is named ChilkatDelphiXE4.dll and is valid for both […]