C++ Static Library
The KEYZY C++ Client Library is a static library that you link into your application to handle license activation, validation, trials, and upgrades. It supports online, semi-online, and offline activation schemas.
Latest Version
Download C++ Client Library v1.9.0 — Windows, macOS, Linux
What’s included
- Pre-built static libraries for each platform
- Header files (
KeyzyLicenseActivator.h,KeyzyLicenseValidator.h,KeyzyLicenseManager.h,LicenseDepositHandler.h,KeyzyTypes.h) - Windows: x86 and x64 (MSVC v142, v143)
- macOS: Universal binary (Intel x86_64 + Apple Silicon arm64)
- Linux: x64 (Ubuntu 22.04)
What’s new in v1.9.0
KeyzyLicenseValidator::getDealerName()— for dealer-distributed licenses, the library now exposes the issuing dealer’s name so your application can display it. Non-dealer licenses return an empty string.- Network diagnostic status codes —
CONNECTION_ERRORis now refined intoNETWORK_DNS_FAILED,NETWORK_REFUSED,NETWORK_TIMEOUT,NETWORK_TLS_FAILED,NETWORK_PROXY_REQUIREDandNETWORK_HOSTS_TAMPERED, so you can show users a specific, actionable message instead of a generic connection error. The change is additive: existingswitch (status)code keeps working unchanged, and the new values are only reached once you add explicit cases for them. See the C++ License Status Codes reference.
Upgrading from v1.7.x
Two behaviour changes apply as soon as you upgrade from any v1.7.x build:
registerTrial()andregisterOfflineDistributedLicense()now require a non-empty email. The server made email mandatory on 2026-04-20, and the library mirrors that: an empty email is rejected immediately withEMAIL_VALIDATION, without a network request. If your integration calls either method without an email, supply one before upgrading.SERIAL_VALIDATIONandCODE_VALIDATIONwere added for per-field validation failures on those two calls.NAME_OR_EMAIL_VALIDATIONis deprecated and is no longer produced by the server; it remains in the enum for binary compatibility.
See the folder arrangement and configuration guide for setup instructions.
Getting Started
After downloading, follow the C++ Quick Start tutorial to integrate the library into your project and activate your first license.
Previous Versions
v1.7.1 — Windows, macOS, Linux
- Windows: Fixed dynamic runtime (MD) library configuration for all build variants. Static runtime (MT) builds were not affected.
v1.7.0 — Windows, macOS, Linux
- Single-parameter
upgradeLicense(targetSerial)inKeyzyLicenseActivator - Improved HTTP networking layer
- Multiple security hardening improvements
- Linux TLS backend switched from OpenSSL to mbedTLS
- Platform TLS backends: Secure Transport (macOS), Schannel (Windows), mbedTLS (Linux)
v1.4.0 — Windows, macOS (OSX), iOS, Linux (Ubuntu 18.04 64-bit)