Products Technologies Demo Docs Blog Support Company

.NET Licensing: How to Use the Licenses.licx File?

The .NET licensing mechanism uses a licenses.licx file to record licensed controls like TX Text Control. Visual Studio invokes the License Compiler (lc.exe) at build time to embed the license string into the executable assembly, including when the control resides inside a user control.

.NET Licensing: How to Use the Licenses.licx File?

In order to deploy an application with licensed components like TX Text Control, the EXE file must be licensed properly.

Very often, we are getting requests about this mechanism of the .NET Framework that shows the confusion about it. This article explains how .NET includes the licenses of licensed controls into the exeutables.

The .NET licensing mechanism recommends to add the licenses to the EXE - the calling assembly. What happens in detail?

If you drag and drop a TextControl from the Visual Studio toolbox to a form, Visual Studio creates a licenses.licx file and includes the license information. This file is located in the same folder like your project file.

Important: The licenses.licx file does not include the license string itself. It just contains information about the licensed components. In case of TX Text Control (TXTextControl.TextControl), the following string is addded:

TXTextControl.TextControl, TXTextControl, Version=15.0.700.500, Culture=neutral, PublicKeyToken=6b83fe9a75cfb638

As you can see, it contains the namespace and control name, the assembly version, culture information and the unique public key token. Based on that information, the License Compiler (lc.exe) compiles the real license string that will be embedded into the executable assembly. The lc.exe is a small utility of the .NET Framework SDK which is used by Visual Studio during the build process.

Text Control

What if I am using TX Text Control in a user control?

In this case, you need to add the license to the main executable as well. Therefore, you can simply drag and drop a TextControl to a dummy form of the main project, so that the licenses.licx file and the references are added automatically.

After that, you can remove the TextControl from that form again. Or you can simply copy or create a licenses.licx file to the main project folder. In this case, you need to add a reference to TX Text Control manually as well.

Stay in the loop!

Subscribe to the newsletter to receive the latest updates.

Related Posts

ASP.NET CoreC#MailMerge

Create 100,000 Documents in Under an Hour with Parallel MailMerge in .NET C#

The DocumentServer.ParallelMailMerge NuGet package makes it simple to process MailMerge jobs in parallel worker processes. This article shows when to use it, how to call it, and how worker counts…


C#.NETPerformance

Speed Up Document Generation by Factor 2 Using Selection Objects in .NET C#

This article compares two ServerTextControl document generation patterns: Assigning prebuilt Selection objects and formatting text after inserting and selecting it. The benchmark shows an…


ASP.NETDockerLinux

Getting Started: ServerTextControl and MailMerge in a .NET 8 Console…

This article shows how to create a .NET 8 console application on Linux using Docker and WSL that uses the ServerTextControl to create a document and MailMerge to merge JSON data into the document.…


Windows FormsLicensingMSIX

Secure and Deploy .NET Windows Forms Apps with MSIX AppContainer Apps

This article shows how to secure and deploy .NET Windows Forms apps with MSIX AppContainer apps. MSIX is a Windows application packaging format that provides modern packaging for all Windows…


ASP.NETWindows FormsWPF

Encapsulating TX Text Control in Class Libraries

This article describes how to encapsulate TX Text Control in class libraries. This is useful if you want to use TX Text Control in multiple projects and you want to avoid code duplication.

Share on this blog post on: