Chilkat v11.4.0 Release Notes

Pinned April 1, 2026

  ✨ New Features Js A new Chilkat class has been added: Js is a minimal, standards-compliant JavaScript engine designed to embed JavaScript inside applications with very small footprint and fast startup. It executes JavaScript code inside an application without requiring a browser or large runtime. See About the Chilkat.Js JavaScript Engine Ai Provider — […]

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.  […]

PercentDone callback counts as an AbortCheck

June 8, 2010 in Uncategorized

Question: “I’ve got the Chilkat C++ libs linked with my project, and am using the HTTP classes successfully. One thing is confusing me, though. I’ve derived a class from CkHttpProgress.h and overridden AbortCheck(…) to provide cancellation support. However, AbortCheck(…) never gets called. At first, I thought perhaps the HTTP retrieval was occurring too quickly, so I set the “HeartbeatMs” […]

Encryption Progress Monitoring

February 10, 2010 in Uncategorized

Question: Is there a way to encrypt a file with progress monitoring?  Huge files can take a while and it seems like the app is hanging. Answer: Yes, here is the sample VB6 code: Public WithEvents myCrypt As ChilkatCrypt2 ‘ …. Private Sub myCrypt_PercentDone(ByVal pctDone As Long) ProgressBar1.Value = pctDone End Sub Private Sub Command2_Click() […]

Aborting in C++

December 4, 2009 in Uncategorized

The technique for aborting any time-consuming Chilkat C++ method call follows this recipe: Declare your own class that derives from the appropriate Chilkat progress monitoring class.  For CkMailMan it is CkMailManProgress (as shown below).  For other Chilkat classes it is CkHttpProgress, CkFtpProgress, CkImapProgress, CkZipProgress, etc. Create an implementation for the AbortCheck method.  This will override […]

HTTP Progress Monitoring in C++

September 14, 2009 in Uncategorized

This blog post shows how to monitor the progress of HTTP uploads and downloads in C++.  The first step is to create a C++ callback class that derives from the CkHttpProgress base class.  You’ll be overriding one or more of the callback methods.  For example: class MyHttpProgress : public CkHttpProgress { public: MyHttpProgress(void) { } […]

SFTP Progress Monitoring and Abort (C#)

August 31, 2009 in Uncategorized

Here is an example for monitoring the progress of an SFTP file transfer: void sftp_OnPercentDone(object sender, Chilkat.PercentDoneEventArgs args) { progressBar1.Value = args.PercentDone; // To abort at any point, you may set args.Abort = true // args.Abort = true; } void sftp_OnAbortCheck(object sender, Chilkat.AbortCheckEventArgs args) { // See https://cknotes.com/?p=149 for more information about // using the […]

SFTP Upload in VB6 with Progress Monitoring

August 24, 2009 in Uncategorized

The PercentDone event is called when the percentage completion increases by one or more points.  To use events in VB6, Dim the variable WithEvents.  Then name the event callback using the variable name.  (You should already understand how to use VB6 events in general prior to using the Chilkat objects.  A good VB6 book is […]

VB.NET HTTP Download with percent-done progress monitoring

July 2, 2009 in Uncategorized

Here is an example: Dim WithEvents http As Chilkat.Http Private Sub http_OnPercentDone(ByVal sender As Object, ByVal args As Chilkat.PercentDoneEventArgs) Handles http.OnPercentDone ProgressBar1.Value = args.PercentDone End Sub Private Sub HttpDownloadTest() http = New Chilkat.Http() Dim success As Boolean ‘ Any string unlocks the component for the 1st 30-days. success = http.UnlockComponent(“Anything for 30-day trial”) If (success […]

AbortCheck Event in Chilkat .NET Components

March 6, 2009 in Uncategorized

The AbortCheck event is standard in Chilkat .NET classes that involve communications over sockets (FTP, POP3, SMTP, IMAP, HTTP, etc.) or time-consuming operations such as zipping/unzipping large files. There are three steps to using AbortCheck: 1. Enable event callbacks by setting the EnableEvents property = true. Chilkat.MailMan mailman = new Chilkat.MailMan(); mailman.EnableEvents = true; 2. […]

ActiveX Events IDL for (some but not all) Chilkat Components

January 7, 2009 in Uncategorized

SFtp: dispinterface _IChilkatSFtpEvents { properties: methods: [id(1), helpstring(“method PercentDone”)] HRESULT PercentDone([in] long pctDone); [id(2), helpstring(“method AbortCheck”)] HRESULT AbortCheck([out] long *abort); [id(3), helpstring(“method UploadRate”)] HRESULT UploadRate([in] long byteCount, [in] long bytesPerSec); [id(4), helpstring(“method DownloadRate”)] HRESULT DownloadRate([in] long byteCount, [in] long bytesPerSec); }; Zip: dispinterface _IChilkatZip2Events { properties: methods: HRESULT UnzipPercentDone([in] long percentDone, [out] long *abort); HRESULT […]