Write by Alan Yang

----------------------------------------------

这篇文章是为了解决chrome extentions与native application进行通信,以及将extentions的内容通过exe程序保存到本地。

需要完成的任务可以拆分为三个:

1、编写一个chrome插件

2、用C/C++编写一个exe程序

3、通过json配置连接chrome插件与exe程序

一、chrome插件

先学会制作一个helloworld的chrome简单插件,然后根据与本地应用通信的原则,编写相应的js文件。如:background.js

var port = chrome.runtime.connectNative('com.my_company.my_application');
port.onMessage.addListener(function(msg) {console.log("Received" + msg);
});
port.onDisconnect.addListener(function() {console.log("Disconnected");
});
port.postMessage({ text: "Hello, my_application" });

源码详见:connectNative文件夹

Native Messaging相关推荐

  1. Google Chrome Native Messaging开发实录(一)背景介绍

    最近接手了一个针对Google Chrome的需求,最终是使用Native Messaging来实现的.通过这个连载,将把本次开发从方案选定到编码的全部过程进行完整的回顾,并记录开发过程中踩过的各种坑 ...

  2. 如何使用Native Messaging API 打开window程序

    问 如何使用Native Messaging API 打开window程序 cmd javascript terminal chrome Tychio 2013年03月26日提问 关注 1 关注 收藏 ...

  3. chromium 37 chrome Native messaging 本地消息机制

    01 chrome Native messaging Native messaging 扩展解决chrome与本地程序通信的问题,可以解决从浏览器启动二进制文件的问题. 是通过扩展为browser进程 ...

  4. Chrome 插件: 起动本地应用 (Native messaging)

    转自:http://www.myexception.cn/internet/1729118.html 最近碰到了一个新问题,需要利用Chrome 的插件, 从我们的一个网站中启动一个我们的本地C#应用 ...

  5. firebase 推送_使用Firebase Cloud Messaging发送推送通知

    firebase 推送 Ever wondered how does your smartphone receive and handle notifications whether be in fo ...

  6. NPAPI和PPAPI开发

    https://blog.csdn.net/lee353086/article/details/49302917 环境:  [1]Visual Studio 2010 SP1     Visaul S ...

  7. 卡巴斯基安全浏览器_一年三番五次修,卡巴斯基为何依然无法完美修复杀毒软件中的这些洞 (技术详情)?...

    聚焦源代码安全,网罗国内外最新资讯!编译:奇安信代码卫士团队卡巴斯基 web 防护功能将拦截广告和追踪器,警告用户关于恶意搜索结果等等.但这个功能在浏览器中运行而且需要和主应用程序通信.要确保这种通信 ...

  8. 一年三番五次修,卡巴斯基为何依然无法完美修复杀毒软件中的这些洞 (技术详情)?...

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 卡巴斯基 web 防护功能将拦截广告和追踪器,警告用户关于恶意搜索结果等等.但这个功能在浏览器中运行而且需要和主应用程序通信.要确保这 ...

  9. chromium笔记目录

    1.下载源码 2.编译工程 3.webui 4.ppapi 5.native messaging 6.浏览器更新(mini_installer.courgette) 先记录最近学习研究东西的目录,回头 ...

最新文章

  1. 优雅地记录http请求和响应的数据
  2. linux如何配置网卡地址吗,教会你如何完成Linux网络地址配置
  3. 周报速递丨百度与美团等互联互通;京东Shopify达成合作
  4. Django框架Day3------之Models
  5. JavaSE-21 字符编码简介
  6. 尤雨溪介绍 Vue 3:语法不变、TS 支持很好、2.0 系列还会发一个版本
  7. 转:让程序只运行一个实例的四种方法
  8. leetcode力扣105. 从前序与中序遍历序列构造二叉树
  9. mtk android 编译环境,MTK android 快速编译方法.docx
  10. 用数据库表填充下拉列表框
  11. 怎样找一张图片的原图、出处?最全搜图网站+具体案例分享
  12. 问题:必须使用记录或另一备份以恢复包含系统注册表
  13. python 版权保护,python爬虫篇4——爬取专利著作权信息
  14. Leetcode 简单四 罗马数字转整数
  15. ReferenceError: xxx is not defined
  16. SAP MM 无价值物料管理的一种实现思路
  17. vue 公共列表选择组件,引用museUI的样式
  18. Zero-shot knowledge distillation in deep networks
  19. 涂鸦智能利润不及预期:股价暴跌18%,归母净利润-7866.30万美元
  20. 小学三年级计算机上册课后反思,三年级上册数学教学反思

热门文章

  1. 写作素材,文字素材网站推荐
  2. mysql 同一张表,两列数据对比
  3. Netapp存储选购的经历
  4. Parallel-data-free voice conversion using cycle-consistent adversarial networks
  5. c# 未能加载文件或程序集mysql.data,c# - 当我未引用文件或程序集Oracle.ManageddataAccess时,它无法加载 - 堆栈内存溢出...
  6. 十问十答,带你一起解锁「菊风VoLTE视频客服」
  7. kali破解wifi
  8. html5播放器 定制开发,最好的6个HTML5的多媒体播放器
  9. Springboot + i18n国际化
  10. java互联网岗位_前程无忧打造“互联网精英” Java职位需求广