You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Avalonia中配置CefNet时程序启动失败,错误码0x80000003

问题

我正尝试在Avalonia应用中配置CefNet,以下是我的Program.cs代码:

internal class Program
{
    // Initialization code. Don't use any Avalonia, third-party APIs or any
    // SynchronizationContext-reliant code before AppMain is called: things aren't initialized
    // yet and stuff might break.
    [STAThread]
    public  static void Main(string[] args)
    {
        var webRootPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "webcomponents");
        var server = new WebServer("http://localhost:2005");
        server.WithStaticFolder("/", webRootPath, false);
        server.RunAsync();
        //initialize cefnet
        var settings = new CefSettings();
        settings.NoSandbox = true;
        settings.MultiThreadedMessageLoop = false; // or true
        settings.WindowlessRenderingEnabled = true;
        settings.LocalesDirPath = @"C:\Users\noble\Downloads\cef_binary_105.3.39+g2ec21f9+chromium-105.0.5195.127_windows64\cef_binary_105.3.39+g2ec21f9+chromium-105.0.5195.127_windows64\Resources\locales";
        settings.ResourcesDirPath = @"C:\Users\noble\Downloads\cef_binary_105.3.39+g2ec21f9+chromium-105.0.5195.127_windows64\cef_binary_105.3.39+g2ec21f9+chromium-105.0.5195.127_windows64\Resources";

        var app = new CefNetApplication();
        app.Initialize(@"C:\Users\noble\Downloads\cef_binary_105.3.39+g2ec21f9+chromium-105.0.5195.127_windows64\cef_binary_105.3.39+g2ec21f9+chromium-105.0.5195.127_windows64\Release", settings);
        BuildAvaloniaApp()
        .StartWithClassicDesktopLifetime(args);
       
    }


    // Avalonia configuration, don't remove; also used by visual designer.
    public static AppBuilder BuildAvaloniaApp()
        => AppBuilder.Configure<App>()
            .UsePlatformDetect()
            .LogToTrace()
            .UseReactiveUI();
}

调试程序时,程序无法启动,仅在调试控制台看到信息:

The program '[20424] Dynamo Desktop.exe' has exited with code 2147483651 (0x80000003).

无其他错误或异常,请问我哪里操作有误?

分析与解决建议
  • 路径转义错误:Windows路径中的\是转义字符,未加@前缀的普通字符串会解析错误,导致Cef无法定位资源目录。必须给所有路径字符串添加@前缀,或把\替换为\\。
  • 初始化顺序冲突:当前先初始化Cef再启动Avalonia,可能导致线程模型冲突。建议调整顺序:先启动Avalonia的StartWithClassicDesktopLifetime,再初始化Cef;或者将settings.MultiThreadedMessageLoop设为true,让Cef独立管理消息循环。
  • 依赖文件缺失:检查指定的Release目录下是否存在完整的Cef二进制文件(如libcef.dll、chrome_elf.dll等),且文件架构(x64)与应用目标架构一致,缺失核心文件会直接导致进程退出。
  • 权限问题:即使设置了NoSandbox=true,部分环境下仍需管理员权限运行程序,右键以管理员身份启动调试尝试解决。
  • 开启日志排查:在CefSettings中添加日志配置,生成详细启动日志定位问题:
    settings.LogFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "cef_log.txt");
    settings.LogSeverity = CefLogSeverity.Verbose;
    

内容的提问来源于stack exchange,提问作者Noble Eugene

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 19:47:39