浏览器插件

浏览器插件:B/S模式下通过在客户端浏览器安装插件调用外设或者处理特殊格式数据。

(这里暂时只讨论IE插件,商用中用的多一些)

常用插件有身份证阅读器、sim卡阅读器、银行卡校验插件、手写板插件、小键盘插件;

处理表格数据的华表插件、图片合成插件、图片添加水印插件,发票打印插件;

1、插件原理

插件一般使用c/c++开发,通过插件中接口处理,返回一个js对象供页面调用处理:

本质上就是通过OCX封装了调用操作系统的接口,而这些接口又通过JS对象中方法直接暴露给给页面来调用;

要想知道具体提供了哪些接口可用:可以通过调试走到该ActiveXObject对象处,通过监视该对象变量获得该对象支持的属性和方法。

2、插件安装与注册

浏览器的ActiveX插件的设置采用默认设置:

如果某个页面中含有该插件的<Object>元素,且第一次进入该页面,在窗口上方会弹出一条信息,告知客户当前页面需要安装插件,点击安装并注册该插件,一般会在C:\Windows\System32下生成该插件的ocx文件。

<object id="CardAccessor"
    classid="clsid:03AD53E8-D7E7-485D-A39A-D07B37DEFBC9"
    width="0"
    height="0">
</object>

注:对于操作本地文件Scripting.FileSystemObject,在windows随操作系统默认安装,不需要在页面定义<object>

3、页面调用

首先,创建这个插件对象

JavaScript中ActiveXObject对象是启用并返回 Automation 对象的引用。使用方法:

newObj = new ActiveXObject( servername.typename[, location])

ActiveXObject 对象语法有这些部分:

其中newObj是必选项。要赋值为 ActiveXObject 的变量名。

servername是必选项。提供该对象的应用程序的名称。

typename是必选项。要创建的对象的类型或类。

location是可选项。创建该对象的网络服务器的名称。

Automation服务器至少提供一类对象,例如字处理应用程序可能提供应用程序对象、文档对象和工具栏对象。

然后调用这个对象中方法即可:newObj.xxxfun()

时间: 2024-12-17 14:08:50

浏览器插件的相关文章

使用 Chrome 浏览器插件 Web Scraper 10分钟轻松实现网页数据的爬取

本文标签: WebScraper Chrome浏览器插件 网页数据的爬取 使用Chrome 浏览器插件 Web Scraper 可以轻松实现网页数据的爬取,不写代码,鼠标操作,点哪爬哪,还不用考虑爬虫中的登陆.验证码.异步加载等复杂问题. Web Scraper插件 Web Scraper 官网中的简介: Web Scraper Extension (Free!)Using our extension you can create a plan (sitemap) how a web site

浏览器插件研究

很早就想开发浏览器插件,像谷歌浏览器插件太丰富,但要熟悉javesript,go语言. 一般的Web应用对于浏览器插件能不使用的建议尽量不使用,因为其涉及到安全问题以及影响用户安装(或自动下载注册安装)体验问题.在有特殊需求(如涉及数据安全的金融业务数据交互.需插件才能实现的与本地设备的交互等)的情况下可以酌情慎用. 浏览器插件总体可以划分为两大阵营,即IE支持的插件以及非IE支持的插件.本来在Netscape时代,对于浏览器插件是有公用的规范的(NPAPI),一开始所有浏览器都支持该规范,包括

mac 下基于firebreath 开发多浏览器支持的浏览器插件

首先要区分什么是浏览器扩展和浏览器插件;插件可以像本地程序一样做的更多 一. 关于 firebreath http://www.firebreath.org firebreath 是一个夸平台,夸浏览器的,开发浏览器插件框架: 利用firebreath开发的浏览器插件,可以在多浏览器上安装:并且提供多种平台下的解决方案比如mac,windows 二. 关于mac 使用 firebreath 开发浏览器插件 官方教程 http://www.firebreath.org/display/docume

atitit. applet 浏览器插件 控件 的环境,开发,提示总结o9o

atitit. applet 浏览器插件 控件 的环境,开发,提示总结o9o 1. 建立applet:: 1 2. Applet 码 1 3. Applet (awt)跟japplet (swing)的区别.. 1 4. Html 码 1 5. Applet部署:::class 跟个jar 到个weebroot 2 5.1. 导入在的jar ,也放得个weebroot 哈,,,多个jar 逗号分割 2 6. 安全机制排除 D:\jdk1.7.0_01\jre\lib\security\java.

atitit. 浏览器插件 控件 applet 的部署,签名总结 浏览器 插件 控件 的签名安全机制o9o

atitit. 浏览器插件 控件   applet 的部署,签名总结 浏览器 插件 控件 的签名安全机制o9o 1. 服务器部署签名 1 2. 签名流程::生成密钥..导出cert正书,签名 1 3. jarsigner 错误: java.lang.IllegalArgumentException: MALFORMED 1 4. Jar的包装and签名的流程原理 2 5. 参考 2 1. 服务器部署签名 applet 的本地调试,可以使用调整java.policy的解决...虽然中间也能正式版使

chrome浏览器插件开发经验(一)

chrome浏览器插件开发经验(一) 最近在进行chrome浏览器插件的开发,一些小的经验总结随笔. 1.首先,推荐360的chrome插件开发文档:http://open.chrome.360.cn/extension_dev/overview.html 2.从chrome18开始往后,chrome浏览器插件开发的 manifest.json 文件中的 "manifest_version": 2 属性就必须被显式(固定)的声明了. 3.chrome插件开发,很大程度上需要chrome

浏览器插件获取网页内容

void GetHtmlContent() { //m_Explorer HRESULT hr; LPDISPATCH pDisp; IHTMLDocument2* phd;//IHtmlDocument2接口指针 IHTMLElement* pBody;//网页中的元素 pDisp = m_Explorer.get_Document(); hr = pDisp->QueryInterface(IID_IHTMLDocument2, (LPVOID*)&phd); pDisp->Rel

【代码备忘】火狐浏览器插件xpi自动从网站下载安装的代码

欢迎加入我们的QQ群,无论你是否工作,学生,只要有c / vc / c++ 编程经验,就来吧!158427611 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml&

Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率..

Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率.. 1. hybrid App 1 1.1. Hybrid App为什么会兴起编辑 1 1.2. 如何实现网页语言与程序语言的混合编辑 2 1.2.1. 多View混合型 2 1.2.2. 单View混合型 2 1.2.3. Web主体型 2 1.3. Hybrid App的瓶颈与未来编辑 3 2. Web App.Hybrid App.Native APP对比

chrome浏览器插件启动本地应用程序

chrome浏览器插件启动本地应用程序 2014-04-20 00:04:30|  分类: 浏览器插件|举报|字号 订阅 下载LOFTER我的照片书  | chrome的插件开发这里就不多讲了,本篇文章只讲如何调用谷歌浏览器的api启动本地的程序并与之通信 要启动本地的应用插件需要包括两部分的内容: 1)安装到浏览器的插件部分 2)放置在本地的json文件 第一部分就跟普通的谷歌浏览器插件是一样的,包括两个必须的文件: 1)background.js(名字不一定为background......