# Application Licensing

> Release a licensed WPF app with TX Text Control: license compiled into the assembly, EntryAssembly for libraries, no trial builds, nothing confidential shipped.

- **Product:** TX Text Control .NET for WPF
- **Section:** Documentation
- **Kind:** Topic
- **Path:** TX Text Control .NET for WPF > Deployment Guide > Application Licensing
- **855 words**
- **Web URL:** https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/licensing/
- **LLMs URL:** https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/licensing/llms.txt
- **LLMs-Full URL:** https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/licensing/llms-full.txt

---

Once built, a WPF application with TX Text Control carries its license inside one of its assemblies. The machines it is deployed to need no serial number, no license file, no activation and no runtime license, and you pay no royalties for them. The work lies before the release: the build must contain the full license in the assembly where TX Text Control looks for it, and none of your licensing information may end up in the files you ship.

### The License in the Deployed Application

| Project | The license is compiled from | On the user's machine |
|---|---|---|
| .NET 8 or higher | *txtextcontrol.wpf.license*, added by the package `TXTextControl.TextControl.WPF.SDK` and embedded at build time | Nothing to install |
| .NET Framework | The entries of *licenses.licx*, compiled by the license compiler | Nothing to install |

When the `TextControl` is created, TX Text Control looks for the license in the executable assembly of the application. A WPF user control library or a class library that holds the license names itself with [TextControl.EntryAssembly](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-wpf/textcontrol/entryassembly-property/llms-full.txt) or [ServerTextControl.EntryAssembly](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/servertextcontrol/entryassembly-property/llms-full.txt). [Application Licensing](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/installation/licensing/application/llms-full.txt) in the Installation Guide shows both in code.

Deployed applications are royalty-free, on any number of machines and for any number of users. The conditions are summarized in [Royalty-Free Distribution](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/overview/licensing/#royalty-free-distribution).

### Before You Release

1. **Build with the full version.** A trial version is for evaluation only, may not be distributed in a commercial application and stops working after 30 days.
2. **Check the edition.** Features outside your edition throw a [LicenseLevelException](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/licenselevelexception/llms-full.txt). [Check the Edition at Run Time](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/overview/editions/#check-the-edition-at-run-time) shows how to display the edition the application runs with, or whether it runs as a trial.
3. **Name the assembly with the license.** In a library, set `EntryAssembly` before `InitializeComponent` creates the first `TextControl`.
4. **Leave assembly names alone after the build.** The license is tied to the assembly it was compiled into, and a renamed file doesn't find it. Rename the assembly in the project properties and rebuild, as [User Controls and Class Libraries](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/installation/licensing/application/#user-controls-and-class-libraries) explains.
5. **Let a licensed developer or a build server build it.** A build server needs no license of its own, as [Build Servers](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/installation/licensing/build-servers/llms-full.txt) explains.

### What Stays Out of the Installer

The license agreement forbids passing licensing information to the users of your application. Check that your installer, MSIX package or deployment script contains none of the following:

- *txtextcontrol.wpf.license*, which holds encrypted serial number information unique to your installation
- Serial numbers, license keys or other licensing credentials
- A *nuget.config* with the email address and API token of the Text Control Private NuGet Feed
- *licenses.licx*, which the license compiler of a .NET Framework project reads during the build
- The NuGet package or the setup of TX Text Control, which deliver the files at build time only
- TX Text Control in a form that lets your users create their own TX Text Control applications, or a wrapper library sold as a product of its own

The publish folder and the build output don't contain these files. They only get into a deployment when a script or an installer copies them from the project.

### Related Pages

- [Licensing](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/troubleshooting/licensing/llms-full.txt): license errors on the user's machine.
- [Development Licenses](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/installation/licensing/development/llms-full.txt): how the license gets into a WPF project.
- [Redistribution Overview](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/redistribution/llms-full.txt): the files a deployment contains.

---

## Nearby

- **Previous:** [Deploying .NET Framework Applications](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/dotnet-framework/llms-full.txt)
- **Next:** [MSIX Packaging and Microsoft Store Deployment](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/msix/llms-full.txt)
