比如在IE中, 同一进程的两个IE窗口如果都创建我的这个控件那全局就会出现两个IE都用一个全局变量的状况, 这是我不能接受的.
有什么办法改变这一情况么? 我就不能在activex中使用全局变量,同时有让控件支持同一进程多实例么?
有什么办法改变这一情况么? 我就不能在activex中使用全局变量,同时有让控件支持同一进程多实例么?
解决方案 »
- asInvoker权限的程序怎么调用requireAdministrator的程序?
- 为什么按钮放到msflexgrid表格控件里,按钮的所有消息都不响应了呢
- Active控件中能否再嵌入其它Activex控件
- 偶想开发一个ie插件,象google搜索工具栏那样子的一个东东,哪位老大给些资料啊?谢谢!
- 怎么判断一个事件句柄『CreateEvent()创建的』是否合法『不能改变事件的信号态』??
- 一个MFC的小问题!
- 急,高分求一MPEG4流媒体播放器,谢谢,分数不够可另开贴
- 求助:关于IE6.0中Frame元素的获取 (IHTMLDocument) (问了好久啦!救命阿)
- MS Platform SDK Feb 2003 For VC6 和 MSDN2001 chm 版的!
- IOCP基础问题,请熟悉的人指点一下?
- 揭露金碟杭州分公司的罪恶
- 每次编译有COM的项目都有很多IDL输出,影响我的速度,能不能去掉那些多余的?
结果 同一进程的两个IE窗口如果都这个控件。只要在一个窗口中设置了信号,结果,另外一个窗口中的activex中的线程检测到有信号,也退出了,对于这中情况改怎么处理呀。
{
public:
virtual void RemoveAll();
virtual void LastWork(LPVOID _pGame);
void RemoveGame(CString _name);
void RemoveGame(LPVOID _pGame);
void AddGame(CString _game,LPVOID _pGame);
CInstansManage();
virtual ~CInstansManage();
protected:
CMapStringToPtr m_games;
};
我这里是一个游戏动态库的管理类,其实也是dll,有多个游戏共用,情况类似。
你应根据实例的名字(guid或名字)来区分,实际上,也就是需要一个管理实例的模块就象类厂。
实例的增加,减少都需要象这个类注册和注销,最后没有实例后,删除本身。或者你可以实现一个枚举接口,来访问每个实例。
你这个是写在客户端(调用COM) 的,来管理COM实例的,还是 写在COM里面 来管理 COM 还是COM中的线程的。
同一进程的两个IE窗口之间实际上并不是楼主所说的同一进程的多个实例,因此我不认为使用锁会
出现“一个IE工作的时候, 另一个IE挂起”的情况. 至于打开了两个IE进程的话,你的ActiveX控件将被分别映射到两个IE的进程空间之中。