我添加了newwindow3事件的代码,但是在编译的时候提示这部分代码中的
BEGIN_EVENTSINK_MAP(CAdHtmlView,CHtmlView)
ON_EVENT(CAdHtmlView,AFX_IDW_PANE_FIRST,DISPID_NEWWINDOW3,NewWindow3,VTS_PDISPATCH VTS_PBOOL VTS_I4 VTS_BSTR VTS_BSTR)
END_EVENTSINK_MAP()“DISPID_NEWWINDOW3” : 未声明的标识符,头文件我也加了
#include <exdispid.h>
#include <Mshtml.h>
#include <Mshtmdid.h>
#include <shobjidl.h>
#include <exdisp.h>请做过的朋友指点,我用的是 vc 7.0
BEGIN_EVENTSINK_MAP(CAdHtmlView,CHtmlView)
ON_EVENT(CAdHtmlView,AFX_IDW_PANE_FIRST,DISPID_NEWWINDOW3,NewWindow3,VTS_PDISPATCH VTS_PBOOL VTS_I4 VTS_BSTR VTS_BSTR)
END_EVENTSINK_MAP()“DISPID_NEWWINDOW3” : 未声明的标识符,头文件我也加了
#include <exdispid.h>
#include <Mshtml.h>
#include <Mshtmdid.h>
#include <shobjidl.h>
#include <exdisp.h>请做过的朋友指点,我用的是 vc 7.0
而且应该需要定义目标平台为Windows XP Sp2以上版本
你也可以自己加定义,不过一个常量而已。
这个事件在Windows XP Sp2版本的IE6以及IE7或更新版本里面才会触发。
我测试了一下添加以下两个头文件即可。
在你的程序中可以直接将NewWindow3改为 273.
#include <MsHTML.h>
#include <comdef.h>ON_EVENT(CIESharedDialog, IDC_EXPLORER1, 273 /* NewWindow3 */, OnNewWindow3Explorer, VTS_PDISPATCH VTS_PBOOL VTS_I4 VTS_BSTR VTS_BSTR )