我写一个ActiveX,定义一下一个事件RecordMsg有一个参数LPCTSTR cardid,然后我用一个函数来引发这个事件,doitmsg(LPCTSTR pBuffer){FireRecordMsg(pBuffer);}编译没有问题,在执行时,只要用这个函数引发事件,就会弹出一个错误,好像是系统错误,请高手指点一下,我的目的是触发一个事件,这个事件返回一下字符串参数出去,我刚接触VC,以前用的是VB,高手多指点,感激不尽
解决方案 »
- 求VC++开发自定义控件,读写XML、操作DataSet、连接数据库实例资源
- VC6.0中,如何在已有的对话框中添加控件
- 在看一段代码,对代码中其中一段定义不太明白,请大家指教
- 关于重叠端口实现的几点疑问!
- 关于CToolTipCtrl的问题
- 请问在一个VC的工程中怎么把系统的英文提示改成中文的?
- 请教属性页设置问题!!
- 求教:VC++的编辑控件如何设置成多行操作,为什么要加CTR+ENTER才能换行,能不能自己设置成只用ENTER来换行?谢谢!
- 16色位图的存储格式知多少??图像编程的人帮帮忙!!
- VC的Project Setting中如何disable 一个 warning message.
- 送分了:为什么同一个结构,获取的长度不一致?
- 窗口随view大小改变而自动改变的函数?
你举一个例子,怎样让控件触发一个事件,传出一个字符串出去,谢谢
我用向导生成的,名字为RecordMsg,在下面的参数列表选择LPCTSTR类型,参数名称为CardID
然后我在我的函数里面就用FireRecordMsg("hello world")但是就是报错
在线程函数里面调用了doitmsg(buff);
在用控件的那个程序上(VB)
private sub a_RecordMsg(byval cardid as string)//VB自动生成的代码
msgbox cardid
end sub
SendMessage(your_control_hwnd, FIRE_EVENT_MSG, pBuffer, 0);
我是做一个控件,这个控件启动了一个线程去都串口的数据,如果读到数据我就用postmessage去发送以一个消息通知控件的控制类对象,然后在控件的控制类窗口的消息处理函数中用FIRE来触发事件, 但是现在是在VC做的容器中可以收到事件,但是IE确收不到,
究竟该怎么办啊???
帮帮我把
http://support.microsoft.com/support/kb/articles/q157/4/37.asp
Q196026: PRB: Firing Event in Second Thread Causes IPF or GPF
http://support.microsoft.com/support/kb/articles/q196/0/26.asp
Firing events from worker threads
http://www.codeguru.com/atl/ThreadEvents.shtml
Q280512: SAMPLE: ATLCPImplMT Encapsulates ATL Event Firing Across COM Apartments
http://support.microsoft.com/support/kb/articles/q280/5/12.asp