1. 程式人生 > >使用CefSharp在.Net程序中嵌入Chrome瀏覽器(四)——啟動優化

使用CefSharp在.Net程序中嵌入Chrome瀏覽器(四)——啟動優化

單獨 ali 禁止 啟動速度 init 進程 efs 使用 res

原文:使用CefSharp在.Net程序中嵌入Chrome瀏覽器(四)——啟動優化

在實際使用過程中,發現有的客戶端會出現chrome加載網頁過慢問題,定位後發現很多是因為設置系統代理所致,此時可以通過如下啟動參數禁止系統代理。

{"proxy-auto-detect", "0"},
{"no-proxy-server", "1"},

另外一個小技巧是: 由於cef本身是一個獨立的進程,我們不需要等待主窗口加載完成後再創建ChromiumWebBrowser,單獨啟動它也不影響主程序啟動速度,

因此可以將ChromiumWebBrowser和主窗口一並啟動。

public MainWindow()
{
var setting = new CefSettings();
CefSharp.Cef.Initialize(setting);
var chrome = new ChromiumWebBrowser() {Address = "http://www.google.com"};
//...
InitializeComponent();
}

主窗口加載完成後,再將chrome放置到相應的控件上。

需要說明的是,ChromiumWebBrowser只有防止到窗口才開始渲染,要想預先渲染,可以先新建一個臨時窗口,把這個臨時窗口顯示到屏幕外面去。要用ChromiumWebBrowser的時候再放置到我們的實際窗體中。

使用CefSharp在.Net程序中嵌入Chrome瀏覽器(四)——啟動優化