基于Internet Explorer的WPF WebBrowser控件会遇到一些键盘和焦点问题以及内存泄漏问题.作为这些问题的替代解决方案,我们正在考虑在基于HTML编辑的WPF/C#项目中托管Chromium而不是WebBrowser控件的可用选项.此前已经提出了类似的问题.我已经阅读了答案并完成了自己的研究,但我希望从生产质量项目中实际使用以下任何选项的人那里获得更多反馈:
它看起来非常合适,但我不喜欢这个项目不是开源的事实,并且不能轻易获得完整的资源.此外,它可能对我们的项目来说太过分了,因为屏幕外渲染不是我们真正依赖的东西.
用于CEF的Chromium Embedded Framework(CEF)和.NET绑定
这可能是目前可用的最佳选择.该项目似乎活跃且活跃,目前与Chrome v27同步.CEF3使用Chrome多进程架构.看起来Adobe似乎正在给它一些支持.
虽然它的最初目的是成为IE和Firefox的HTML5插件,但它实际上也可以作为独立的ActiveX控件使用,所以我可以将它包装起来用于WPF.它公开了足够的API以与内部网页(onmessage, addEventListener/removeEventListener, postMessage
)进行交互.我知道谷歌将停止使用 Chrome Frame,但我认为这些来源将保留在Chromium存储库中.使用最新的Chromium代码更新它并不困难,我们可以完全控制它.
不完全是基于Chromium而且不使用V8引擎,所以它不是一个真正的选择.
还有其他我可能忽略的选择吗?
如果有人与上述任何选项分享她/他在实际生产质量的WPF项目中的经验,我将不胜感激.您是否有任何集成,许可或部署影响?谢谢.
[编辑] 我还要感谢artlung通过提供慷慨的赏金提议来提升这个问题.
我问自己是否可以在自己的应用程序中嵌入谷歌浏览器浏览器引擎.我正在使用Delphi 2009.随IDE提供了一个IE ActiveX包装器组件.此外,还有一个Firefox ActiveX组件,但它基于非常古老的代码.
我想嵌入chrome引擎.有没有办法做到这一点?
提前致谢,
大卫
browser activex google-chrome embedded-browser chromium-embedded
有没有人在CEF3(Chromium Embedded Framework)中成功实现NaCl/PNaCl支持?
我发现Chrome(34)可以很好地在这个页面上运行PNaCl样本,但是在cefbuilds.com(Windows,1916分支)上分发的cefclient却没有.
Chrome将ppGoogleNaClPluginChrome.dll列为chrome:// plugins上的PPAPI(进程内)插件,而cefclient应用程序未列出此插件(Test/Plugins菜单选项)
我已经删除了源代码,并没有看到libcef目标的任何NaCl依赖性,并且还看到针对CEF项目提交的这个问题,这让我怀疑这目前仅适用于Chromium/Chrome.
---更新---最近在这个问题上有相当多的活动,我怀疑部分归功于赏金,还因为Chrome/Chromium现在正在积极地弃用NPAPI.
如果您想鼓励CEF团队优先考虑添加NaCl/PNaCl支持的工作,请在此处投票支持该问题:http: //bitbucket.org/chromiumembedded/cef/issue/705#
我有一个WPF应用程序,它使用CEF来显示Web内容.我的问题是,有没有办法调试WPF应用程序中的Javascript/Web部件?
有人可以向我解释一下CefSharp LoadHtml
功能是如何工作的吗?
LoadHtml(string html, string url)
Run Code Online (Sandbox Code Playgroud)
什么的html
和url
参数代表什么?
我有兴趣将原始HTML字符串中的页面加载到CefSharp浏览器中.
我想创建一个桌面应用程序来浏览网站,我不想制作浏览器而是浏览器嵌入应用程序.我试过JavaFx
但我发现了一些问题,比如缺少对插件的支持(例如:flash,pdf viewer等).
经过大量的搜索,我发现了用于CEF的Chromium Embedded Framework(CEF)或JCEF Java包装器,但我不知道如何在java中使用它.什么是依赖?我如何开始使用开发(POC)netbeans
?
是否可以在java应用程序中嵌入CEF/JCEF?
我想JavaScript
通过CefSharp
在Windows窗体中使用来执行代码,但它不起作用.代码如下,并且test
不显示消息.我错过了什么?
var browser = new ChromiumWebBrowser("http://localhost:50056/simple.aspx");
browser.Name = "Simple Page";
browser.Dock = DockStyle.Fill;
this.Controls.Add(browser);
browser.ExecuteScriptAsync("alert('test');");
Run Code Online (Sandbox Code Playgroud) 我下载并开始使用CEF,但似乎没有任何文档.甚至不是一个工作维基...我错过了什么?
我正在创建一个标签式Web浏览器CefSharp 39.0.2
.现在,如果用户点击网站上的链接,它将打开一个没有我原始UI的新窗口.例如,当您点击Google新闻上的文章链接时,它会在新窗口中打开,但没有我编写的任何浏览控件.我也研究了这个Cef.WinForms.Example
程序,它也做了同样的事情.
是否有可能以不同的方式处理这个问题?我希望链接可以在新选项卡中打开,也可以在新窗口中打开(包含所有控件).我一直在查看GitHub问题,我找不到这样的东西(也许我看起来不够努力,因为我认为这也是其他人想要做的......).我查看了所有events
浏览器控件,我找不到任何看起来像是处理它的人.
我正在考虑将项目从 cef (CefSharp) 迁移到 WebView2 WPF。我的初步测试表明 WebView2 API 具有我需要的该端口的接口。我担心我会错过一些可能阻止我切换到 WebView2 的东西,我会在过渡的后期阶段解决这个问题。如果有人经历过这个过程,请分享我是否需要了解可能成为此过渡的障碍的事情。WebView2 中是否缺少来自 cef 的重要 API?