• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 请教高手:javascript如何调用IE插件里的函数?

请教高手:javascript如何调用IE插件里的函数?

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了请教高手,请教电脑高手,请教word高手,请教的意思,请教学霸8 6 13 8等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 请教高手:javascript如何调用IE插件里的函数?
描述:

大家好,我想用BHO给IE写一个插件,插件里写一个方法,如PluginMethod,然后javascript里调用PluginMethod(),
目前可以写一点BHO程序了,只是实现js调用,还是没有头绪。
请问,如何做?


解决方案1:

也可以参考这个:http://www.codeproject.com/KB/atl/HTMLControl.aspx

解决方案2:

脚本调用:

function Test()
{
window.external.Test();
}

解决方案3:

BHO接口实现IDocHostUIHandler接口。
// 取webBrowser的ICustomDoc对象,把自己设置给文档

CComPtr<IDispatch> spDisp;
CComQIPtr<IHTMLDocument2> spDoc;
HRESULT hr = pWeb->get_Document(&spDisp);
spDoc = spDisp;
if (spDoc)
{
CComPtr<ICustomDoc> spCustDoc;
hr = spDoc->QueryInterface(__uuidof(ICustomDoc), (void**)&spCustDoc);
if (spCustDoc)
{
hr = spCustDoc->SetUIHandler(this);
}
}

然后BHO实现IDispatch的GetIDsOfNames和Invoke。
脚本调用你的函数时会先调用GetIDsOfNames,你返回id给它,然后它就会通过Invoke来调用你的函数了。

解决方案4:

没必要使用bho技术,普通的com组件就行。
只需要提供了IDispatch接口的控件就能被js调用


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 请教directx的问题,高手请进÷÷÷÷÷÷
  • COM初始化,请教高手,能系统介绍一下原理,谢谢了,
  • COM初始化,请教高手,能系统介绍一下原理,谢谢了!!!
  • 请教高手,关于海明码的检验位是如何计算的,有何规则讲解OK,马上结贴
  • COM高手请教
  • 请教高手VC中在程序主窗口中如何移动DataList这个ActiveX控件窗口,MoveWindow失效了
  • 请教高手,如何在SDK程序中使用Flash控件,请高手帮帮忙!
  • 请教高手们一个非常非常难的问题
  • 请教高手,怎样调试DeskBand?难道要装ie的Debug版本?
  • 请教高手该如何解决这个难题?

相关文章

  • 2017-06-04 谁能系统介绍一下net与com的关系,现在还有学习atl、dcom的必要吗?原帖子出问题了,进不去,没法加分!
  • 2017-06-04 我用VB开发一个COM组件,要返回一张图片,这个组件可能被VC调用,请问怎么返回图片,VC中又要怎么处理,,,?
  • 2017-06-04 关于ActiveDriectory编程问题
  • 2017-06-04 急问:如何通过现有控件创建新控件??
  • 2017-06-04 奇怪,vc做的控件,在vc下不能用,在vb下反而能用。
  • 2017-06-05 VC中的“进程”和“任务”
  • 2017-06-05 tlb文件不含有IDispatch接口的话,就不能用类向导->增加新类->从类型库添加
  • 2017-06-04 封装了其它控件的ActiveX在debug下事件正常,release版本在web上事件不触发
  • 2017-06-04 如何获得压缩包中的文件列表
  • 2017-06-04 有谁用过IHTMLDocument4中的createDocumentFromUrl方法帮忙看一看下面的程序有什么问题

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 如何实现全局HTTP请求过滤?有熟悉AsynchronousPluggableProtocol的没?
    • 请问线程和OnTimer函数哪个用来做后台的数据采集比较好?
    • 一个常量值20分,进来拿吧!
    • 西安程序员集合一下!放出200分!hoho!
    • 请教:在VB中能够象Excel那样seta=GetOjbect;setb=aGetB的com实现
    • dll中的窗口接收消息的问题,大家帮一下。
    • Windows的线程有没有通讯机制
    • 新手初学,请指点一个问题,关于template
    • 请大家介绍几本从头学COM(我是指从COMSDK开始)编程的书
    • ATLclass关系图,那位有清晰的,仍一个过来^_^

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有