Distribution and Deployment for Microsoft Windows

Core Requirements

Deploy the native runtime files required by your application's process architecture for basic SDK functionality and Windows printer support. Use matching files from the same SDK release. Applications that use both 32-bit and 64-bit processes need both sets.

32-bit process (x86) 64-bit process (x64)
TFormer9.dll TFormer9x64.dll
TFormerRep9.dll TFormerRep9x64.dll
TECBaseU.dll TECBaseUx64.dll
FreeImageMT.dll FreeImageMTx64.dll
freetype248MT.dll freetype248MTx64.dll
iconvx32.dll iconvx64.dll
libxml2x32.dll libxml2x64.dll
libxsltx32.dll libxsltx64.dll
zlib1.dll zlib1x64.dll

Include TFPrint.exe only when the application uses command-line printing. See API Specific Requirements for additional interface files and Requirements for PostScript/HTML Output for output resources.

Include the supplied TFORMer.xml configuration file for shared output defaults such as page size and PDF compression. See Configuration.

The TEC-IT setup installs the required Microsoft Visual C++ 2015–2022 runtime components for the installed x86 and x64 architectures. A custom redistribution must provide the matching x86 and/or x64 runtime for every redistributed TFORMer component.

Contact TEC-IT Support if you need help with deployment.

TFPrint Executable Names

The 32-bit SDK setup installs TFPrint.exe. The 64-bit SDK setup installs the 64-bit executable as TFPrint.exe and TFPrintx64.exe, and also provides the 32-bit executable as TFPrintx32.exe. Use the executable that matches the architecture of the ODBC driver and runtime files required by your application.

Third-party Notices

Keep the supplied copyright, license notices and credits with the components you redistribute. Use the notices from the same SDK release and delivery package as those components; do not use another platform's file list as a substitute.

The supplied notices include FreeImage.LICENSE, freetype.LICENSE, iconv.LICENSE, libart_lgpl.LICENSE, libxml2.LICENSE, libxslt.LICENSE, and zlib.README. zlib.README is a copyright and license notice, not a runtime library. Include the supplied credits document as well; the NuGet package names it TFORMer_credits.htm.

Licensing

For license types, validity, confidentiality and API examples, see Licensing.

Automatic License Lookup on Windows

TFORMer SDK searches for TFORMer.ini in this order:

  1. The application executable's directory.
  2. The TFORMer runtime DLL directory.
  3. The shared configuration directory, normally C:\ProgramData\TEC-IT\TFORMer\9\.

For a standard SDK installation, you can place the file in the runtime Bin directory:

  • C:\Program Files\TEC-IT\TFORMer9 SDK\Bin
  • C:\Program Files (x86)\TEC-IT\TFORMer9 SDK\Bin for a 32-bit installation

If no license data is read from these files, the SDK checks the registry in this order:

  1. HKEY_LOCAL_MACHINE\Software\TEC-IT Datenverarbeitung GmbH\TFORMer SDK\9 for machine-wide license data.
  2. HKEY_CURRENT_USER\Software\TEC-IT Datenverarbeitung GmbH\TFORMer SDK\9 for the account running the application.

Automatic lookup uses the first successfully read license data, even if that license has expired. Later locations are then ignored. A per-user registry entry does not override license data already read from a file or the machine-wide entry. The user's configuration directory is not part of the SDK's automatic license-file search.

For a file outside these locations, use your interface's explicit license-file method. For help with registry licensing, contact TEC-IT Support.

API Specific Requirements

COM API

Deploy TFORMerCOM9.dll for a 32-bit client or TFORMerCOM9x64.dll for a 64-bit client. Use setup to register the installed COM server. For a custom deployment, register the release- and architecture-matched DLL with regsvr32.exe.

.NET API

A .NET deployment needs the managed assembly for the application's target runtime and the matching native TFORMer runtime from the same SDK release:

  • TECIT.TFORMer.dll is built for .NET Framework 4.5 and is used by the .NET Framework samples. The maintained .NET 8 Linux command-line sample also references this assembly.
  • TECIT.TFORMer.Std.dll targets .NET Standard 2.0.
  • Deploy TFormer9.dll for a 32-bit process or TFormer9x64.dll for a 64-bit process.

Windows setup installs both managed assemblies in the SDK Bin directory. Only TECIT.TFORMer.dll can additionally be installed in the Global Assembly Cache (GAC). Applications can instead deploy the selected assembly privately. For .NET Framework applications, the .NET Framework download page provides supported installers.

NuGet deployment

The Windows NuGet package copies the native libraries, supplied third-party notices and five default configuration/output files to the application's Build and Publish directories:

  • TFORMer.xml
  • header.ps and footer.ps
  • template.html and footer.html

The notices include TFORMer_credits.htm and the supplied .LICENSE and zlib.README files. They are copied beside the application files, not into a separate notices subdirectory.

An existing destination configuration/output file is not overwritten by its package default. To supply all five files yourself, set TFORMerCopyDefaultConfiguration to false in the application project. This option does not disable copying the native libraries or notices.

Check the final application's Build and Publish output before deployment.

Java API

Use Java 8 or later. Keep the JAR, JNI library, and native TFORMer runtime from the same SDK release and process architecture. Deploy these additional files:

  • JTFORMer9.jar

  • TFORMer9JNI.dll for a 32-bit process or TFORMer9JNIx64.dll for a 64-bit process

Requirements for PostScript/HTML Output

Deploy the output resources for every output path used by your application. The TEC-IT Windows setup installs these files together with TFORMer.xml under C:\ProgramData\TEC-IT\TFORMer\9\. Relative resource names are resolved through the TFORMer runtime/configuration search path.

  • PostScript output

    • header.ps provides the PostScript page header.
    • footer.ps provides the PostScript page footer.
  • HTML output

    • template.html provides the generated HTML index template.
    • footer.html provides the footer links appended to generated HTML pages.

Distribution of TFORMer Document Layouts

Ship the Form Layout selected by your application together with every external data or image resource that the layout uses.

  • Repository-based Form Layouts Ship the repository (.tfr) and its complete associated project/form directory tree, including the referenced .xmd layout files and any external .xml data files and image resources. Preserve every relative path below the .tfr file, including the Forms/ structure.

  • Stand-alone Form Layouts Ship each stand-alone Form Layout (.tff). Include XML data files and image files only when your application or layout references those external resources.

  • ZIP archive: TFORMer SDK can load a ZIP archive directly. Package one primary repository or stand-alone layout per archive, together with every required layout, data, and image file. Preserve the directory structure relative to the primary .tfr or .tff file.

  • Base64 string: To load an existing layout or repository, pass BASE64:<encoded-data> instead of a filename. Encode either the layout/repository file bytes or a complete ZIP archive. Encoding a .tff or .tfr file alone does not include external files referenced by it. To transfer a complete repository or a layout with accompanying files, encode a ZIP containing the required files and their relative directory structure. Use a complete ZIP archive, not a raw compressed stream.

Search documentation

Search in
More scopes
Additional scopes

All contents