以前曾試過(guò)在app中整合一個(gè)可靠又快速的web瀏覽器嗎?
在本文中,你會(huì)學(xué)到如何輕松地將奇妙的CefSharp網(wǎng)頁(yè)瀏覽器組件(基于Chromium)集成到你的C# app中。
然后,你可以使用此web瀏覽器:
給用戶提供一個(gè)集成的瀏覽體驗(yàn)
用HTML / JavaScript編程添加嵌入式界面
用于web自動(dòng)化
CefSharp可靠,快速,完全開源,不需要任何額外的依賴就可以安裝到最終用戶(除VC ++ Runtime 2013以外)。
在本指南中,我們將使用WinForms項(xiàng)目,但CefSharp同樣可工作于WPF項(xiàng)目。
按照以下步驟快速開始CefSharp。
項(xiàng)目
1.用.NET 4.5.2創(chuàng)建一個(gè)Windows窗體應(yīng)用程序(C#)項(xiàng)目
2.對(duì)項(xiàng)目命名(如“CefTest”)
DLL文件(NuGet方法)
3A)如果你使用的是NuGet,那么你可以從NuGet代碼倉(cāng)庫(kù)抓取CefSharp.WinForms,跳過(guò)下面的手動(dòng)方法。
3B)如果你已經(jīng)使用了NuGet,那么導(dǎo)航SOLUTION > Configuration Manager,并將你的項(xiàng)目設(shè)置為x86或x64,因?yàn)槟壳安恢С諥nyCPU。
DLL文件(手動(dòng)方法)
如果你使用的是NuGet,那么請(qǐng)?zhí)^(guò)此章節(jié)!
3A)下載CefSharp二進(jìn)制文件并解壓它們。
CefSharp v51 x86(32位app)
CefSharp v51 x64(64位app)
3B)右擊你的項(xiàng)目,點(diǎn)擊“Add Reference”,然后選擇“Browse”。
3C)選擇這些DLL文件:
CefSharp.dll
CefSharp.Core.dll
CefSharp.WinForms.dll
3D)用ZIP選擇所有文件:
3E)復(fù)制那些文件到項(xiàng)目的Debug文件夾(在Bin之中)
4.右擊你的主窗體,并選擇“View Code”。
5.添加以下代碼:
復(fù)制到import
部分:
using CefSharp;using CefSharp.WinForms;
復(fù)制到代碼段:
public ChromiumWebBrowser browser;public void InitBrowser(){ Cef.Initialize(new CefSettings()); browser = new ChromiumWebBrowser ("www.google.com"); this.Controls.Add(browser); browser.Dock = DockStyle.Fill; }
在調(diào)用 InitializeComponent()
之后就調(diào)用InitBrowser():
InitBrowser()
你的代碼最后應(yīng)該是這樣的:
運(yùn)行吧!
6.按F5鍵,你會(huì)看到谷歌主頁(yè)!
一個(gè)類型為’System.IO.FileNotFoundException’未處理的異常出現(xiàn)在browser.exe中
其他信息:無(wú)法加載文件或’CefSharp.Core.dll’程序集或它的一個(gè)依賴。
如果你收到此錯(cuò)誤,請(qǐng)確保你安裝了Visual C ++ 2013 Redistributable。
一個(gè)類型為’System.BadImageFormatException’未處理的異常出現(xiàn)在browser.exe中
其他信息:無(wú)法加載文件或’CefSharp.Core, Version=43.0.0.0, Culture=neutral,程序集
如果你得到這個(gè)錯(cuò)誤,它意味著你在64位的PC上,而你的app用AnyCPU模式構(gòu)建。你需要改變?yōu)閤86或x64模式:
打開Solution Explorer面板
右鍵點(diǎn)擊你的項(xiàng)目>Project Properties
單擊Build標(biāo)簽
更改Platform target為x86或x64
如果你正在尋找一個(gè)全功能瀏覽器項(xiàng)目,那么檢查這些用C# CefSharp構(gòu)建的開源瀏覽器。
WPF。帶有建議、多個(gè)標(biāo)簽、下載、書簽、歷史記錄的地址欄。
<作者未提供截圖>
Windows Forms。地址欄,多標(biāo)簽,下載。
如對(duì)本文有疑問(wèn),請(qǐng)?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會(huì)為你解答??! 點(diǎn)擊進(jìn)入論壇