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 Server 端精致套件
Blazor 作为一种 Web 开发的新技术已经发展有一段时间了,有些人标称 无 JS 无 TS,我觉得有点误导新人的意味,也有人文章大肆宣传 Blazor 是 JavaScript 的终结者,是为了 ...
- [Asp.Net Core] Blazor Server Side 扩展用途 - 配合CEF来制作客户端浏览器软件
前言 大家用过微信PC端吧? 这是用浏览器做的. 用过Visual Studio Code吧? 也是用浏览器做的. 听说, 暴雪客户端也包含浏览器核心?? 在客户端启动一个浏览器, 并不是什么难事了. ...
- Blazor Server 和 WebAssembly 应用程序入门指南
翻译自 Waqas Anwar 2021年3月12日的文章 <A Beginner's Guide To Blazor Server and WebAssembly Applications&g ...
- 使用Blazor Server 线路处理程序 (circuit handler)跟踪打开的SignalR连接
Blazor服务器允许定义线路处理程序(circuit handler)代码,该处理程序(handler)允许在更改用户线路状态时运行此代码. 线路处理程序(circuit handler)是通过从C ...
- [Asp.Net Core] 为什么选择 Blazor Server Side (一) 快速实现图片验证码
关于Blazor 由于在国内, Blazor一点都不普及, 建议读者翻看我之前写的随笔, 了解Blazor Server Side的特点. 在一段时间内, 我会写一些解说分析型的 "为什么选 ...
- [Asp.Net Core] 关于 Blazor Server Side 的一些杂项, 感想
在2016年, 本人就开始了一个内部项目, 其特点就是用C#构建DOM树, 然后把DOM同步到浏览器中显示. 并且在一些小工程中使用. 3年下来, 效果很不错, 但因为是使用C#来构建控件树, 在没有 ...
- ASP.NET Core Blazor 初探之 Blazor Server
上周初步对Blazor WebAssembly进行了初步的探索(ASP.NET Core Blazor 初探之 Blazor WebAssembly).这次来看看Blazor Server该怎么玩. ...
- [Asp.Net Core] Blazor Server Side 扩展用途 - 配合CEF来制作带浏览器核心的客户端软件 (二) 可运行版本
前言 大概3个星期之前立项, 要做一个 CEF+Blazor+WinForms 三合一到同一个进程的客户端模板. 这个东西在五一的时候做出了原型, 然后慢慢修正, 在5天之前就上传到github了. ...
- 在Blazor Server 项目中使用 EF Core Sqlite
按照教程创建了一个 Blazor Server 项目 教程地址: https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/build-a-blaz ...
随机推荐
- zsy后台管理系统-界面
自研平台:(java+vue+mysql+docker) 欢迎大家预览,指导! http://www.zsyai.top/dist 流程引擎 自定义定时任务: 一键生成前后端代码:
- webpack指南(二)code spliting+懒加载
code spliting 把代码分离到不同的 bundle 中,然后可以按需加载或并行加载这些文件. 代码分离可以用于获取更小的 bundle,以及控制资源加载优先级,如果使用合理,会极大缩减加载时 ...
- 《机器学习_07_01_svm_硬间隔支持向量机与SMO》
一.简介 支持向量机(svm)的想法与前面介绍的感知机模型类似,找一个超平面将正负样本分开,但svm的想法要更深入了一步,它要求正负样本中离超平面最近的点的距离要尽可能的大,所以svm模型建模可以分为 ...
- 4.4 Go goto continue break
4.4 Go goto continue break Go语言的goto语句可以无条件的跳转到指定的代码行执行. goto语句一般与条件语句结合,实现条件转义,跳出循环体等. Go程序不推荐使用got ...
- 用了这么多年MySql,这些好习惯你用过哪些
一:新建表和字段建议: 1.所有数据表和字段要有清晰的注释,字段说明 说明:不管是创建者还是其他开发或者后续维护者都能清楚知道数据表和字段定义的含义 2.表名.字段名使用小写字母或数字,禁止出现数 ...
- IDEA三种注释详解
三种注释方式 行注释.块注释.方法或类说明注释. 一.快捷键:Ctrl + / 使用Ctrl+ /, 添加行注释,再次使用,去掉行注释 二.演示代码 if (hallSites != null &am ...
- CF916C
题目链接:http://codeforces.com/contest/916/problem/C 题目大意: 用\(n\)个结点,\(m\)条边(每条边的权值范围为[1, 109]) 构造出一个无向带 ...
- 【Java】【JVM】Sychronized底层加锁原理详解
我们首先先看看JMM模型,话不多说,上图: JMM对应的8大原子操作: read(读取):从主内存读取数据 load(载入):将主内存读取到的数据写入工作内存 use(使用):从工作内存读取数据来计算 ...
- Python的自定义属性访问跟描述器以及ORM模型的简单介绍
一 . 自定义属性访问 1.__getattr__ 作用:当我们访问属性的时候,如果属性不存在(出现AttrError),该方法会被触发. 2.__getattribute__ 作用:访问属性的时候, ...
- Robot Framework(13)- RF 循环的详细使用
如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 前言 RF用 ...