# Deployment

> Fix WPF applications that fail on the target machine: files missing from the executable folder, publishing for win-x64, MSXML and installers with old DLL names.

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

---

An application that runs on your development machine can fail on the machine of a user when files of TX Text Control are missing or in the wrong place. No message names the missing file in these cases, so the problems below start from how the application was deployed. An application that fails because of the bitness, the Visual C++ runtime or a native library is covered on [Native Libraries and Architecture Mismatches](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/troubleshooting/native-libraries/llms-full.txt), and a license error after deployment on [Licensing](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/troubleshooting/licensing/llms-full.txt).

### Files Are Missing After Deploying a .NET Framework Application

The application starts on your machine, but on the target machine it fails as soon as the `TextControl` is created, or it can't load or save some formats.

A .NET Framework application references the assemblies of the setup, and the build doesn't copy the native libraries for you. The managed assemblies, the native libraries of the application's bitness and, for the XML features, the Microsoft XML parser must all be on the target machine, with the files of TX Text Control in the folder of the executable rather than in subfolders.

Compare the application folder with [Arrange the Files](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/dotnet-framework/#arrange-the-files), which lists the steps, and check the XML parser as [The XML Parser](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/vc-runtime/#the-xml-parser) describes.

### A Published .NET Application Lacks the Native Libraries

A .NET 8 or later application that you published fails on the target machine, while it runs from Visual Studio.

The package `TXTextControl.TextControl.WPF.SDK` contains the native libraries of TX Text Control for 32-bit and 64-bit Windows, but only a publish with a target runtime, such as `win-x64`, copies all required files, including the format filters, next to the executable. Publish again with the target runtime set, as [Publishing .NET Applications](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/dotnet/llms-full.txt) shows, and deploy the complete content of the publish folder.

### An Installer Doesn't Include the Files of TX Text Control

An installer that you build yourself installs your application, but the application fails on the target machine.

An installer that lists the files by hand has to list every file of TX Text Control, including the native libraries. The format filters, such as *tx34\_pdf.dll*, carry the major version in their names, so their names change with each major version. Version 33.0 also renamed other files: *TXSVGResources.dll* replaces *TXSVGGenerator.dll*, and the core libraries *txkernel.dll*, *txtools.dll* and *txic.dll* became *tx33.dll*, *tx33\_tls.dll* and *tx33\_ic.dll*, which are *tx34.dll*, *tx34\_tls.dll* and *tx34\_ic.dll* in version 34.0. A project that references the NuGet package gets the new names automatically; a file list doesn't, so after an upgrade the installer misses the new native libraries or deploys the files of the previous version.

1. Compare the file list of your installer with the files of the version you ship. For .NET applications, take the files from the publish folder.
2. Update the names in the file list after each major version, as [Breaking Changes](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/whats-new/breaking-changes/llms-full.txt) describes.

### An MSIX Package Runs With Limited Access

An application packaged as MSIX with partial trust can't reach files or other resources that it can reach when it runs unpackaged.

With the trust level **Partial Trust**, the Windows Application Packaging Project runs the application in an AppContainer, which reaches only the resources the package declares. Check the needed resources under **Capabilities** in *Package.appxmanifest*, then build and install the package again, as [Run in an AppContainer](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/msix/#run-in-an-appcontainer) describes.

### Related Pages

- [Deployment Guide](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/deployment/llms-full.txt): the files you ship and how to publish your application.
- [Native Libraries and Architecture Mismatches](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/troubleshooting/native-libraries/llms-full.txt): bitness, the Visual C++ runtime and native libraries.
- [Licensing](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/troubleshooting/licensing/llms-full.txt): license errors on the target machine.

---

## Nearby

- **Previous:** [Mail Merge](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/troubleshooting/mail-merge/llms-full.txt)
- **Next:** [Examples](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/examples/llms-full.txt)
