CreateWindowEx调用ATL控件失败

问题描述

有一个C#做的dll控件,用VC6.0多文档调用,自己写了个示例,调用成功,::GetClientRect(_hSelf,&rcClient);_hAtl=::CreateWindowEx(WS_EX_CLIENTEDGE,TEXT("AtlAxWin"),strActiveXName,WS_CHILD|WS_VISIBLE|/*WS_CLIPCHILDREN|*/WS_EX_RTLREADING,,0,rcClient.right,rcClient.bottom,_hSelf,NULL,NULL,NULL);嵌入到公司用的源码时,就加载失败,各种找不到dll,怀疑是窗口句柄的问题,用_hSelf=this->m_hWnd;还是不成功。调试C#源码,程序入口是VC6.0,却能调用成功,个人觉得还是句柄什么的问题,因为从VC6.0调用发现c#发送了事件句柄却没有响应事件(用messagebox弹出提示),但是从C#调用却能响应消息。各位大侠,怎么回事?我的内心几乎是崩溃的。。。

解决方案

解决方案二:
要沉啊!!!

时间: 2024-08-28 13:35:40

CreateWindowEx调用ATL控件失败的相关文章

mscomm32 ocx-windows7下调用MSCOMM32.OCX控件失败

问题描述 windows7下调用MSCOMM32.OCX控件失败 目的: 在JSP页面中调用MSCOMM32.OCX控件处理串口打印,打印机用的是EPSON TM-T81小票打印机,在XP中通过IE访问调试通过,可以正常打印,在win7下打印失败,现希望在win7下可以正常打印 已处理的问题 MSCOMM32.OCX已拷贝至C:WindowsSysWOW64下 已在C:WindowsSysWOW64下执行 regsvr32 MSCOMM32.OCX注册成功 已在注册表注入如下内容 [-HKEY_

关于winform中多线程调用AX控件中的方法会阻塞UI线程的问题

问题描述 本人新手...winform中子线程调用AX控件中的某个耗时的方法(3.4秒)会阻塞UI线程,请问有没有办法在子线程中创建AX控件,让子线程去执行AX控件中的方法呢? 解决方案 解决方案二:你可以尝试直接在新的线程里执行该方法,不行的话只能由控件编写者提供异步的方法解决方案三:winform中子线程调用AX控件中的某个耗时的方法(3.4秒)会阻塞UI线程既然你是在子线程里调用,为什么会阻塞UI线程?放出你的代码来解决方案四:控件是vc写的,拖到form上的,SCM_Card_Chb是控

javaweb-网页调用ocx控件打开或创建注册表的权限问题

问题描述 网页调用ocx控件打开或创建注册表的权限问题 在某几个win7 64位笔记本上, 通过服务器页面调用ocx读取注册表会提示无权限的现象,但使用本地html文件调用没问题, 不知是何原因,求大侠给点提示 解决方案 又试了一下,使用世界之窗浏览器可以正常使用了.但不明白为何? 解决方案二: ie本地file协议浏览(intranet)和http访问(internet)使用的是不同的安全设置,你按照本地的intranet安全配置internet安全设置 不过你这种需求没什么意义,只能针对特殊

ocx控件调用:js调用ocx控件

js调用ocx控件:a.注册ocx控件, regsvr32 %控件路径%\名称.ocxb.如果注册成功,在注册表里可以查看到已注册的控件名称.c.打开注册表编辑器,在菜单栏有个编辑然后选择查找输入控件名称,可以找到该控件,并且分配一个OBJECT CLASSID,也可以在一些编辑器中找到该控件OBJECT,例如EditPlus.选择OBJECT(最下面一行菜单倒数第五个),点击该控件名称,生成一段代码这时可以用OBJECT 的 ID 值(TestCTIX)去调用 ocx 控件里的方法. 本文链接

win32应用程序中如何调用ocx控件呀?有没有哪位大神有写好的demo可以参考呀?

问题描述 win32应用程序中如何调用ocx控件呀?有没有哪位大神有写好的demo可以参考呀? win32应用程序中如何调用ocx控件呀?有没有哪位大神有写好的demo可以参考呀? 解决方案 例子:http://www.codeproject.com/Articles/18417/Use-an-ActiveX-control-in-your-Win-Project-witho

关于调用ActiveX控件的问题。

问题描述 关于调用ActiveX控件的问题. 自己做了一个ActveX控件,其中的一个属性是使用线程.但是在一个应用程序调用这个属性时,程序就崩溃了,而调用没有线程的另一个属性就没有问题,哪个大神能帮帮我. 解决方案 什么叫"使用线程"属性,你怎么实现的它?你的主程序必须用stathread方式调用控件. 解决方案二: 没看明白,楼主想表达什么问题 解决方案三: 使用线程就是: 我做的是一个信号灯的控件,这个控件里面有一个属性就是让它闪烁颜色,每秒闪烁一次 解决方案四: 解决方案五:

activex-涉及网页atl控件+界面的问题

问题描述 涉及网页atl控件+界面的问题 现在要给一个网页做一个基于atl的activeX控件,因为涉及到一定的界面问题,又不想使用mfc这么大的框架. 所以想问问关于atl控件的界面消息响应是怎么做的. 现在在网上看到个教程http://blog.csdn.net/sidyhe/article/details/12048553,但是做到 "新建cpp和h文件各一个,用来处理此Dialog的事情,消息处理函数如图"这一步就卡住了,不知道怎么添加,一添加类就又显示添加mfc类,不想用.这

c#-Arcengine +C# 中窗体之间调用AO控件的问题

问题描述 Arcengine +C# 中窗体之间调用AO控件的问题 简答的说有两个窗体 想要简单的在Form2中调用Form1的Axmapcontrol1的get_layer() _方法 comboBox1.Items.Add(frm.axMapControl1.get_Layer(i).Name); 我自己的方式是在Form1中把axmapcontrol1的属性设置为public然后在Form2中定义一个Form变量来调用 为什么值始终传不过去 而非AO控件可以这样传值 解决方案 c#中窗体之

求助,那位大哥知道在VS2005里面用C#调用NetMeeting控件出这样的问题?

问题描述 我在程序里面调用了netmeeting控件然后远行出现这样的错误无法获取"AxNetMeeting"控件的窗口句柄.不支持无窗口的ActiveX控件.错误出现在这个位置((System.ComponentModel.ISupportInitialize)(this.axNetMeeting1)).EndInit();不知道怎么了请各位只个招啊 解决方案 解决方案二:难道没有人知道在C#里面怎么用它吗?解决方案三:很难受吗?解决方案四:我在程序里面调用了netmeeting控件