• 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 > ocx控件事件的触发问题,为何有时候不能触发?

ocx控件事件的触发问题,为何有时候不能触发?

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

佚名通过本文主要向大家介绍了ocx控件安装,ocx控件下载,ocx控件注册,ocx控件,如何注册ocx控件等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: ocx控件事件的触发问题,为何有时候不能触发?
描述:

ocx控件是用VC++6.0编写,在网页中用vbs调用其中的方法和事件
但是很奇怪,在vb里面查看,事件可以fire,但是在网页里面,fire不了(实际应该已经fire).
这是什么原因呢?是否是控件的问题,请高手指点


解决方案1:

实现Com在工作线程中FireEvent的主要方法有:
1. PostMessage到主线程中,再由主线程消息响应函数FireEvent
2. 实现GIT(全局接口表),继承CComDynamicUnkArray_GIT类。
3. 继承IConnectionPointImplMT类。
4. 利用CoMarshalInterThreadInterfaceInStream和CoGetInterfaceAndReleaseStream
列集接口指针。
注意,2.3.4点都需要在工作线程中CoInitializeEx和CoUninitialize。
//////////////////////////////////////////////////////////////////////////////////
下面是jiangsheng(蒋晟.MSMVP2004Jan)老大的精彩回贴:
Knowledge Base Article Q157437: "Fireev.exe Fires Events from a Second Thread" 
http://support.microsoft.com/support/kb/articles/q157/4/37.asp
Knowledge Base Article Q196026: "PRB: Firing Event in Second Thread Causes IPF or GPF" 
http://support.microsoft.com/support/kb/articles/q196/0/26.asp
Michael Lindig's ATL: Firing events from worker threads article on CodeGuru.com 
http://www.codeguru.com/atl/ThreadEvents.shtml
Knowledge Base Article Q280512: "SAMPLE: ATLCPImplMT Encapsulates ATL Event Firing Across COM Apartments" 
http://support.microsoft.com/support/kb/articles/q280/5/12.asp
COM FAQ 11: HOWTO: Post messages to a hidden window for raising events from an Apartment-threaded object employing worker threads 
http://www.mvps.org/vcfaq/com/11.htm

解决方案2:

套间问题。
可以用几种办法,请查考下面文章
http://www.mvps.org/vcfaq/com/1.htm


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

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

  • 如何让OCX控件包含另外一个控件
  • 非常奇怪的问题,ocx出古怪的错误,请大家帮我看看
  • 怎样为ocx控件添加属性,并在word中使用该控件的属性?
  • 请教ocx控件的制作
  • OCX控件在IE50中的显示问题~~~急!!!
  • 在OCX中的弹出菜单为什么会变灰??
  • 用MFC开发的ocx控件中的edit编辑框,不能响应左右方向键问题?
  • 怎样最快地把一个几十万行的mfcexe程序弄成ocx控件?
  • 自己写了一个ocx控件,出了点小问题,大家看看是为什么。谢谢
  • ie中使用ocx的问题?

相关文章

  • 2017-06-04 我想知道COM中的类厂起什么作用的?
  • 2017-06-04 ISAPI能得到服务器硬件信息么
  • 2017-06-05 new操作是否线程安全?
  • 2017-06-04 用javascript调用atl编写的com组件,out型的variant怎么返回不了字符串呢?
  • 2017-06-05 是线程消息拦截还是系统消息拦截?
  • 2017-06-04 昨天遇到的一个面试题
  • 2017-06-04 mfc做的ActiveX控件,不能响应键盘上下左右消息?请高手执教?
  • 2017-06-05 简单问题,怎样得到当前进程的装载地址?
  • 2017-06-04 javascript里面怎么得到activex传过来的消息和javascript里面怎么让一个按钮变灰
  • 2017-06-04 我用ATL向导,只有一个框架程序,我没写代码,为什么编译到Performingregistration就死机了?是不是和操作系统有关?

文章分类

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

最近更新的内容

    • 用ATL写的控件为什么不出现在VC的控件列表内
    • ATL的组件中中应该在哪里释放对象里的资源
    • 关于用C++实现透明播放Flash播放的问题
    • thespecifiedprocedurecouldnotbefound的问题
    • 在线等,急呀,谁能给我发一个WEB中用ActiveX嵌WORD的例子,送上300分,
    • Vc60中从EXCEL9OLB中导出的excel9cpp和excel9h用来操作EXCEL请问如果设置列宽?
    • 关于HOOKAPI
    • 简单问题:怎么将VARIANT转换成字符串类型?
    • EnterCriticalSection的问题
    • 谁有能在XP下运行的修改文件头信息的代码!我找的都不能在xp下运行!xiangshifu@yahoocomcn

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

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