List icon Contents


This guide describes how to work with the Chromium build used by DotNetBrowser.

You do not need to install Chromium or Google Chrome on the target environment to use DotNetBrowser as it uses and deploys its own Chromium build.


Chromium binaries for each supported platform are located inside the corresponding DotNetBrowser DLLs:

  • DotNetBrowser.Chromium.Win-x86.dll – Chromium binaries for Windows 32-bit.
  • DotNetBrowser.Chromium.Win-x64.dll – Chromium binaries for Windows 64-bit.
  • DotNetBrowser.Chromium.Win-arm64.dll – Chromium binaries for Windows ARM64.
  • DotNetBrowser.Chromium.Linux-x64.dll – Chromium binaries for Linux 64-bit.
  • DotNetBrowser.Chromium.Linux-arm64.dll – Chromium binaries for Linux ARM64.
  • DotNetBrowser.Chromium.macOS-x64.dll – Chromium binaries for macOS 64-bit.
  • DotNetBrowser.Chromium.macOS-arm64.dll – Chromium binaries for macOS ARM64 (Apple Silicon).

To use Chromium, you need to extract its binaries.


DotNetBrowser extracts the Chromium binaries for the target platform from the corresponding DLL during the first launch.

On Windows, they are placed in the %LocalAppData%\Temp\dotnetbrowser-chromium directory.

On macOS and Linux, the binaries are extracted into the user’s temp directory.

DotNetBrowser checks whether the directory contains the required Chromium files. If no files are found, it extracts the binaries from the DLLs referenced in the application.

You can customize the default path to the directory, where the binaries are extracted, or extract the binaries programmatically and tell the library where they are located:

EngineOptions options = new EngineOptions.Builder
    ChromiumDirectory = @"C:\Users\Me\.DotNetBrowser"
binariesExtractor = new ChromiumBinariesExtractor();
// ...
engine = EngineFactory.Create(options);
Dim options = New EngineOptions.Builder With 
    .ChromiumDirectory = "C:\Users\Me\.DotNetBrowser\chromium"
Dim binariesExtractor = New ChromiumBinariesExtractor()
' ...
engine = EngineFactory.Create(options)

Chromium Version

You can obtain the information on Chromium version used by the current version of DotNetBrowser as ChromiumInfo.Version constant value. This field allows you to return the version of Chromium engine programmatically in your project.


You can specify the path to the Chromium binaries directory using EngineOptions when constructing the IEngine as shown in the code sample below:

IEngine engine = EngineFactory.Create(new EngineOptions.Builder
    ChromiumDirectory = @"C:\Users\Me\.DotNetBrowser\chromium"
Dim engine As IEngine = EngineFactory.Create(New EngineOptions.Builder With 
    .ChromiumDirectory = "C:\Users\Me\.DotNetBrowser\chromium"

The path can be either relative or absolute.

If the directory already has the required Chromium binaries, the library will not perform the extraction.

If the directory is corrupted and some Chromium files are missing, DotNetBrowser will extract the binaries and overwrite the existing files.


Each DotNetBrowser version is only compatible with its own Chromium binaries. The binaries for a specific version do not support other DotNetBrowser versions.

To make sure that the Chromium binaries are compatible with the current DotNetBrowser version, the library verifies the binaries.


Chromium accepts the command line switches that change the behavior of the features, help to debug, or turn the experimental features on.

The list of switches and their description can be found in the documentation provided by Peter Beverloo.

DotNetBrowser does not support all the Chromium switches. Therefore, we recommend configuring Chromium using the Engine Options instead of switches.



DotNetBrowser supports Chromium Sandbox on Windows. Sandbox is enabled by default, but you can disable it using the code sample below:

engine = EngineFactory.Create(new EngineOptions.Builder 
    SandboxDisabled  = true
engine = EngineFactory.Create(New EngineOptions.Builder With 
    .SandboxDisabled = True

Chrome extensions

DotNetBrowser does not support the extensions designed for the Chrome application.

The library integrates only with the web browser control that renders the web content. Thus, it does not have the Chrome GUI, with elements like tool bar and context menu, required to integrate the extensions.

Go Top