代码下载:http://www.gzyd.net/lael/iehelper.exe 应该是微软的代码,忘了原下载地址代码缺少的
#include "ExDisp.h"#include "ExDispID.h"
#include <strstrea.h>
#include "Mshtml.h"
#include <comutil.h>
#pragma comment(lib, "comsupp.lib")_com_util::ConvertStringToBSTR
_com_util::ConvertBSTRToString
这是网上找到的判断代码, 但我不知应该放哪??CComQIPtr<IWebBrowser2, &IID_IWebBrowser2> pDisp;
pDisp = pDispParams->rgvarg[1].pdispVal;CComQIPtr<IUnknown, &IID_IUnknown> pUnkDisp;
pUnkDisp = pDisp;CComQIPtr<IUnknown, &IID_IUnknown> pUnkBrowser;
pUnkBrowser = m_pWebBrowser2;//m_pWebBrowser2是SetSite中获得的接口if(pUnkBrowser == pUnkDisp)
{
//执行操作
}
else
{
//不执行
}

解决方案 »

  1.   

    这里也有相关的方法http://www.csdn.net/develop/Article/18/18465.shtm
    但我也不知怎么加上我的代码里去
      

  2.   

    有没在DISPID_BEFORENAVIGATE2中判断的代码?
      

  3.   

    噢,如果,你想做到判断是不是IFRAME将加载一个页面,写到DISPID_BEFORENAVIGATE2就可以。
    如果,判断是不是IFRAME已经加载页面完毕,就写到DocumentComplete中。
      

  4.   

    放到 DISPID_BEFORENAVIGATE2 会出现加载错误放到 DocumentComplete 正常
      

  5.   

    不是代码错啊 是这个:http://www.gzyd.net/lael/pic.jpg 打开IE弹出这个提示这因为这个空吗?
    pDisp = pDispParams->rgvarg[1].pdispVal;