syncfusion-winforms-licensing
Implementing Syncfusion Windows Forms Licensing
This skill provides comprehensive guidance for implementing and managing Syncfusion licensing in Windows Forms applications, including license key generation, registration, troubleshooting, and CI/CD integration.
When to Use This Skill
Use this skill immediately when you need to:
- Implement licensing in a Windows Forms application using Syncfusion components
- Resolve license validation errors or trial expiration messages
- Generate license keys for specific versions and platforms
- Register license keys in C# or VB.NET Windows Forms applications
- Troubleshoot licensing issues such as invalid keys, platform mismatches, or version mismatches
- Configure CI/CD pipelines with license validation (Azure Pipelines, GitHub Actions, Jenkins)
- Understand licensing requirements for NuGet packages, trial installers, or licensed installers
- Upgrade from trial to licensed version after purchasing
- Handle build server licensing scenarios
Overview of Syncfusion Licensing
Starting with version 16.2.0.x, Syncfusion introduced a new licensing system that requires license key registration for:
- Applications using evaluation installers
- Applications referencing Syncfusion NuGet packages from nuget.org
Key Points:
- License keys are version and platform specific
- License keys are different from installer unlock keys
- Validation happens offline during application execution (no internet required)
- Licensed installer users do not need to register license keys
- Trial license keys expire after 30 days
Documentation and Navigation Guide
Understanding Licensing
π Read: references/licensing-overview.md
When to read this reference:
- Understanding the licensing system introduced in version 16.2.0.x
- Learning the difference between unlock keys and license keys
- Determining when license registration is required
- Understanding build server scenarios (NuGet vs Trial vs Licensed installers)
- Learning about version and platform specificity
Generating License Keys
π Read: references/license-generation.md
When to read this reference:
- Generating license keys from License & Downloads section
- Generating license keys from Trial & Downloads section
- Using the Claim License Key feature
- Handling active license scenarios
- Handling active trial scenarios
- Dealing with expired licenses
- Starting a trial when no license exists
Registering License Keys
π Read: references/license-registration.md
When to read this reference:
- Implementing the RegisterLicense method in C# or VB.NET
- Registering keys in Main() method for C# applications
- Registering keys in Application.Designer.vb for VB.NET
- Registering keys in Program.vb for VB.NET
- Understanding Syncfusion.Licensing.dll reference requirements
- Learning about offline validation capabilities
Troubleshooting Licensing Errors
π Read: references/licensing-errors.md
When to read this reference:
- Resolving "License key not registered" errors
- Fixing "Invalid key" errors
- Handling "Trial expired" messages
- Resolving platform mismatch errors
- Fixing version mismatch errors
- Troubleshooting "Could not load Syncfusion.Licensing.dll" errors
- Configuring Copy Local settings
- Understanding legacy errors (v16.2.0 - v20.3.0)
Common Questions and CI/CD Integration
π Read: references/licensing-faqs.md
When to read this reference:
- Implementing CI/CD license validation (Azure Pipelines, GitHub Actions, Jenkins)
- Using LicenseKeyValidator utility in build pipelines
- Understanding where to get license keys
- Checking if internet connection is required for validation
- Upgrading from trial to licensed version
- Registering Syncfusion account for NuGet.org users
- Understanding license key specificity
Quick Start Example
Here's a complete example of registering a Syncfusion license key in a Windows Forms application:
C# Example
using System;
using System.Windows.Forms;
using Syncfusion.Licensing;
namespace MyWindowsFormsApp
{
static class Program
{
[STAThread]
static void Main()
{
// Register Syncfusion license key BEFORE any Syncfusion control is initiated
SyncfusionLicenseProvider.RegisterLicense("YOUR_LICENSE_KEY_HERE");
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
VB.NET Example (Application.Designer.vb)
Namespace My
Partial Friend Class MyApplication
Public Sub New()
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
' Register Syncfusion License
Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense("YOUR_LICENSE_KEY_HERE")
Me.IsSingleInstance = False
Me.EnableVisualStyles = True
Me.SaveMySettingsOnExit = True
Me.ShutdownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
End Sub
End Class
End Namespace
Common Patterns
Pattern 1: License Key Registration Workflow
When implementing Syncfusion licensing:
- Generate license key from Syncfusion account
- Add reference to Syncfusion.Licensing.dll
- Register license key at application entry point (before any Syncfusion control initialization)
- Verify no license validation errors appear
Pattern 2: Troubleshooting License Errors
When encountering license validation errors:
- Identify the specific error message
- Verify license key is for correct version and platform
- Check registration location (must be before control initialization)
- Ensure Syncfusion.Licensing.dll is referenced and Copy Local = True
- Regenerate license key if needed
Pattern 3: CI/CD License Validation
When implementing license validation in CI pipelines:
- Download LicenseKeyValidator utility
- Configure PowerShell script with platform, version, and license key
- Integrate script execution in CI pipeline (Azure, GitHub Actions, Jenkins)
- Validate license before deployment
- Handle validation failures appropriately
Pattern 4: Upgrading from Trial to Licensed
When purchasing a license after trial:
- Option A: Uninstall trial, install licensed version from License & Downloads
- Option B: (For NuGet users) Replace trial license key with paid license key
- Verify license registration in application
- Test to ensure no trial messages appear
Key Concepts
License Key Characteristics
- Version-specific: License key must match Syncfusion assembly version
- Platform-specific: Windows Forms keys only work for Windows Forms platform
- Offline validation: No internet connection required during runtime
- String format: License key is a string registered via RegisterLicense()
Registration Requirements
| Assembly Source | License Registration Required? | Where to Get Key |
|---|---|---|
| NuGet packages from nuget.org | β Yes | License & Downloads / Trial & Downloads |
| Trial installer | β Yes | Trial & Downloads |
| Licensed installer | β No | Not applicable |
Critical Registration Rules
- Timing: Register license key BEFORE initializing any Syncfusion control
- Location:
- C#: In
Main()method beforeApplication.Run() - VB.NET: In
Application.Designer.vbconstructor orProgram.vb
- C#: In
- Dependencies: Ensure
Syncfusion.Licensing.dllis referenced with Copy Local = True - Format: Place license key string between double quotes
Common Use Cases
Use Case 1: First-Time Syncfusion License Setup
Scenario: Developer setting up Syncfusion in a new Windows Forms project using NuGet packages.
Approach:
- Read references/licensing-overview.md to understand requirements
- Read references/license-generation.md to generate key
- Read references/license-registration.md to implement registration
- Test application to verify no license errors
Use Case 2: Resolving License Validation Error
Scenario: Application shows "License key not registered" or "Invalid key" error.
Approach:
- Read references/licensing-errors.md to identify specific error
- Verify license key version and platform match
- Check registration code location and timing
- Regenerate license key if needed
- Verify Syncfusion.Licensing.dll reference
Use Case 3: Build Server Configuration
Scenario: Setting up Syncfusion licensing for automated builds or CI/CD.
Approach:
- Read references/licensing-overview.md build server section
- Determine if license registration is required based on assembly source
- Read references/licensing-faqs.md CI/CD section for pipeline setup
- Implement license validation in CI pipeline
- Test build process
Use Case 4: Trial to Licensed Upgrade
Scenario: Developer purchased license after using trial version.
Approach:
- Read references/licensing-faqs.md upgrade section
- Choose upgrade approach (reinstall or key replacement)
- Generate new paid license key
- Update registration code with new key
- Verify trial message is removed
Use Case 5: Version Upgrade
Scenario: Upgrading Syncfusion components to a new version.
Approach:
- Generate new license key for target version from License & Downloads
- Update NuGet packages or installer to new version
- Replace old license key with new version-specific key
- Test application to ensure compatibility
- If errors occur, read references/licensing-errors.md
Additional Resources
- Syncfusion Account: https://www.syncfusion.com/account/manage-trials/downloads
- License & Downloads: https://www.syncfusion.com/account/downloads
- Support: https://support.syncfusion.com/
Summary
This skill covers the complete lifecycle of Syncfusion Windows Forms licensing:
- Understanding licensing requirements and scenarios
- Generating license keys for specific versions and platforms
- Registering license keys in C# and VB.NET applications
- Troubleshooting common licensing errors
- Implementing CI/CD license validation
- Handling trial and licensed version transitions
Always start by reading the appropriate reference file based on your specific need (overview, generation, registration, errors, or FAQs).