TX Text Control .NET for WPF

Development Licenses

Topic

TX Text Control .NET for WPF is licensed per developer: each person who writes code with it has a serial number assigned. From there, the license reaches a project in one of two ways, depending on its target. A .NET 8 or higher project gets a license file from the NuGet package, and a .NET Framework project lists its licensed classes in licenses.licx for the license compiler. The assignment and both ways are described below.

Assign a Serial Number to a Developer

The owner of the Text Control account assigns the serial numbers of a product to the developers who use it:

  1. Sign in to the Text Control account and open Manage Products.
  2. Next to a serial number of TX Text Control .NET for WPF, click Manage, then Assign.
  3. Enter the developer's email address and click Assign.

The list shows each serial number with the developer it is assigned to. A NuGet logo marks the developers who have an API token for the Text Control Private NuGet Feed:

The Manage Products page of a Text Control account with a TX Text Control .NET for WPF Professional 34.0 subscription and four serial numbers, each assigned to a developer, two of them marked with a NuGet logo.

For a serial number that includes NuGet access, the developer receives an email with the serial number and a link to a personal nuget.config. Configuring Package Sources explains the file, and Licensing Overview explains who needs a license.

Two Ways Into Your Project

.NET 8 or higher.NET Framework
Where the license comes fromtxtextcontrol.wpf.license in the package TXTextControl.TextControl.WPF.SDKThe installed assemblies, named in licenses.licx
What puts it into the assemblyThe build, which embeds the file as a resourceThe license compiler of the .NET Framework
What you maintainNothing but the package referenceOne entry per licensed class, with the full assembly version

.NET 8 or Higher: txtextcontrol.wpf.license

When you install TXTextControl.TextControl.WPF.SDK, the file txtextcontrol.wpf.license is added to the project with the build action Embedded Resource. Every build compiles it into your assembly. Since version 32.0 with Service Pack 2, this is how all .NET projects are licensed, and they have no licenses.licx. Microsoft's license compiler, which read that file, no longer exists in current .NET.

  • From the private feed, the package arrives with the license of the developer the feed authenticated, in the versions that developer's serial number covers.
  • From Text Control Offline Packages, the package contains the license of the setup installed on the machine.

The file holds encrypted serial number information of your installation. It must not be given to other users or distributed in any form: don't commit it to a public repository and don't ship it with your application.

.NET Framework: licenses.licx

A .NET Framework project, created with the WPF App (.NET Framework) template, keeps using licenses.licx, a text file that Visual Studio's license mechanism reads. It names each licensed class and its assembly. When you build, the license compiler creates the licenses from it and embeds them into the executable. The file itself contains no license.

In the TX Text Control WPF samples, the file is Properties\licenses.licx. Its entry for the TextControl of version 32.0 is:

TXTextControl.WPF.TextControl, TXTextControl.WPF, Version=32.0.1700.500, Culture=neutral, PublicKeyToken=6b83fe9a75cfb638
  • The full version is required. Since version 30.0, the setup no longer registers the assemblies in the global assembly cache. An entry without a version, or with an old one, can pick up the assembly of an older installed version and cause a licensing error.
  • Take the version from your references. The version in each entry is the version of the TX Text Control assemblies the project references.
  • Set the build action. If you add licenses.licx yourself, set its Build Action to Embedded Resource.
  • Update it with each major version. See Upgrading from Previous Versions.

If an exception reports "The following control could not be licensed:", the license check found no valid license. Licensing in Troubleshooting goes through the causes.

The Trial Version

The trial setup installs the full product without a serial number, and applications built with it run as the trial version. What the trial allows is summarized in Trial Version, and Check the Edition at Run Time shows how an application finds out whether it runs as a trial.