Corrigir Falhas de Conexão do IronPdfEngine Docker no macOS ARM
Ao conectar uma aplicação .NET ao IronPdfEngine via Docker em um dispositivo macOS ARM (Apple Silicon), a aplicação lança:
Unhandled exception. System.IO.FileNotFoundException: Error loading native library.
Not found in any of the possible locations
IronPdfConnectionType.Docker usa uma implementação mais antiga do gRPC que não suporta arquitetura ARM. No macOS ARM (Apple Silicon), o cliente .NET não consegue carregar o binário nativo do gRPC necessário, mesmo quando a imagem do Docker é forçada a rodar como --platform linux/amd64. Plataformas Windows e Linux x64 não são afetadas.
Solução
Substitua IronPdfConnectionType.Docker por IronPdfConnectionType.RemoteServer na configuração de conexão. RemoteServer usa uma implementação mais nova do gRPC que é compatível com ARM:
using IronPdf;
var config = new IronPdfConnectionConfiguration
{
ConnectionType = IronPdfConnectionType.RemoteServer,
Host = "http://127.0.0.1",
Port = 33350
};
IronPdf.Installation.ConnectToIronPdfHost(config);
IronPdf.License.LicenseKey = Environment.GetEnvironmentVariable("IRONPDF_LICENSE_KEY");
var renderer = new ChromePdfRenderer();
var pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Hello from IronPdfEngine</h1>");
pdf.SaveAs("output.pdf");
using IronPdf;
var config = new IronPdfConnectionConfiguration
{
ConnectionType = IronPdfConnectionType.RemoteServer,
Host = "http://127.0.0.1",
Port = 33350
};
IronPdf.Installation.ConnectToIronPdfHost(config);
IronPdf.License.LicenseKey = Environment.GetEnvironmentVariable("IRONPDF_LICENSE_KEY");
var renderer = new ChromePdfRenderer();
var pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Hello from IronPdfEngine</h1>");
pdf.SaveAs("output.pdf");
Imports IronPdf
Dim config As New IronPdfConnectionConfiguration With {
.ConnectionType = IronPdfConnectionType.RemoteServer,
.Host = "http://127.0.0.1",
.Port = 33350
}
IronPdf.Installation.ConnectToIronPdfHost(config)
IronPdf.License.LicenseKey = Environment.GetEnvironmentVariable("IRONPDF_LICENSE_KEY")
Dim renderer As New ChromePdfRenderer()
Dim pdf = Await renderer.RenderHtmlAsPdfAsync("<h1>Hello from IronPdfEngine</h1>")
pdf.SaveAs("output.pdf")
Requirements:
- O contêiner Docker do IronPdfEngine deve estar em execução e acessível no host e porta especificados antes de chamar
ConnectToIronPdfHost. - Use
http://, nãohttps://; usarhttps://sem um certificado SSL válido causa erros de corrupção de quadro no canal gRPC.
Veja também: resolver erros de inicialização Vulkan/ANGLE no Docker e corrigir erros de conexão gRPC em Contêineres Azure.

