Find file History
levlam Correctly Dispose native resources in C# example.
GitOrigin-RevId: 60f0720dcac4da811da30e26e834670d62d1a42f
Latest commit 83e28b8 Jul 27, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Add C# example. Mar 11, 2018 Improve Readme. Jul 8, 2018
TdExample.cs Correctly Dispose native resources in C# example. Jul 27, 2018
TdExample.csproj Add C# example. Mar 11, 2018
TdExample.sln Add C# example. Mar 11, 2018

TDLib C# example

This is an example of building TDLib with C++/CLI support and an example of TDLib usage from C#.

Building TDLib

  • Download and install Microsoft Visual Studio 2015 or later.
  • Download and install CMake; choose "Add CMake to the system PATH" option while installing.
  • Install vcpkg or update it to the latest version using vcpkg update and following received instructions.
  • Install zlib and openssl for using vcpkg:
cd <path to vcpkg>
.\vcpkg.exe install openssl:x64-windows openssl:x86-windows zlib:x64-windows zlib:x86-windows
  • (Optional. For XML documentation generation.) Download PHP. Add the path to php.exe to the PATH environment variable.
  • Download and install gperf. Add the path to gperf.exe to the PATH environment variable.
  • Build TDLib with CMake enabling .NET support and specifying correct path to vcpkg toolchain file:
cd <path to TDLib sources>/example/csharp
mkdir build
cd build
cmake -DTD_ENABLE_DOTNET=ON -DCMAKE_TOOLCHAIN_FILE=<path to vcpkg>\scripts\buildsystems\vcpkg.cmake ../../..
cmake --build . --config Release
cmake --build . --config Debug

Example of usage

After TDLib is built you can open and run TdExample project. It contains a simple console C# application with implementation of authorization and message sending. Just open it with Visual Studio 2015 or 2017 and run.

Also see TdExample.csproj for example of including TDLib in C# project with all native shared library dependencies.