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

C# Webform项目使用WebView2固定版本运行时找不到兼容运行时如何解决

WebView2固定版本Runtime部署问题修复方案

1. 路径配置错误

  • browserExecutableFolder指向错误:你当前配置的路径只到browserPackageV1.exe.WebView2目录,实际需要指向包含msedgewebview2.exe的Runtime子目录,需要补全最后的Microsoft.WebView2.FixedVersionRuntime.94.0.992.50.x86段。
  • 路径语法错误:你使用了@前缀的逐字字符串,不需要额外转义斜杠,双斜杠会导致路径识别失败。
  • 推荐基于程序集位置构造动态路径,避免写死路径导致部署后失效:
// 获取当前程序集运行目录
var appDir = Path.GetDirectoryName(typeof(Form1).Assembly.Location);
// 拼接Runtime路径,指向包含msedgewebview2.exe的目录
String locOfRuntime = Path.Combine(appDir, @"browserPackageV1.exe.WebView2\Microsoft.WebView2.FixedVersionRuntime.94.0.992.50.x86");
// 拼接用户数据目录
String locOfSavedState = Path.Combine(appDir, "temp");

2. 执行顺序错误

你在构造函数中先给webBrowser.Source赋值,再执行初始化逻辑,此时WebView2还未加载自定义固定版本环境,会默认查找系统安装的Runtime,找不到就抛出异常。必须先完成环境初始化,再设置Source属性。

3. EnsureCoreWebView2Async写法错误

方法参数不需要写参数定义语法CoreWebView2EnvironmentOptions options = null,直接传对应参数即可,且需要先拿到创建好的环境实例再传入方法。

完整可运行的修复后代码

public Form1()
{
    InitializeComponent();
    // 先初始化WebView,完成后再设置跳转地址
    InitWebView();
}

async void InitWebView()
{
    var appDir = Path.GetDirectoryName(typeof(Form1).Assembly.Location);
    var locOfRuntime = Path.Combine(appDir, @"browserPackageV1.exe.WebView2\Microsoft.WebView2.FixedVersionRuntime.94.0.992.50.x86");
    var locOfSavedState = Path.Combine(appDir, "temp");
    
    // 先创建自定义环境
    var env = await CoreWebView2Environment.CreateAsync(
        browserExecutableFolder: locOfRuntime,
        userDataFolder: locOfSavedState,
        options: null);
    
    // 用自定义环境初始化WebView2控件
    await webBrowser.EnsureCoreWebView2Async(env);
    
    // 初始化完成后再设置访问地址
    webBrowser.Source = new Uri("https://www.microsoft.com/en-us/");
}

额外注意事项

  • 要确保你的Runtime包架构和项目生成架构一致,如果项目生成的是x64程序,就不能用x86的固定版本Runtime
  • 运行前确认locOfRuntime指向的目录下确实存在msedgewebview2.exe文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 23:06:05