Search code examples
c#.netgactxtextcontrol

Build error after installing TXTextControl


I have installed TXTextControl .NET 15.1 with a valid license key on a brand-new Windows Server 2016, and I have installed Visual Studio Build Tools 2017 including .NET 4.6.2 and .NET 4.7.2.

When I build my C# project (targeting .NET 4.6.2), I get the following error:

(CompileLicxFiles target) -> 
licenses.licx(1): error LC0004: Exception occurred creating type 'TXTextControl.ServerTextControl, TXTextControl, Version=15.1.800.500, Culture=neutral, PublicKeyToken=6b83fe9a75cfb638' System.DllNotFoundException: The TX Text Control kernel DLL file could not be found. 

The error The TX Text Control kernel DLL file could not be found hinted at something missing in the GAC, which I then proceeded to check out.

Running the gacutil.exe that came with .NET 4.7.2 indicated that the necessary registrations for

  • txkernel.dll
  • txic.dll
  • txtools.dll

were not there.

I then went on and installed them manually, both the x86 and AMD64 versions, from their respective locations:

  • C:\Program Files\The Imaging Source Europe GmbH\TX Text Control 15.1.NET\BrowserBin\txkernel.dll
  • C:\Program Files\The Imaging Source Europe GmbH\TX Text Control 15.1.NET\BrowserBin64\txkernel.dll
  • etc.

But it still didn't work!

I then contacted support, but their reply was that my license was no longer valid for support, so they basically refused to answer any questions about the product.

After a while I then got the supporter to say that the company never test OLD versions of TXTextControl on NEW versions of Windows, so my best bet would be to purchase a new license.

Since the license is pretty expensive, and our (PERPETUAL!) license is perfectly valid for running the product, I am determined to find a solution to this issue.

Can anyone help me?


Solution

  • After some struggling, I found the solution: Install .NET 3.5 BEFORE installing TXTextControl .NET.

    My hypothesis is that the TXTextControl installer fails to check the exit codes, when running gacutil.exe, so it doesn't detect that the registrations have failed.

    This means that the recipe for solving this problem (which I post here for Bingle to pick up), is to:

    • wipe any GAC registrations you may have made in an attempt to manually install the TXTextControl DLLs
    • uninstall TXTextControl .NET
    • go to Server Manager and "Add Roles and Features", and then on the "Features" pane, you put a checkmark next to ".NET Framework 3.5 Features" (which causes a single checkmark to be in ".NET Framework 3.5 (includes .NET 2.0 and 3.0)")
    • reinstall TXTextControl .NET

    After this was done, I could build my code!