请教,IWebbrowser2 的跨进程使用

nCaterDmc 2013-08-05 10:37:58
我在程序中需要处理NewWindow3事件,
NewWindow3(IDispatch** ppDisp,VARIANT_BOOL* Cancel,unsigned long dwFlags,BSTR bstrUrlContext,BSTR bstrUrl)

第一个参数要传入新的浏览器指针,才能完成导航。 如果不传入,IE就会默认导航打开。

我现在的问题是,我想在新进程创建一个IWebbrowser2的对象,并用这个完成上述NewWindow3新的URL的导航,、
求支招。感激涕零。
...全文
191 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
盘古点击 2015-03-30
  • 打赏
  • 举报
回复
通过IWebbrowser2对象指针 赋值能有效吗,它们不在一个进程空间里
nCaterDmc 2013-08-22
  • 打赏
  • 举报
回复
感谢两位大哥的回复。 结贴了。
fishion 2013-08-13
  • 打赏
  • 举报
回复
把ppDisp指定到新的IWebbrowser2对象指定中就行了例如 *ppDisp = IWebbrowser2对象指针
725137 2013-08-10
  • 打赏
  • 举报
回复
问题描述得根本不清楚,什么是新进程调用??? 你的意思难道是说你有一个exe程序A,A程序中有一个方法 NewWindow3(IDispatch** ppDisp,VARIANT_BOOL* Cancel,unsigned long dwFlags,BSTR bstrUrlContext,BSTR bstrUrl); 然后还有一个exe程序B,想在B中得到IWebbrowser2,然后传给A程序,去调用A程序中的方法么??? 这样做的话,明显是不行的。因为每个进程所分配的空间都是独立的。B无法去访问A的内存空间。 如果你非要这样做的话,你可以把B做成一个Dll,然后通过远程注入的方式。将这个Dll注入到A中去。然后在B.dll中去调用A程序的那个方法。 怎么注入B.dll到A中去呢,你可以写一个C程序。这个C程序用到远程注入技术,将b.dll注入到A中去。

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧