Deployment

This article describes what is included in DotNetBrowser distribution package and libraries to be deployed.

DotNetBrowser is supplied in a few dynamic libraries. Some of them are related to DotNetBrowser itself and others to the appropriate Chromium binary files.

Here’s a list of the libraries provided in DotNetBrowser distribution package:

Assembly Size References Description
DotNetBrowser.dll ~240
KB
  Data classes and interfaces
DotNetBrowser.Core.dll ~2
MB
DotNetBrowser.dll
DotNetBrowser.Logging.dll
Core implementation
DotNetBrowser.Logging.dll ~23
KB
  DotNetBrowser Logging API
implementation
DotNetBrowser.Chromium.Win-x86.dll ~115
MB
  Chromium binaries for
Windows 32-bit
DotNetBrowser.Chromium.Win-x64.dll ~120
MB
  Chromium binaries for
Windows 64-bit
DotNetBrowser.Chromium.Win-arm64.dll ~115
MB
  Chromium binaries for
Windows ARM64
DotNetBrowser.Chromium.Linux-x64.dll ~125
MB
  Chromium binaries for
Linux 64-bit
DotNetBrowser.Chromium.Linux-arm64.dll ~135
MB
  Chromium binaries for
Linux ARM64
DotNetBrowser.Chromium.macOS-x64.dll ~111
MB
  Chromium binaries for
macOS 64-bit
DotNetBrowser.Chromium.macOS-arm64.dll ~115
MB
  Chromium binaries for
macOS ARM64
DotNetBrowser.AvaloniaUi.dll ~180
KB
DotNetBrowser.dll
DotNetBrowser.Core.dll
Classes and interfaces for
embedding into an Avalonia UI app
DotNetBrowser.Wpf.dll ~170
KB
DotNetBrowser.dll
DotNetBrowser.Core.dll
Classes and interfaces for
embedding into a WPF app
DotNetBrowser.WinForms.dll ~120
KB
DotNetBrowser.dll
DotNetBrowser.Core.dll
Classes and interfaces for
embedding into a WinForms
app
protobuf-net.dll ~270
KB
  Protocol Buffers
implementation for .NET.
It is used to perform
the communication between
the .NET side and
Chromium engine


Windows

AnyCPU
DotNetBrowser.dll, DotNetBrowser.Core.dll, DotNetBrowser.Logging.dll, DotNetBrowser.Chromium.Win-x86.dll, DotNetBrowser.Chromium.Win-x64.dll, DotNetBrowser.Chromium.Win-arm64.dll and protobuf-net.dll libraries must be included in your .NET application. For the first time, DotNetBrowser checks the applications architecture and extracts or uses the appropriate Chromium binaries. On Windows 64-bit, DotNetBrowser extracts and uses Chromium 64-bit binaries. On Windows 32-bit these are Chromium 32-bit binaries.

x86
DotNetBrowser.dll, DotNetBrowser.Core.dll, DotNetBrowser.Logging.dll, DotNetBrowser.Chromium.Win-x86.dll and protobuf-net.dll. If it is a 32-bit .NET application, Chromium 32-bit binaries will be extracted and used. Chromium 32-bit binaries are supported for both Windows 32-bit and 64-bit environments.

x64
DotNetBrowser.dll, DotNetBrowser.Core.dll, DotNetBrowser.Logging.dll, DotNetBrowser.Chromium.Win-x64.dll and protobuf-net.dll. If it is a 64-bit .NET application, Chromium 64-bit binaries will be extracted and used. If it is a 32-bit .NET application, an exception is thrown.

ARM64
DotNetBrowser.dll, DotNetBrowser.Core.dll, DotNetBrowser.Logging.dll, DotNetBrowser.Chromium.Win-arm64.dll and protobuf-net.dll. If it is an ARM64 .NET application, Chromium ARM64 binaries will be extracted and used.

DotNetBrowser.Wpf.dll, DotNetBrowser.WinForms.dll, or DotNetBrowser.AvaloniaUi.dll is added depending on your .NET applications framework.

Linux

x64
DotNetBrowser.dll, DotNetBrowser.Core.dll, DotNetBrowser.Logging.dll, DotNetBrowser.Chromium.Linux-x64.dll and protobuf-net.dll. If it is a 64-bit .NET application, Chromium 64-bit binaries will be extracted and used. If it is a 32-bit .NET application, an exception is thrown.

ARM64
DotNetBrowser.dll, DotNetBrowser.Core.dll, DotNetBrowser.Logging.dll, DotNetBrowser.Chromium.Linux-arm64.dll and protobuf-net.dll. If it is an ARM64 .NET application, Chromium ARM64 binaries will be extracted and used. If it is an ARM .NET application, an exception is thrown.

DotNetBrowser.AvaloniaUi.dll is added if your application uses Avalonia UI.

macOS

x64
DotNetBrowser.dll, DotNetBrowser.Core.dll, DotNetBrowser.Logging.dll, DotNetBrowser.Chromium.macOS-x64.dll and protobuf-net.dll. If it is a 64-bit .NET application, Chromium 64-bit binaries will be extracted and used. If it is a 32-bit .NET application, an exception is thrown.

ARM64
DotNetBrowser.dll, DotNetBrowser.Core.dll, DotNetBrowser.Logging.dll, DotNetBrowser.Chromium.macOS-arm64.dll and protobuf-net.dll. If it is an ARM64 .NET application, Chromium ARM64 binaries will be extracted and used. If it is an ARM .NET application, an exception is thrown.

DotNetBrowser.AvaloniaUi.dll is added if your application uses Avalonia UI.

As a user, you can choose the way to deploy the required libraries.

Citrix

DotNetBrowser can be used in Citrix environment with Windows Server 2016 and higher.

To run Chromium and DotNetBrowser, it’s required to disable Citrix API Hooks.

The API hooks should be disabled for chromium.exe file located in Chromium binaries directory.

Alternative solution is to disable Chromium sandbox. Keep in mind that this is a security risk. Find more information about sandbox in this article.

Go Top