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 ...
随机推荐
- tomcat 添加 ssl 证书
1. 将证书提供方给的证书(server.crt)及密钥文件(server.key)上传到服务器 tomcat 的 conf 目录 2. 在tomcat conf 目录下执行如下命令 (1) 生成P1 ...
- vue中事件代理
由于在vue实例内部,this指向了实例本身,所以在编写事件代理的时候,用e.currentTarget引用绑定事件代理的元素,e.target引用事件目标元素.刚刚不注意想用this引用代理元素报错 ...
- 用C++验证三门问题
三门问题(换门): #include <iostream> #include <cstdlib> #include <ctime> #define random(a ...
- 关于MYSQL 和INNODB的逻辑关系图。最好的理解是一点点动手做,观察,记录,思考。
每隔0.1秒就刷一次MYSQL文件的变化,并闪动标示出来,以观察SQL执行时,MYSQL的处理顺序. watch -n 0.1 -d stat /var/lib/mysql/ib_logfile0 / ...
- Angular SPA基于Ocelot API网关与IdentityServer4的身份认证与授权(三)
在前面两篇文章中,我介绍了基于IdentityServer4的一个Identity Service的实现,并且实现了一个Weather API和基于Ocelot的API网关,然后实现了通过Ocelot ...
- vs code插件自动压缩 min.css
我们在进行相应的项目书写的时候,有些需要把scss 和 css 进行 压缩成 min.css 便于更好的使用 在这里强调一下 scss 后来才慢慢接触到这个语言的 感觉的确实懂得明白了之后 好用而且 ...
- 深入理解JS:执行上下文中的this(一)
目录 执行上下文与执行上下文栈 this 全局环境 函数环境 总结 参考 1.执行上下文与执行上下文栈 (1)什么是执行上下文? 在 JavaScript 代码运行时,解释执行全局代码.调用函数或使用 ...
- C#判断网址的可访问性
/// <summary> /// 判断网址是否可以访问 /// </summary> /// <param name="Url"></p ...
- Python的自定义属性访问跟描述器以及ORM模型的简单介绍
一 . 自定义属性访问 1.__getattr__ 作用:当我们访问属性的时候,如果属性不存在(出现AttrError),该方法会被触发. 2.__getattribute__ 作用:访问属性的时候, ...
- Redis学习笔记(4)
一.Redis主从复制 1. 概念 为了避免服务的单点故障,会把数据复制到多个副本放在不同的服务器上,且这些拥有数据副本的服务器可以用于处理客户端的读请求,扩展整体的性能.我们把这种机制称之为主从复制 ...