You are here: Start » C# Project Configuration

C# Project Configuration

This document describes FabImage Deep Learning Library .NET only. For more information about FIL.NET see its documentation.

Requirements

FabImage Deep Learning Library .NET is designed to be a part of applications working under control of the Microsoft Windows operating system. Supported versions are: 7, 8/8.1 and 10. To build an application using FabImage Deep Learning Library .NET under Microsoft Windows, Microsoft Visual Studio environment is required. Supported versions are: 2015, 2017 and 2019.

Directories

FabImage Deep Learning Library .NET is distributed as a managed 64-bit assemblies (*.dll). Assemblies are located in following paths:

  • %FILDL_PATH1_0%\bin\x64\FilDl.Net.dll - containing .NET wrappers for FILDL.dll.
  • %FILDL_PATH1_0%\bin\x64\Fil.Net.TS.dll - this assembly should be referenced only in case of creating application using FilDl.Net but not FIL.NET (see below).

where %FILDL_PATH1_0% is an environment variable set during FabImage Deep Learning installation.

Configuring Project

To built application with FabImage Deep Learning Library .NET, FilDl.Net.dll assembly must be referenced. It can be done using typical mechanisms provided by Microsoft Visual Studio.

In rare case of creating application without using FIL.NET, Fil.Net.TS.dll assembly, provided by FabImage Deep Learning (see above), have to be also referenced.

In most cases, created application will also use FIL.NET. In such case, is it advised to reference Fil.Net.TS.dll assembly provided by FIL.NET. Moreover, make sure that Application | Auto-generate binding redirects project setting is enabled. Used FIL.NET should not have older than FilDl.Net - it may result in CS1705 error regarding FilDl.Net and Fil.Net.TS.

To have the built application work properly, besides FilDl.Net.dll assembly there must be also native FILDL.dll library present in the application directory. This can be achieved with PostBuildEvent which will copy appropriate version of the FILDL.dll library:

    <PostBuildEvent>
        xcopy /D /Y "$(FILDL_PATH1_0)\bin\x64\FILDL.dll" "$(TargetDir)"
    </PostBuildEvent>

All programs using FILDL.dll have to load DLL files from Deps_x64 subdirectory of FabImage Deep Learning installation directory. Common ways to ensure that are:

  • add path to Deps_x64 directory to PATH environment variable, or
  • copy contents of Deps_x64 to some directory listed in PATH environment variable, or
  • copy contents of Deps_x64 next to FILDL.dll.

Running FabImage Deep Learning Service is not required for using FabImage Deep Learning Library .NET (this is even discouraged).

Previous: C++ Project Configuration Next: Known Issues