• 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 > 急,求一个进程中2个线程调用ocx的互斥实现方法

急,求一个进程中2个线程调用ocx的互斥实现方法

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

佚名通过本文主要向大家介绍了mscomctl.ocx,comdlg32.ocx,ocx控件安装,ocx,comdlg32.ocx下载等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 急,求一个进程中2个线程调用ocx的互斥实现方法
描述:

做了一个ocx控件,在ie中调用,同时只允许一个ocx控件在运行
目前试了几种实现方法,1、在ocx中新建个窗口类,然后在初始化的时候判断窗口类是否存在,FindWindows(classname,NULL)。如果有窗口存在,则退出。
 2、在控件初始化的时候,createfile一个独占的文件,然后写数据,如果打不开或者无法写入数据
则判断有控件存在,退出。
 现在的问题是在ie8、ie6下都正常,这2个ie都是一个页面为一个进程的方式,但是在ie7下则不行
2中方法都没法判断控件存在,是否有其他好的方法啊。急,谢谢


解决方案1:

在IE7下,确认第一个控件加载时,全局文件创建成功了吗?

解决方案2:

内存映射一个标志位,读取设置标志位

解决方案3:

引用 8 楼 heimuking 的回复:
Quote: 引用 7 楼 oyljerry 的回复:

不管是开线程还是进程,你这个都是访问一个全局文件来做互斥,应该没问题啊,除非你互斥没成功

我也很奇怪,但是如果开2个ie7的窗口是没问题的,在一个ie7的窗口中开2个选项卡就不行

估计是独占方式是进程共享,2个tab在一个进程
你直接通过文件存在来判断,第一个打开时创建一个文件,第二个打开时判断文件在不在

解决方案4:

这个用Semaphore应该是满足要求的

解决方案5:

互斥的话,用mutex啊


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

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

  • 非常奇怪的问题,ocx出古怪的错误,请大家帮我看看
  • 注销ocx后仍驻留内存
  • 在OCX中的弹出菜单为什么会变灰??
  • ocx中事件不能在html文件中被触发?请高手指点。回复送分
  • 关于OCX问题
  • 请COM高手帮助,如何重定向OCX控件
  • ocx注册问题,谢谢!
  • vb和vc开发ocx控件哪个更适合?
  • ocx中的线程中访问网页
  • ocx中添加属性时为什么属性名不能带下划线

相关文章

  • 2017-06-05 请教各位大虾!关于线程的简单问题!!!在线等!
  • 2017-06-04 现金收购股票软件源代码!顶者有分!!!
  • 2017-06-05 网页的"图片另存为"功能,用VC如何实现MFC?】我用的webbrowserExecWB4,2,NULL,NULL
  • 2017-06-05 两个线程能否同时操作一个视图
  • 2017-06-05 在一个ATL工程中,定义了两个类,在另一个类中怎样创建一个类的实例,并且这个类中的一个事件以这个类作为参数类型?
  • 2017-06-05 关于进程的问题?
  • 2017-06-04 很简单的问题!在ATL中导入msword9olb不能编译通过
  • 2017-06-05 atl创建com组件的问题
  • 2017-06-05 该死的MSDN!谁能帮帮我!(GetMonitorInfo与winuserh
  • 2017-06-04 求一个使用连接点的列子

文章分类

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

最近更新的内容

    • 怎样将单选按纽风格的字段显示
    • 自定义控件注册提示"由于应用程序配置不正确应用程序未能启动"
    • 请高手看一下程序,关于线程
    • 使用DLL和Mouse钩子获取信息后定时向邮箱发送的问题?
    • 各位高手,谁能回答我关于pipe的问题???
    • 2005开发的OCX打包,如何将vcredist_x86exe也写到inf中,打包执行?
    • SetCommPort串口号要是大于16了。怎么办。。。在线等
    • 在一个SDK的DLL里不能用MFC,我该怎么办?
    • 熟悉COM的高手请进
    • 高手请进,急,Word的OLE问题

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

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