Our C++ localization module offers a streamlined and extensible solution for translating user-facing content in desktop applications. Designed with performance, clarity, and developer control in mind, it seamlessly integrates with existing codebases and supports multi-language deployment via a simple CSV-based translation file. A Python version is also available with the same features listed below.
🔧 Key Features:
Singleton-based architecture for centralized translation access across the application.
CSV-driven translation system compatible with standard spreadsheet tools for easy editing and localization team collaboration.
Primary and fallback language support, ensuring robust coverage even when translations are incomplete.
UTF-8 safe parsing and whitespace-trimming for clean, consistent results.
Developer-friendly API:
Localization::translate(key) retrieves translations.
Localization::loadTranslations(...) loads language data at runtime.
Dynamic language selection using human-readable column headers.
🧩 Integration Highlights:
Tightly integrates with a CommandData structure for global access.
Uses rapidcsv for lightweight and efficient CSV parsing.
Built-in helper to extract available languages from CSV headers.
✅ Example Use Cases:
Translating UI elements, menu labels, error messages, and prompts in multilingual applications.
Providing end-user language customization with fallback safety.
Localizing aviation and engineering software tools without the complexity of large external libraries.
🔐 Lightweight and Secure Licensing Engine for C++ Applications
Our C++ licensing module delivers a robust, hardware-bound licensing solution tailored for high-integrity desktop applications. Built with modern encryption and signature verification techniques, it ensures protection against unauthorized use, tampering, and system clock manipulation — while remaining easy to integrate and developer-friendly.
Machine-locked license verification using hardware identifiers (CPU ID, GUID, HDD Serial).
AES-256 encrypted license payloads with RSA digital signature validation.
Combined binary license file (.lic) format supports embedded XML and signatures in one file.
Expiration date and build version support to control lifecycle and compatibility.
Clock rollback detection via secure time tracking in the Windows registry.
Feature flag support:
Enable/disable specific application features through XML-based license flags.
Human-readable license structure with optional obfuscation for security.
Self-contained and ready to use in any C++ desktop or SDK project.
Compatible with TinyXML2 for efficient parsing of decrypted license contents.
Uses OpenSSL for proven, industry-standard cryptographic functions.
Supports both embedded and external public key verification models.
Designed to work seamlessly with GUI frameworks like Tcl/Tk, Qt, or MFC.
Protecting desktop software with per-machine or per-seat licensing.
Enabling feature-based licensing tiers (e.g., Basic, Pro, Enterprise).
Issuing time-limited trial licenses with automatic expiration enforcement.
Licensing DLLs, SDKs, or internal tools distributed to clients or partners.
Preventing use on unauthorized systems via hardware binding.
Add cloud-based license activation and deactivation (for floating or concurrent licensing).
Bundle with a license key generator GUI for internal use or customer self-service.
Obfuscate key license logic to increase resistance against reverse engineering.
© 2025 Hoyle Engineering Inc. All rights reserved.