使用 CefSharp 在 C# App 中嵌入 Chrome 瀏覽器
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
介紹
以前曾試過在app中整合一個可靠又快速的web瀏覽器嗎?
在本文中,你會學到如何輕鬆地將奇妙的CefSharp網頁瀏覽器元件(基於Chromium)整合到你的C# app中。
然後,你可以使用此web瀏覽器:
- 給使用者提供一個整合的瀏覽體驗
- 用HTML / JavaScript程式設計新增嵌入式介面
- 用於web自動化
CefSharp可靠,快速,完全開源,不需要任何額外的依賴就可以安裝到終端使用者(除VC ++ Runtime 2013以外)。
在本指南中,我們將使用WinForms專案,但CefSharp同樣可工作於WPF專案。
入門
按照以下步驟快速開始CefSharp。
專案
1.用.NET 4.5.2建立一個Windows窗體應用程式(C#)專案
2.對專案命名(如“CefTest”)
DLL檔案(NuGet方法)
3A)如果你使用的是NuGet,那麼你可以從NuGet程式碼倉庫抓取CefSharp.WinForms,跳過下面的手動方法。
3B)如果你已經使用了NuGet,那麼導航SOLUTION > Configuration Manager,並將你的專案設定為x86或x64,因為目前不支援AnyCPU。
DLL檔案(手動方法)
如果你使用的是NuGet,那麼請跳過此章節!
3A)下載CefSharp二進位制檔案並解壓它們。
CefSharp v51 x86(32位app)
CefSharp v51 x64(64位app)
3B)右擊你的專案,點選“Add Reference”,然後選擇“Browse”。
3C)選擇這些DLL檔案:
CefSharp.dll
CefSharp.Core.dll
CefSharp.WinForms.dll
3D)用ZIP選擇所有檔案:
3E)複製那些檔案到專案的Debug資料夾(在Bin之中)
程式碼
4.右擊你的主窗體,並選擇“View Code”。
5.新增以下程式碼:
複製到import
部分:
using CefSharp; using CefSharp.WinForms;
複製到程式碼段:
public ChromiumWebBrowser browser; public void InitBrowser(){ Cef.Initialize(new CefSettings()); browser = new ChromiumWebBrowser ("www.google.com"); this.Controls.Add(browser); browser.Dock = DockStyle.Fill; }
在呼叫 InitializeComponent()
之後就呼叫InitBrowser():
InitBrowser()
你的程式碼最後應該是這樣的:
執行吧!
6.按F5鍵,你會看到谷歌主頁!
故障排除
一個型別為’System.IO.FileNotFoundException’未處理的異常出現在browser.exe中
其他資訊:無法載入檔案或’CefSharp.Core.dll’程式集或它的一個依賴。
如果你收到此錯誤,請確保你安裝了Visual C ++ 2013 Redistributable。
一個型別為’System.BadImageFormatException’未處理的異常出現在browser.exe中
其他資訊:無法載入檔案或’CefSharp.Core, Version=43.0.0.0, Culture=neutral,程式集
如果你得到這個錯誤,它意味著你在64位的PC上,而你的app用AnyCPU模式構建。你需要改變為x86或x64模式:
- 開啟Solution Explorer皮膚
- 右鍵點選你的專案>Project Properties
- 單擊Build標籤
- 更改Platform target為x86或x64
全功能瀏覽器
如果你正在尋找一個全功能瀏覽器專案,那麼檢查這些用C# CefSharp構建的開源瀏覽器。
WPF。帶有建議、多個標籤、下載、書籤、歷史記錄的位址列。
<作者未提供截圖>
Windows Forms。位址列,多標籤,下載。
譯文連結:http://www.codeceo.com/article/cefsharp-charp-app-chrome.html
英文原文:Embedding Chrome in your C# App using CefSharp
翻譯作者:碼農網 – 小峰
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- 使用CefSharp在.NET中嵌入Google kernelGo
- 基於CefSharp開發瀏覽器(八)瀏覽器收藏夾欄瀏覽器
- 使用chrome瀏覽器驅動自動開啟瀏覽器Chrome瀏覽器
- Google Chrome瀏覽器GoChrome瀏覽器
- 在 .NET 中開發基於 Chrome 核心的瀏覽器-建立一個簡單瀏覽器Chrome瀏覽器
- rrweb-io/rrweb:嵌入在瀏覽器中的錄影機Web瀏覽器
- 在Chrome瀏覽器中儲存的密碼有多安全?Chrome瀏覽器密碼
- Chrome 瀏覽器中,使用 Shift + Esc 開啟工作管理員 / 瀏覽器程式管理 結束程式Chrome瀏覽器
- 安裝Chrome瀏覽器Chrome瀏覽器
- 瀏覽器-怎麼在谷歌瀏覽器中安裝.crx副檔名的離線Chrome外掛?瀏覽器谷歌Chrome
- Chrome 瀏覽器修改 UA 模擬其它瀏覽器,包括移動瀏覽器Chrome瀏覽器
- puppeteer chrome/chrome canary 登入瀏覽器Chrome瀏覽器
- Chrome瀏覽器擴充套件開發系列之十六:擴充套件中可用的Chrome瀏覽器APIChrome瀏覽器套件API
- Chrome瀏覽器擴充套件開發系列之九:Chrome瀏覽器的chrome.alarms.* APIChrome瀏覽器套件API
- 在瀏覽器裡使用SAPGUI瀏覽器GUI
- ubuntu chrome瀏覽器安裝UbuntuChrome瀏覽器
- Google Chrome for Mac(谷歌瀏覽器)GoChromeMac谷歌瀏覽器
- Ubuntu 安裝Chrome瀏覽器UbuntuChrome瀏覽器
- ubuntu安裝chrome瀏覽器UbuntuChrome瀏覽器
- 有用的 Chrome 瀏覽器命令Chrome瀏覽器
- 教你在瀏覽器中快速搜尋App Store應用瀏覽器APP
- C# 開源瀏覽器效能提升,體驗Chrome級速度C#瀏覽器Chrome
- textarea 在 Chrome Safari FireFox 瀏覽器中禁用拖動和固定大小ChromeFirefox瀏覽器
- Chrome(谷歌瀏覽器 )使用總結(一)——快捷鍵Chrome谷歌瀏覽器
- win10 Edge瀏覽器怎樣使用谷歌Chrome瀏覽器主題皮膚Win10瀏覽器谷歌Chrome
- chrome瀏覽器使用記錄Chrome瀏覽器
- Directx遊戲中嵌入IE瀏覽器實現過程遊戲瀏覽器
- WebRTC在瀏覽器中的演示Web瀏覽器
- Net Applications:2014年3月Chrome瀏覽器產生流量在所有桌面瀏覽器中達到17.5%APPChrome瀏覽器
- 瀏覽器中喚起native app瀏覽器APP
- Chrome瀏覽器手動新增CookieChrome瀏覽器Cookie
- Mac下chrome瀏覽器跨域MacChrome瀏覽器跨域
- 工具篇---Chrome瀏覽器快捷鍵Chrome瀏覽器
- 谷歌(chrome)瀏覽器快捷鍵大全谷歌Chrome瀏覽器
- Mac 下 Chrome 瀏覽器 快捷鍵MacChrome瀏覽器
- Chrome瀏覽器之 Postman 安裝Chrome瀏覽器Postman
- Elementary OS安裝Chrome瀏覽器Chrome瀏覽器
- Chrome已成瀏覽器安全標準Chrome瀏覽器