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

Electron.NET调用CreateWindowAsync未使用指定端口问题排查

Electron.NET 加载URL端口丢失问题排查

可能的原因及解决方法

  • 配置文件覆盖参数
    检查项目根目录的electron.manifest.json文件,若其中startUrl字段设为http://localhost/,会覆盖Program.cs中传入的带端口URL。将该字段修改为http://localhost:5001即可。

  • CreateWindowAsync调用格式错误
    确认Program.cs中的调用逻辑是否正确,正确写法应将URL作为第二个独立参数传入,而非嵌入BrowserWindowOptions:

    await Electron.WindowManager.CreateWindowAsync(new BrowserWindowOptions
    {
        Width = 1200,
        Height = 800,
        WebPreferences = new WebPreferences { NodeIntegration = true }
    }, "http://localhost:5001");
    
  • 服务启动顺序问题
    若Electron窗口在ASP.NET Core服务完全就绪前创建,可能触发内部 fallback 逻辑使用默认地址。可在创建窗口前添加延迟,或监听服务启动完成事件:

    var host = CreateHostBuilder(args).Build();
    await host.StartAsync();
    // 服务启动完成后再创建窗口
    await Electron.WindowManager.CreateWindowAsync(options, "http://localhost:5001");
    await host.WaitForShutdownAsync();
    
  • 版本兼容性bug
    旧版Electron.NET存在URL解析问题,尝试升级ElectronNET.API和ElectronNET.CLI到最新稳定版,重新生成项目后再测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 17:19:51