部署
本文介绍了 DotNetBrowser 发布包中包含的内容以及需要部署的库。
DotNetBrowser 包含在几个动态库中。 其中一些与 DotNetBrowser 本身有关,另一些则与相应的 Chromium 二进制文件有关。
以下是 DotNetBrowser 分发包中提供的库的列表:
装配 | 大小 | 引用 | 说明 |
---|---|---|---|
DotNetBrowser.dll | ~240 KB | 数据类和接口 | |
DotNetBrowser.Core.dll | ~2 MB | DotNetBrowser.dll DotNetBrowser.Logging.dll | 核心实现 |
DotNetBrowser.Logging.dll | ~23 KB | DotNetBrowser 日志记录 API 执行 | |
DotNetBrowser.Chromium.Win-x86.dll | ~115 MB | Chromium 二进制文件用于 Windows 32 位 | |
DotNetBrowser.Chromium.Win-x64.dll | ~120 MB | Chromium 二进制文件用于 视窗 64 位 | |
DotNetBrowser.Chromium.Win-arm64.dll | ~115 MB | Chromium 二进制文件用于 Windows ARM64 | |
DotNetBrowser.Chromium.Linux-x64.dll | ~125 MB | Chromium 二进制文件用于 Linux 64 位 | |
DotNetBrowser.Chromium.Linux-arm64.dll | ~135 MB | Chromium 二进制文件用于 Linux ARM64 | |
DotNetBrowser.Chromium.macOS-x64.dll | ~111 MB | Chromium 二进制文件用于 macOS 64 位 | |
DotNetBrowser.Chromium.macOS-arm64.dll | ~115 MB | Chromium 二进制文件用于 macOS ARM64 | |
DotNetBrowser.AvaloniaUi.dll | ~180 KB | DotNetBrowser.dll DotNetBrowser.Core.dll | 类和接口 嵌入到 WinForms 应用程序 |
DotNetBrowser.Wpf.dll | ~170 KB | DotNetBrowser.dll DotNetBrowser.Core.dll | 类和接口 嵌入到 WPF 应用程序中 |
DotNetBrowser.WinForms.dll | ~120 KB | DotNetBrowser.dll DotNetBrowser.Core.dll | 类和接口 嵌入到 WinForms 应用程序 |
protobuf-net.dll | ~270 KB | .NET 的协议缓冲区实现。 它用于执行 .NET 端与 Chromium 引擎之间的通信 |
Windows
AnyCPUDotNetBrowser.dll
, DotNetBrowser.Core.dll
, DotNetBrowser.Logging.dll
, DotNetBrowser.Chromium.Win-x86.dll
, DotNetBrowser.Chromium.Win-x64.dll
, DotNetBrowser.Chromium.Win-arm64.dll
和 protobuf-net.dll
库必须包含在您的 .NET 应用程序中。 首次,DotNetBrowser 会检查应用程序的架构,并提取或使用适当的 Chromium 二进制文件。 在 Windows 64 位系统中,DotNetBrowser 会提取并使用 Chromium 64 位二进制文件。 在 Windows 32 位系统中,是 Chromium 32 位二进制文件。
x86DotNetBrowser.dll
, DotNetBrowser.Core.dll
, DotNetBrowser.Logging.dll
, DotNetBrowser.Chromium.Win-x86.dll
和 protobuf-net.dll
。 如果是 32 位 .NET 应用程序,将提取并使用 Chromium 32 位二进制文件。 Windows 32 位和 64 位环境均支持 Chromium 32 位二进制文件。
x64DotNetBrowser.dll
, DotNetBrowser.Core.dll
, DotNetBrowser.Logging.dll
, DotNetBrowser.Chromium.Win-x64.dll
和 protobuf-net.dll
。 如果是 64 位 .NET 应用程序,将提取并使用 Chromium 64 位二进制文件。 如果是 32 位 .NET 应用程序,则会抛出异常。
ARM64DotNetBrowser.dll
, DotNetBrowser.Core.dll
, DotNetBrowser.Logging.dll
, DotNetBrowser.Chromium.Win-arm64.dll
和 protobuf-net.dll
。 如果是 ARM64 .NET 应用程序,将提取并使用 Chromium ARM64 二进制文件。
根据您的 .NET 应用程序框架,将添加 DotNetBrowser.Wpf.dll
或 DotNetBrowser.WinForms.dll
。
Linux
x64DotNetBrowser.dll
, DotNetBrowser.Core.dll
, DotNetBrowser.Logging.dll
, DotNetBrowser.Chromium.Linux-x64.dll
和 protobuf-net.dll
。 如果是 64 位 .NET 应用程序,将提取并使用 Chromium 64 位二进制文件。 如果是 32 位 .NET 应用程序,则会抛出异常。
ARM64DotNetBrowser.dll
, DotNetBrowser.Core.dll
, DotNetBrowser.Logging.dll
, DotNetBrowser.Chromium.Linux-arm64.dll
和 protobuf-net.dll
。 如果是 ARM64 .NET 应用程序,将提取并使用 Chromium ARM64 二进制文件。 如果是 ARM .NET 应用程序,则会抛出异常。
如果您的应用程序使用了 Avalonia UI,则会添加 DotNetBrowser.AvaloniaUi.dll
。
macOS
x64DotNetBrowser.dll
, DotNetBrowser.Core.dll
, DotNetBrowser.Logging.dll
, DotNetBrowser.Chromium.macOS-x64.dll
和 protobuf-net.dll
。 如果是 64 位 .NET 应用程序,将提取并使用 Chromium 64 位二进制文件。 如果是 32 位 .NET 应用程序,则会抛出异常。
ARM64DotNetBrowser.dll
, DotNetBrowser.Core.dll
, DotNetBrowser.Logging.dll
, DotNetBrowser.Chromium.macOS-arm64.dll
和 protobuf-net.dll
。 如果是 ARM64 .NET 应用程序,将提取并使用 Chromium ARM64 二进制文件。 如果是 ARM .NET 应用程序,则会抛出异常。
如果您的应用程序使用了 Avalonia UI,则会添加 DotNetBrowser.AvaloniaUi.dll
。
作为用户,您可以选择部署所需库的方式。
Citrix
DotNetBrowser 可在 Windows Server 2016 及更高版本的 Citrix 环境中使用。
要运行 Chromium 和 DotNetBrowser,需要禁用 Citrix API Hooks。
应禁用位于
Chromium 二进制文件目录中的 chromium.exe
文件的 API hooks。
替代解决方案是禁用 Chromium 沙盒。 请记住,这存在安全风险。 有关沙盒的更多信息,请参阅此文章