C#桌面开发的未来WebWindow
WebWindow
WebWindow是跨平臺的庫。Web Window的當前實驗實現可在以下平臺上運行:
Windows – 需要基于Chromium的Edge
Linux – 使用WebKit
Mac – 需要Safari
源碼
https://github.com/SteveSandersonMS/WebWindow.git
Zeje Fork的分支:https://github.com/zeje/WebWindow.git
作者博客
https://blog.stevensanderson.com
基于Chromium的Edge
因為大眾用的還是Windows操作系統(如win 7,win 10)。為了面向大眾,我們在Windows 10下體驗下WebWindow。現在下載并安裝基于Chromium的Edge:
下載地址:https://www.microsoft.com/en-us/edge
下載地址:https://www.microsoft.com/en-us/edge/business/download (建議)
中間可能在升級的時候,要求你更新操作系統才可以安裝(安裝過程略)
體驗
本人的體驗環境是:
Window 10
Visual Studio 2019
基于 Chrome的 Edge
體驗方式一:
創建一個.NET?Core 3.0的控制臺程序
安裝WebWindow Nuget包
加入啟動代碼
體驗效果
體驗方式二:
預期目標:
1、不需要依賴.NET Core 3.0
2、僅僅依賴.net framework 4.5便可。
Clone下源碼到本地
打開WebWindow.Dev解決方案
搗鼓編譯源碼的事情
可愛又可恨的WebWindow.Native
可愛:它實現了WebView的調用;
可恨:對于國情來說,它并不完美;
* 我們需要它對更多的瀏覽器的支持,特別針對雙引擎瀏覽器
* 對于windows底層方法的調用,并不一定需要原生支持,特別是一些簡單的操作,js + http + webapi的方式完全可以勝任。
編譯的前提條件:WebWindow.Native
安裝C++桌面開發支持
使用x64編譯WebWindow.Native
搗鼓這個最麻煩,每個人的環境不一,像我這等C++丟了12年的人(大一學過)來說,報include異常后完全不知道怎么搞(請教了會C++的朋友也無果),后來好像是更新了操作系統的補丁,重啟后就能正常編譯了。
把WebWindow改成面向多目標框架的項目
修改WebWindow.csproj文件
<TargetFramework>netstandard2.1</TargetFramework>為
<TargetFrameworks>net45;net451;net452;net46;net461;net471; netstandard2.1;netcoreapp2.0;netcoreapp3.0</TargetFrameworks>處理掉部分代碼的問題,如:
net45下包System.Runtime.InteropServices.RuntimeInformation的引用問題
在WebWindow.Dev解決方案中,新增.net framework 4.5控制臺應用程序ZejeWebWindowApp
在ZejeWebWindowApp中加入WebWindow項目引用
加入啟動代碼
修改項目配置
體驗效果
遺留的問題
怎么兼容國產瀏覽器?
怎么支持x86?
其他需要調用windows底層方法如何處理?
這些都不是不懂C++的我能左右的,希望.NET的C++高手們貢獻點力量吧!
總結
以上是生活随笔為你收集整理的C#桌面开发的未来WebWindow的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Blazor入门
- 下一篇: C#小游戏—钢铁侠VS太空侵略者