前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >c++混合js编程

c++混合js编程

作者头像
celineWong7
发布2022-12-18 18:00:17
1.3K0
发布2022-12-18 18:00:17
举报
文章被收录于专栏:web前端踩坑web前端踩坑

1 背景

有个项目是c++开发(MFC),内嵌一个浏览器容器(IE内核),c++控制该容器浏览器某个html,然后展示页面。 静态页面还好说,但通常希望一些交互,c++和html页面(JavaScript,后面简称js)互通信息。

2 实现方式

参考文章中,作者已详细讲述了实现方式,可以直接跳转阅读。 本人对c++段不甚了解,此处是摘取一个demo中的关键实现语句做备忘。

    1. C++要怎么引入html页面? mHtmlView.Navigate(strHtml);
    1. C++要怎么传递json数据给html页面,动态渲染数据? c++调用js方法并传参: CallJScript(L"setData", szData.GetAt(i));
    1. js要怎么调用c++的方法? 1)js中:通过 window.external.函数名 来调用c++中的函数; 2)c++中:通过DISP_FUNCTION宏将一个函数映射到Dispathch映射表中

3 结语

后来项目采用qt开发了,qt可以使用webengine(具有Chrome内核特征)来调用页面,交互可以使用qwebchannel。感觉更清晰明了了。

参考文章: VC与JavaScript交互(一) ———— 如何实现_软件架构农-CSDN博客_vc与javascript交互 VC与JavaScript交互(二) ———— 调用JS函数_encoderlee的博客-CSDN博客 VC与JavaScript交互(三) ———— JS调用C++ - wgwyanfs - 博客园 C++和JavaScript脚本的相互调用 - 我不是木鱼 - 博客园 啊,这篇文章突然被加密了。。。 C++/JS混合开发_冷月醉雪的博客-CSDN博客_c++ js 截取自C++/JS混合开发其中的片段。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-12-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 背景
  • 2 实现方式
  • 3 结语
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档