首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

ATL ActiveX的工作线程怎么向主线程发送消息,再由主线程Fire_XXX给javascript

2012-05-27 
ATL ActiveX的工作线程如何向主线程发送消息,再由主线程Fire_XXX给javascriptATL 工作线程如何向主线程发

ATL ActiveX的工作线程如何向主线程发送消息,再由主线程Fire_XXX给javascript
ATL 工作线程如何向主线程发送消息,再由主线程Fire_XXX给javascript。

试了工作线程使用SendMessage(handle, WM_STATE_CHANGE, (WPARAM)strlen(json), (LPARAM)json)发送消息

主线程收到消息,进行Fire但是javascript收不到。
class ATL_NO_VTABLE CTelImpl

实现:
LRESULT CTelImpl::OnCallStateChange(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& /*bHandled*/)
{
CComBSTR bstrText("事件通知消息传递测试!");
Fire_CallStateChange(&bstrText);
return S_OK;
}

我使用的是VC2010,有没有相关的实例提供一个,感激万分!

[解决办法]
javascript是一种脚本,如果没有宿主的话是收不到信息的....你的宿主是什么??浏览器么??
[解决办法]
http://blog.csdn.net/andrew_85/article/details/5266180
不知道你是不是想这样的

如果不是的话得到IWebBrowser2指针,用document方法再得到IHtmlDocument2接口,用这接口的parentWindow方法得到IHTMLWindow2,再调用execScript执行javascript
[解决办法]
http://hi.baidu.com/atyuwen/blog/item/318ceb9b220c1db0c9eaf491.html
或者是这个
[解决办法]
事件,连接点的问题吧,你了解下这两方面的
[解决办法]
还有就是看看Fire_CallStateChange的实现形式
[解决办法]
对,javascript是弱语言,无法知道你的事件,只有回调告诉js, 发给主线程可以记下主线程的句柄(是个框架类吧),然后主线程回调。

热点排行