WPF+CEF 执行JS报错

WPF+CEF 执行JS报错

在WPF中执行 webBrowser.EvaluateScriptAsync("window.scrollBy(0, 1000);");

在部分网站会报异常:
Request BrowserId : XXXX not found it's likely the browser is already closed


环境

.Net Framework 4.7

CefSharp.Wpf 131.3.50

解决方案:

使用CEF的控制台去执行

xml 复制代码
// xaml 页面
<cef:ChromiumWebBrowser x:Name="webBrowser" />
csharp 复制代码
//using CefSharp.Wpf;

public static async Task<ResultInfo> GetEvaluateJsAsync(ChromiumWebBrowser webBrowser, string js)
{
    var res = new ResultInfo() { Success = false };
    try
    {
        if (webBrowser == null || webBrowser.IsDisposed)
            return res;

        var client = webBrowser.GetDevToolsClient();
        if (client == null)
            return res;

        var result = await client.Runtime.EvaluateAsync(js, null, true, null, null, true, null, true);
        if (result == null || result.ExceptionDetails != null)
            return res;
        res.Result = result.Result.Value?.ToString();
        res.Success = true;
        return res;
    }
    catch (Exception ex)
    {
        res.Result = ex.Message;
        return res;
    }
}

 public class ResultInfo
 {
     public bool Success { get; set; }
     public string Result { get; set; }
 }
相关推荐
界面开发小八哥3 小时前
界面组件DevExpress WPF中文教程:Grid - 如何完成节点排序和移动?
.net·wpf·界面控件·devexpress·ui开发
✎ ﹏梦醒͜ღ҉繁华落℘4 小时前
Visual Studio编译WPF项目生成的文件介绍
hadoop·wpf·visual studio
凯哥Java4 小时前
登录功能实现深度解析:从会话管理到安全校验全流程指南
spring·wpf
code bean2 天前
【WPF】WPF 自定义控件之依赖属性
wpf
上元星如雨3 天前
WPF 加载和显示 GIF 图片的完整指南
wpf
微小冷3 天前
WPF中ListView控件详解
c#·wpf·数据绑定·listview·bingding
专注VB编程开发20年4 天前
WPF,Winform,HTML5网页,哪个UI开发速度最快?
大数据·c#·wpf
YANQ6624 天前
3.1 WPF画折线图、直方图、饼状图
wpf
上元星如雨4 天前
WPF demo:全屏加载界面
wpf