Chilkat v10.0.0 ActiveX Registration and Object Creation

Chilkat adopted standard semantic versioning starting with Chilkat version 10.0.0.  See https://cknotes.com/semantic-versioning-starting-with-chilkat-10-0-0/

For this discussion, it’s important to understand the fundamentals of ActiveX registration.  To ensure a basic understanding, I recommend briefly reviewing the tutorial web pages at https://chilkatsoft.com/activex_dll_registration_tutorial.asp It should take only 10 minutes, and I promise it will save you much time and frustration.

ActiveX Object Creation / Instantiation

The reference documentation web page for each Chilkat ActiveX object shows the object creation statements for various programming languages.  For example:

(ASP)
set obj = Server.CreateObject("Chilkat_9_5_0.Http")

(AutoIt)
$obj = ObjCreate("Chilkat_9_5_0.Http")

(VBScript)
set obj = CreateObject("Chilkat_9_5_0.Http")

(FoxPro)
loObject = CreateObject('Chilkat_9_5_0.Http')

(PowerBuilder)
lole_object = create oleobject
li_rc = lole_object.ConnectToNewObject("Chilkat_9_5_0.Http")

(SQL Server)
EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Http', @obj OUT

Because v10.0.0 is the first version with standard semantic versioning, we’ve made it 100% backward compatible.  With v10.0.0, you can still instantiate the v10.0.0 objects with the same string that uses “Chilkat_9_5_0.”.  However, it will not be possible in subsequent versions.

ActiveX Version Independent Naming

You can also instantiate the Chilkat v10.0.0 and later versions using version independent naming, which begins with “Chilkat.”.  (Ask ChatGPT to “explain ActiveX version independent naming”.)  For example:

(ASP)
set obj = Server.CreateObject("Chilkat.Http")

(AutoIt)
$obj = ObjCreate("Chilkat.Http")

(VBScript)
set obj = CreateObject("Chilkat.Http")

When Chilkat eventually releases v11.0.0, the above version independent object creation statements will automatically use the v11.0.0 DLL that is registered on the system, and so on.

ActiveX Major Version-Specific Naming

Starting with Chilkat v10.0.0, you can alternatively create objects using major version specific naming.  For example, to create objects using Chilkat version 10.*.*, you can do the following, where the “.10” indicate the major version number:

(ASP)
set obj = Server.CreateObject("Chilkat.Http.10")

(AutoIt)
$obj = ObjCreate("Chilkat.Http.10")

(VBScript)
set obj = CreateObject("Chilkat.Http.10")

...

If you choose to use version specific naming, then your object creation statements will need to be updated when Chilkat releases a new major version.  For example, when Chilkat releases v11.0.0 you’ll need to update like this:

(ASP)
set obj = Server.CreateObject("Chilkat.Http.11")

(AutoIt)
$obj = ObjCreate("Chilkat.Http.11")

(VBScript)
set obj = CreateObject("Chilkat.Http.11")

...

Chilkat_9_5_0.*** Goes Away in v11.0.0 and later.

Starting with Chilkat v11.0.0 (which will likely be released in Q1 or Q2 2025), the CreateObject(“Chilkat_9_5_0.***”) names will no longer work.  You’ll need to use either CreateObject(“Chilkat.***”) or CreateObject(“Chilkat.***.<major_version_number>”)