Blazor server side 自家的一些开源的, 实用型项目的进度之 CEF客户端
Posted zhgangxuan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Blazor server side 自家的一些开源的, 实用型项目的进度之 CEF客户端相关的知识,希望对你有一定的参考价值。
距离上次提出
[Asp.Net Core] Blazor Server Side 扩展用途 - 配合CEF来制作带浏览器核心的客户端软件
的想法后, 差不多2个星期了.
这个玩意也做了一半, 自用是没问题的, 放出去倒是不够精细.
如图:
上面的是开发中的项目文件的截图.
不是成品.
现在可以用 .net core 或者 .net framework 来绑定这个 CEF . 只有 .net core 才能启动 asp.net core , 而 .net framework 可以自启 asp.net webform , 虽然自己觉得这不实用.
现在离发布开源, 还差一些工作量 :
1 - CEF的很多实用的API根本没整合 , 只是根据需要, 用一个就整合一个.
2 - 改名 , 很多类名, 属性方法, 都需要看情况改名.
3 - 下载列表对话框
4 - 完整的测试. 功能越多, 需要的测试越多
5 - CEF默认没有Notification API, 考虑实现.
项目当前功能的一些状况:
1 - 冷启动是6秒左右. 包括启动.net core, 启动asp.net core, 启动CEF, 用CEF打开第一个网页, 待网页的window.onload触发
2 - 热启动是1.1秒左右.
3 - 程序启动后占用内存180MB起步. CEF多进程模式(默认不打开,不推荐), 启动就有5个进程, 占用360MB起步.
4 - CEF文件夹大小是145MB , 压缩后是57MB左右 , 已有.net core框架时, 程序大小可以忽略
5 - 程序发布为单个文件并且自带框架和其他dll时 , 单个exe就要145MB , 合计是290MB, 压缩后是110MB
6 - 客户端asp.net core代码可以直接控制客户端winforms代码
7 - 服务器asp.net core代码, 在网址授权的情况下, 可以推送符合授权的 dll 到客户端执行.
8 - 在对网址授权后, 并且打开CSharpCode权限的情况下, 可以推送CSharp代码到客户端编译并执行.
9 - 可以嵌入 MediaPlayer , 参考 https://www.cnblogs.com/zhgangxuan/p/12839140.html
10 - 目前使用的是网上编译的版本. 没有加进mp4的支持. 需要用activex来弹窗播放mp4
html5 Test 跑分如下
比Chrom/Edge少10分
缺少H264支持, 缺少ACC支持.
不过播放MP3倒是没问题. 即可以自行添加音效.
除此, 主要缺少的是:
还在忙, 暂时写到这里.
以上是关于Blazor server side 自家的一些开源的, 实用型项目的进度之 CEF客户端的主要内容,如果未能解决你的问题,请参考以下文章
一文说通Blazor for Server-Side的项目结构
ASP.NET Core Hosted 和 Server-Side Blazor 之间有啥区别,真的吗?