当前位置: 首页 > news >正文

3. 仓颉 CEF 库封装

文章目录

  • 1. capi 使用说明
  • 2. Cangjie CEF
    • 2. 1实现目标
  • 3. 实现示例

1. capi 使用说明

根据上一节 https://blog.csdn.net/qq_51355375/article/details/147880718?spm=1011.2415.3001.5331 所述, cefcapi 是libcef 共享库导出一个 C API, 而以源代码形式分发的 libcef_dll_wrapper 项目将这个导出的 C API 包装在 C++ API 中就成为了 cef 的C++ API , 及常用的开发方式。 既然libcef_dll_wrapper 是基于capi 的封装, 那是不是可以直接使用capi 和c语言来进行cef的开发呢,经过验证测试是没问题的。

但是基于capi 使用, 需要手动管理引用计数,资源及内存要手动管理,开发项目比较大时相关管理比较麻烦。

2. Cangjie CEF

  • 因仓颉可以通过ffi 来调用c语言, 和c语言的操作也支持的比较好。所以是否可以通过仓颉和cefcapi 进行结合来实现在从仓颉端调用cef的能力。
  • 因为仓颉支持和c的函数及结构体映射,所以接口采用cefcapi和部分结构封装的方式实现, 保留cefcapi在仓颉端的结构映射,从而可以保留可以在仓颉端直接使用和封装cef的能力, 而直接在c端封装部分结构和接口,可以简化开发,同时提供一个开箱即用的环境和处理一些在仓颉端无法完成的操作,如c的宏调用等。

2. 1实现目标

Cangjie CEF最终目的是希望能实现一个类似tauri 和 electron 的混合桌面开发框架

3. 实现示例

在这里插入图片描述

在这里插入图片描述

参考:
https://gitcode.com/Cangjie-SIG/cj-cef

https://gitcode.com/CodingBinary/zhinu_ui#js-%E8%B0%83%E7%94%A8%E4%BB%93%E9%A2%89

相关文章:

  • FME处理未知或动态结构教程
  • 微机系统:第二章节:16位的intel8086处理器
  • MLU实现 comfyui+wan2.1 完成图生视频创作
  • 写屏障和读屏障的区别是什么?
  • Javascript基础语法
  • 【C语言输入输出函数应用】
  • Java--图书管理系统(简易版)
  • ENSP-OSPF综合实验
  • 记录学习《手动学习深度学习》这本书的笔记(十一)
  • [Java实战]Spring Boot 定时任务(十五)
  • 深度优先与广度优先:如何用算法思维优化学习策略?
  • go程序编译成动态库,使用c进行调用
  • 数据结构实验9.2:动态查找表的基本操作
  • 机器学习总结
  • 操作系统原理实验报告
  • 常用的rerank模型有哪些?都有什么优势?
  • AI(学习笔记第三课) 使用langchain进行AI开发(2)
  • Java原生结合MQTTX---完成心跳对话(附带源码)
  • Linux 进程等待
  • 数字化工厂中央控制室驾驶舱系统 API接口文档
  • 阿尔巴尼亚执政党连续第四次赢得议会选举,反对党此前雇用特朗普竞选经理
  • 国内首家破产的5A景区游客爆满,洛阳龙潭大峡谷:破产并非因景观不好
  • 6连败后再战萨巴伦卡,郑钦文期待打出更稳定发挥
  • “降息潮”延续,多家民营银行下调存款利率
  • 从采购到销售!市场监管总局指导行业协会防控肉品风险
  • 乘联分会:上半年车市价格竞争温和,下半年价格战或再开启