⑴ 我用ChtmlView写了一个浏览器,现在想实现Ctrl+单击图片将其保存在指定目录下,这个该怎么弄呢
首先,你的CHtmlView对象要处理鼠标单击消息。记录下鼠标的坐标。
然后使用CHtmlView::GetHtmlDocument()方法获取LPDISPATCH指针,通过这个指薯岁针数携睁可以得到整个html页面元隐者素对象的控制权。
将得到的LPDISPATCH指针强制转换为IHTMLDocument2指针,然后调用IHTMLDocument2::elementFromPoint(x, y)方法,参数为你之前获取到的鼠标坐标。
这样就可以得到IHTMLElement对象,这个IHTMLElement对象即为html里图片元素的对象(如果你点的是图片)。这个对象实际上在html里面是个指向图片的URL连接,通过这个连接,即可获取图片并将其保存。
好好看下MSDN上关于MSHTML这一章。
⑵ MFC的MFC类别
CAnimateCtrl 自动化通用控件 afxcmn.h
CArchive afx.h
CArchiveException afx.h
CArray afxtempl.h
CAsyncMonikerFile 在ActiveX控件中提供对异步标记的支持 afxole.h
CAsyncScoket 封装Windows Sockets API,参看CSocket afxsock.h
CBitmap afxwin.h
CBitmapButton afxext.h
CBrush afxwin.h
CButton 按钮控件对象 afxwin.h
CByteArray afxcoll.h
CCachedDataPathProperty 允许一个ActiveX控返亩件异步传输属性数据和缓冲内存中的数据,参考CDataPathProperty afxctl.h
CCheckListBox afxwin.h
CClientDC afxwin.h
CCmdTarget 所有能够接收和响应消息的对象的凳戚基类afxwin.h
CCmdUI afxwin.h
CColorDialog 颜色选择的通用对话框,提供为显示系统定义的颜色列表 afxdlgs.h
CComboBox 组合框对象 afxwin.h
CComboBoxEx CComboBox类的派生类漏粗森,用于支持在组合框控件中的图像列表 afxcmn.h
CCommandLineInfo afxwin.h
CCommonDialog afxdlgs.h
CConnectionPoint afxdisp.h
CControlBar afxext.h
CCreateContext afxext.h
CCriticalSection afxmt.h
CCtrlView afxwin.h
CDaoDatabase afx.h
CDaoException afx.h
CDaoFieldExchange afx.h
CDaoQueryDef afx.h
CDaoRecordset 代表选自数据源的记录集。CDaoRecordset对象可用于三种格式:表类型记录集,动态集类型记录集和快照类型记录集 afx.h
CDaoRecordView 提供表单视图,以在控件中显示数据库记录。表单视图是CDaoRecordset对象的一部分。参考CFormView和CRecordView afx.h
CDaoTableDef afx.h
CDaoWorkspace afx.h
CDatabase afxdb.h
CDataExchange afxwin.h
CDataPathProperty 实现一个ActiveX控件属性,它能够异步加载其数据。这个类允许ActiveX控件在后台下载属性数据时被激活 afxctl.h
CDateTimeCtrl 封装新的日期/时间选取器控件 afxdtctl.h
CDBException afxdb.h
CDBVariant afxdb.h
CDC afxwin.h
CDialog 用于包含控件窗口的对话框对象 afxwin.h
CDialogBar afxext.h
CDocItem afxole.h
CDockState afxadv.h
CDocObjectServer afxdocob.h
CDocObjectServerItem afxdocob.h
CDocTemplate afxwin.h
CDocument 用于管理程序的数据的类 afxwin.h
CDragListBox Windows列表框,允许用户把其中的项拖放到不同的位置 afxcmn.h
CDumpContext afx.h
CDWordArray afxcoll.h
CEdit 用于文本输入的子窗口控件 afxwin.h
CEditView 提供Windows编缉控件的功能。因为CEditView派生于Cedit,该对象可同文件和文件模板一同使用 afxext.h
CEvent afxmt.h
CException afx.h
CFieldExchange afxdb.h
CFile afx.h
CFileDialog 通用文件对话框,提供Open和Save As对话框中的功能 afxdlgs.h
CFileException afx.h
CFileFind afx.h
CFindReplaceDialog afxdlgs.h
CFont afxwin.h
CFontDialog 通用字体对话框,用于显示当前已装入系统的字体列表 afxdlgs.h
CFontHolder afxctl.h
CFormView 包含对话框控件的窗口 afxext.h
CFrameWnd SDI(单窗口界面)框架窗口 afxwin.h
CFtpConnection afxinet.h
CFtpFileFind afxinet.h
CGdiObject afxwin.h
CGopherConnection afxinet.h
CGopherFile afxinet.h
CGopherFileFind afxinet.h
CGopherLocator afxinet.h
CHeaderCtrl 标题通用控件 afxcmn.h
CHotKeyCtrl 热键通用控件 afxcmn.h
CHtmlStream afxisapi.h
CHtmlView 实现Web Browser控件的视图类,能够访问当地或Web上的HTML文件。 afxhtml.h
CHttpConnection afxinet.h
CHttpFile afxinet.h
CHttpFilter 创建并处理超文传输协议过滤器对象,该对象用于过滤用于HTTP请求的服务器通知 afxisapi.h
CHttpFilterContext afxisapi.h
CHttpServer Internet Server API(ISAPI)的包装类 afxisapi.h
CHttpServerContext afxisapi.h
CImageList afxcmn.h
CInternetConnection afxinet.h
CInternetException afxinet.h
CInternetFile afxinet.h
CInternetSession afxinet.h
CIPAddressCtrl IP地址控件。类似于编缉框,该控件接收Internet 协议格式的地址 afxcmn.h
CList afxtempl.h
CListBox 列表框对象 afxwin.h
CListCtrl 列表视通用控件 afxcmn.h
ClistView 简化CListCtrl的使用,添加了对文件和视图的支持 afxcview.h
CLongBinary afxdb_.h
CMap afxtempl.h
CMapPtrToPtr afxcoll.h
CMapPtrToWord afxcoll.h
CMapStringToOb afxcoll.h
CMapStringToPtr afxcoll.h
CMapStringToString afxcoll.h
CMapWordToOb afxcoll.h
CMapWordToPtr afxcoll.h
CMDIChildWnd MDI(多文档界面)子框架窗口 afxwin.h
CMDIFrameWnd afxwin.h
CMemFile afx.h
CMemoryException afx.h
CMemoryState
CMenu afxwin.h
CMetaFileDC afxext.h
CMiniFrameWnd 半高的框架窗口,主要用于浮动工具栏。一个小框架窗口没有最小化和最大化按钮,但其他都类似于正常的框架窗口 afxwin.h
CMonikerFile afxole.h
CMonthCalCtrl 月历控件,用于显示一个用户可选择日期的日历 afxdtctl.h
CMultiDocTemplate afxwin.h
CMultiLock afxmt.h
CMutex afxmt.h
CNotSupportedException afx.h
CObArray afxcoll.h
CObject afx.h
CObList afxcoll.h
COleBusyDialog afxodlgs.h
COleChangeIconDialog afxodlgs.h
COleChangeSourceDialog afxodlgs.h
COleClientItem afxole.h
COleCmdUI afxdocob.h
COleControl afxctl.h
COleControlMole afxctl.h
COleConvertDialog afxodlgs.h
COleCurrency afxdisp.h
COleDataObject afxole.h
COleDataSource afxole.h
COleDateTime afxdisp.h
COleDateTimeSpan afxdisp.h
COleDBRecordView afxoledb.h
COleDialog afxodlgs.h
COleDispatchDriver afxdisp.h
COleDispatchException afxdisp.h
COleDocObjectItem afxole.h
COleDocument 把一个文件看作为CDocItem对象的一个集合。包容器和服务器都需要这个结构,因为它们的文件必须能够包含OLE项 afxole.h
COleDropSource afxole.h
COleDropTarget afxole.h
COleException afxdisp.h
COleInsertDialog afxodlgs.h
COleIPFrameWnd afxole.h
COleLinkingDoc OLE包容器文件的基类,这些文件支持对它们所包含项的链接 afxole.h
COleLinksDialog afxodlgs.h
COleMessageFilter afxole.h
COleObjectFactory afxdisp.h
COlePasteSpecialDialog afxodlgs.h
COlePropertiesDialog afxodlgs.h
COlePropertyPage afxctl.h
COleResizeBar afxole.h
COleSafeArray afxdisp.h
COleServerDoc OLE服务器文件的基类 afxole.h
COleServerItem 为OLE项提供一个服务器界面 afxole.h
COleStreamFile afxole.h
COleTemplateServer afxdisp.h
COleUpdateDialog afxodlgs.h
COleVariant afxdisp.h
CPageSetupDialog afxdlgs.h
CPaintDC afxwin.h
CPalette afxwin.h
CPen afxwin.h
CPictureHolder afxctl.h
CPoint atltypes.h
CPrintDialog 通用打印对话框,提供Print和Print Setup对话框中的功能 afxdlgs.h
CPrintInfo
CProgressCtrl 通用进程指示器控件 afxcmn.h
CPropertyPage 代表属性表单中的一页 afxdlgs.h
CPropertyPageEx
CPropertySheet 属性表,也叫做多选项卡对话框。一个属性表由一个CPropertySheet对象和几个CPropertyPage对象组成 afxdlgs.h
CPropertySheetEx
CPropExchange afxctl.h
CPtrArray afxcoll.h
CPtrList afxcoll.h
CReBar afxext.h
CReBarCtrl afxcmn.h
CRecentFileList afxadv.h
CRecordset 用于访问数据库表或查询的类 afxdb.h
CRecordView 包含对话框控件的窗口 afxdb.h
CRect atltypes.h
CRectTracker afxext.h
CResourceException afxwin.h
CRgn afxwin.h
CRichEditCntrItem afxrich.h
CRichEditCtrl 用户能够输入和编缉文本的窗口,提供字符和程序段格式,以及对嵌入OLE项的支持 afxcmn.h
CRichEditDoc afxrich.h
CRichEditView afxrich.h
CRuntimeClass
CScrollBar 滚动条对象 afxwin.h
CScrollView 可滚动的窗口,派生于CView afxwin.h
CSemaphore afxmt.h
CSharedFile afxadv.h
CSingleDocTemplate afxwin.h
CSingleLock afxmt.h
CSize atltypes.h
CSliderCtrl 提供包含一个滑块和可选的刻度线的窗口 afxcmn.h
CSocket Windows Socket API的包装类 afxsock.h
CSocketFile afxsock.h
CSpinButtonCtrl 提供箭头按钮,用户可单击它,以增加或减少某个控件中的一个值 afxcmn.h
CSplitterWnd afxext.h
CStatic 用于标识另一个控件或给用户提供消息的简单文本框 afxwin.h
CStatusBar afxext.h
CStatusBarCtrl 提供一个层次窗口,通常放于父窗口的底部,用于显示关于应用程序的状态信息 afxcmn.h
CStdioFile afx.h
CString afx.h
CStringArray afxcoll.h
CStringList afxcoll.h
CSyncObject afxmt.h
CTabCtrl 允许应用程序在一个窗口或对话框的同一区域显示多个页面 afxcmn.h
CTime afx.h
CTimeSpan afx.h
CToolBar afxext.h
CToolBarCtrl 工具栏通用控件 afxcmn.h
CToolTipCtrl 提供工具提示控件的功能,它以一个小弹出窗口的样子显示,包含描述某个工具用途的一行文本 afxcmn.h
CTreeCtrl 显示项的分层结构列表 afxcmn.h
CTreeView 简化CTreeCtrl的用法 afxcview.h
CTypedPtrArray afxtempl.h
CTypedPtrList afxtempl.h
CTypedPtrMap afxtempl.h
CUIntArray afxcoll.h
CUserException afxwin.h
CView 用于显示程序数据的类 afxwin.h
CWaitCursor afxwin.h
CWinApp afxwin.h
CWindowDC afxwin.h
CWinThread 代表一个应用程序中的一个线程 afxwin.h
CWnd afxwin.h
CWordArray afxcoll.h
⑶ 如何使用vb禁止网页中的确定框
利用OnDownloadBegin和OnDownloadComplete
以CHtmlView为例,弹出的广告窗口都是通过CHtmlView::OnNewWindow2( LPDISPATCH* ppDisp, BOOL* Cancel );打开的。
关于OnNewWindow2不想多说,只说说这第2个参数 BOOL* Cancel
当Cancel = false的时候就不能打开新窗口了,如果你的CHtmlView的该参数一直为FALSE那么一切弹出窗口都不能打开,广告窗口自然就没了。 那~~~要是总FALSE岂不是正常网页也无法浏览了?
别忙,接下来要做的就是在适当的时候让这个参数返回FALSE。
抛开CHtmlView我们回头来看看IE下载网页弹出广告窗口的过程:
OnDownloadBegin ---->发现window.open等Js或者vbs ---->OnNewWindow2 ---->OnDownloadComplete
了解了上述过程之后......什么时候让OnNewWindow2的第2个参数为FALSE你就清楚了吧!
下面跟我实战。
给你的从CHtmlView派生而来的CNoPopHtmlView加一个成员变量BOOL m_bPop;
在构造函数里给m_bPop初始化为:m_bPop = TRUE;
重载OnDownloadBegin虚函数,在其中加入:m_bPop = FALSE;
重载OnDownloadComplete虚函数,在其中加入:m_bPop = TRUE;
重载OnNewWindow2虚函数,在其中加入:
Cancel = m_bPop;
这样CNoPopHtmlView将不在打开广告窗口,关键在于了解IE的下载、弹出窗口的过程。(本文的方法同样对CWebBrowser2适用、不论你是用VC还是握肆Delphi都有效,关键在于了解IE下载、弹出窗口的过程)
上面说的是在自编浏览器中过滤广告窗口。
其实你完全毁皮则可以利用BHO(Browser Helper Object)写一个针对IE的广告窗口过滤器。
在BHO里你利用IObjectWithSiteImpl::SetSite获得IWebBrowser2指针,然后利用Invoke处理OnDownloadBegin\OnDownloadComplete\OnNewWindow2等事件就可以,模式同上。
因该是这意思了,可以去看下帮助试着做,我也在做纤棚浏览器,而且已经实现多页面了,广告那里应该明天或后天就开始做了
到时候一起研究~
我QQ405557154
⑷ MFC有哪些基本类分别代表什么意思
MFC类目录及头文件 类 描述 头文件
CAnimateCtrl 自动化通用控件 afxcmn.h
CArchive afx.h
CArchiveException afx.h
CArray afxtempl.h
CAsyncMonikerFile 在ActiveX控件中提猛如供对异步标记的支持 afxole.h
CAsyncScoket 封装Windows Sockets API,参看CSocket afxsock.h
CBitmap afxwin.h
CBitmapButton afxext.h
CBrush afxwin.h
CButton 按钮控件对象 afxwin.h
CByteArray afxcoll.h
CCachedDataPathProperty 允许一个ActiveX控件异步传输属性数据和缓冲内存中的数据,参考CDataPathProperty afxctl.h
CCheckListBox afxwin.h
CClientDC afxwin.h
CCmdTarget 所有能够接收和响应消息的对则码象的基类 afxwin.h
CCmdUI afxwin.h
CColorDialog 颜色选择的通用对话框,提供为显示系统定义的颜色列表 afxdlgs.h
CComboBox 组合框对象 afxwin.h
CComboBoxEx CComboBox类的派生类,用于支持在组合框控件中的图像列表 afxcmn.h
CCommandLineInfo afxwin.h
CCommonDialog afxdlgs.h
CConnectionPoint afxdisp.h
CControlBar afxext.h
CCreateContext afxext.h
CCriticalSection afxmt.h
CCtrlView afxwin.h
CDaoDatabase afx.h
CDaoException afx.h
CDaoFieldExchange afx.h
CDaoQueryDef afx.h
CDaoRecordset 代表选自数据源的记录集。CDaoRecordset对象可用于三种格式:表类型记录集,动态集类型记录集和快照类型记录集 afx.h
CDaoRecordView 提供表单视图,以在控件中显示数据库记录。表单视图是CDaoRecordset对象的一部分。参考CFormView和CRecordView afx.h
CDaoTableDef afx.h
CDaoWorkspace afx.h
CDatabase afxdb.h
CDataExchange afxwin.h
CDataPathProperty 实现一个ActiveX控件属性,它能够异步加载其数据。这个类允许ActiveX控件在后台下载属性数据时被激活 afxctl.h
CDateTimeCtrl 封装新的日期/时间选取器控件 afxdtctl.h
CDBException afxdb.h
CDBVariant afxdb.h
CDC afxwin.h
CDialog 用于包含控件窗口的对话框对象 afxwin.h
CDialogBar afxext.h
CDocItem afxole.h
CDockState afxadv.h
CDocObjectServer afxdocob.h
CDocObjectServerItem afxdocob.h
CDocTemplate afxwin.h
CDocument 用于管理程序的数据的类 afxwin.h
CDragListBox Windows列表框,允许用户把其中的项拖放到不同的位置 afxcmn.h
CDumpContext afx.h
CDWordArray afxcoll.h
CEdit 用于文枝盯启本输入的子窗口控件 afxwin.h
CEditView 提供Windows编缉控件的功能。因为CEditView派生于Cedit,该对象可同文件和文件模板一同使用 afxext.h
CEvent afxmt.h
CException afx.h
CFieldExchange afxdb.h
CFile afx.h
CFileDialog 通用文件对话框,提供Open和Save As对话框中的功能 afxdlgs.h
CFileException afx.h
CFileFind afx.h
CFindReplaceDialog afxdlgs.h
CFont afxwin.h
CFontDialog 通用字体对话框,用于显示当前已装入系统的字体列表 afxdlgs.h
CFontHolder afxctl.h
CFormView 包含对话框控件的窗口 afxext.h
CFrameWnd SDI(单窗口界面)框架窗口 afxwin.h
CFtpConnection afxinet.h
CFtpFileFind afxinet.h
CGdiObject afxwin.h
CGopherConnection afxinet.h
CGopherFile afxinet.h
CGopherFileFind afxinet.h
CGopherLocator afxinet.h
CHeaderCtrl 标题通用控件 afxcmn.h
CHotKeyCtrl 热键通用控件 afxcmn.h
CHtmlStream afxisapi.h
CHtmlView 实现Web Browser控件的视图类,能够访问当地或Web上的HTML文件。 afxhtml.h
CHttpConnection afxinet.h
CHttpFile afxinet.h
CHttpFilter 创建并处理超文传输协议过滤器对象,该对象用于过滤用于HTTP请求的服务器通知 afxisapi.h
CHttpFilterContext afxisapi.h
CHttpServer Internet Server API(ISAPI)的包装类 afxisapi.h
CHttpServerContext afxisapi.h
CImageList afxcmn.h
CInternetConnection afxinet.h
CInternetException afxinet.h
CInternetFile afxinet.h
CInternetSession afxinet.h
CIPAddressCtrl IP地址控件。类似于编缉框,该控件接收Internet 协议格式的地址 afxcmn.h
CList afxtempl.h
CListBox 列表框对象 afxwin.h
CListCtrl 列表视通用控件 afxcmn.h
ClistView 简化CListCtrl的使用,添加了对文件和视图的支持 afxcview.h
CLongBinary afxdb_.h
CMap afxtempl.h
CMapPtrToPtr afxcoll.h
CMapPtrToWord afxcoll.h
CMapStringToOb afxcoll.h
CMapStringToPtr afxcoll.h
CMapStringToString afxcoll.h
CMapWordToOb afxcoll.h
CMapWordToPtr afxcoll.h
CMDIChildWnd MDI(多文档界面)子框架窗口 afxwin.h
CMDIFrameWnd afxwin.h
CMemFile afx.h
CMemoryException afx.h
CMemoryState
CMenu afxwin.h
CMetaFileDC afxext.h
CMiniFrameWnd 半高的框架窗口,主要用于浮动工具栏。一个小框架窗口没有最小化和最大化按钮,但其他都类似于正常的框架窗口 afxwin.h
CMonikerFile afxole.h
CMonthCalCtrl 月历控件,用于显示一个用户可选择日期的日历 afxdtctl.h
CMultiDocTemplate afxwin.h
CMultiLock afxmt.h
CMutex afxmt.h
CNotSupportedException afx.h
CObArray afxcoll.h
CObject afx.h
CObList afxcoll.h
COleBusyDialog afxodlgs.h
COleChangeIconDialog afxodlgs.h
COleChangeSourceDialog afxodlgs.h
COleClientItem afxole.h
COleCmdUI afxdocob.h
COleControl afxctl.h
COleControlMole afxctl.h
COleConvertDialog afxodlgs.h
COleCurrency afxdisp.h
COleDataObject afxole.h
COleDataSource afxole.h
COleDateTime afxdisp.h
COleDateTimeSpan afxdisp.h
COleDBRecordView afxoledb.h
COleDialog afxodlgs.h
COleDispatchDriver afxdisp.h
COleDispatchException afxdisp.h
COleDocObjectItem afxole.h
COleDocument 把一个文件看作为CDocItem对象的一个集合。包容器和服务器都需要这个结构,因为它们的文件必须能够包含OLE项 afxole.h
COleDropSource afxole.h
COleDropTarget afxole.h
COleException afxdisp.h
COleInsertDialog afxodlgs.h
COleIPFrameWnd afxole.h
COleLinkingDoc OLE包容器文件的基类,这些文件支持对它们所包含项的链接 afxole.h
COleLinksDialog afxodlgs.h
COleMessageFilter afxole.h
COleObjectFactory afxdisp.h
COlePasteSpecialDialog afxodlgs.h
COlePropertiesDialog afxodlgs.h
COlePropertyPage afxctl.h
COleResizeBar afxole.h
COleSafeArray afxdisp.h
COleServerDoc OLE服务器文件的基类 afxole.h
COleServerItem 为OLE项提供一个服务器界面 afxole.h
COleStreamFile afxole.h
COleTemplateServer afxdisp.h
COleUpdateDialog afxodlgs.h
COleVariant afxdisp.h
CPageSetupDialog afxdlgs.h
CPaintDC afxwin.h
CPalette afxwin.h
CPen afxwin.h
CPictureHolder afxctl.h
CPoint atltypes.h
CPrintDialog 通用打印对话框,提供Print和Print Setup对话框中的功能 afxdlgs.h
CPrintInfo
CProgressCtrl 通用进程指示器控件 afxcmn.h
CPropertyPage 代表属性表单中的一页 afxdlgs.h
CPropertyPageEx
CPropertySheet 属性表,也叫做多选项卡对话框。一个属性表由一个CPropertySheet对象和几个CPropertyPage对象组成 afxdlgs.h
CPropertySheetEx
CPropExchange afxctl.h
CPtrArray afxcoll.h
CPtrList afxcoll.h
CReBar afxext.h
CReBarCtrl afxcmn.h
CRecentFileList afxadv.h
CRecordset 用于访问数据库表或查询的类 afxdb.h
CRecordView 包含对话框控件的窗口 afxdb.h
CRect atltypes.h
CRectTracker afxext.h
CResourceException afxwin.h
CRgn afxwin.h
CRichEditCntrItem afxrich.h
CRichEditCtrl 用户能够输入和编缉文本的窗口,提供字符和程序段格式,以及对嵌入OLE项的支持 afxcmn.h
CRichEditDoc afxrich.h
CRichEditView afxrich.h
CRuntimeClass
CScrollBar 滚动条对象 afxwin.h
CScrollView 可滚动的窗口,派生于CView afxwin.h
CSemaphore afxmt.h
CSharedFile afxadv.h
CSingleDocTemplate afxwin.h
CSingleLock afxmt.h
CSize atltypes.h
CSliderCtrl 提供包含一个滑块和可选的刻度线的窗口 afxcmn.h
CSocket Windows Socket API的包装类 afxsock.h
CSocketFile afxsock.h
CSpinButtonCtrl 提供箭头按钮,用户可单击它,以增加或减少某个控件中的一个值 afxcmn.h
CSplitterWnd afxext.h
CStatic 用于标识另一个控件或给用户提供消息的简单文本框 afxwin.h
CStatusBar afxext.h
CStatusBarCtrl 提供一个层次窗口,通常放于父窗口的底部,用于显示关于应用程序的状态信息 afxcmn.h
CStdioFile afx.h
CString afx.h
CStringArray afxcoll.h
CStringList afxcoll.h
CSyncObject afxmt.h
CTabCtrl 允许应用程序在一个窗口或对话框的同一区域显示多个页面 afxcmn.h
CTime afx.h
CTimeSpan afx.h
CToolBar afxext.h
CToolBarCtrl 工具栏通用控件 afxcmn.h
CToolTipCtrl 提供工具提示控件的功能,它以一个小弹出窗口的样子显示,包含描述某个工具用途的一行文本 afxcmn.h
CTreeCtrl 显示项的分层结构列表 afxcmn.h
CTreeView 简化CTreeCtrl的用法 afxcview.h
CTypedPtrArray afxtempl.h
CTypedPtrList afxtempl.h
CTypedPtrMap afxtempl.h
CUIntArray afxcoll.h
CUserException afxwin.h
CView 用于显示程序数据的类 afxwin.h
CWaitCursor afxwin.h
CWinApp afxwin.h
CWindowDC afxwin.h
CWinThread 代表一个应用程序中的一个线程 afxwin.h
CWnd afxwin.h
CWordArray afxcoll.h
⑸ 在MFC里,afxinet.h是起什么作用
CHtmlStream afxisapi.h
CHtmlView 实现Web Browser控件的视滚旁图类,能够访大铅橡问当地或Web上的HTML文件。 afxhtml.h
CHttpConnection afxinet.h
CHttpFile afxinet.h
CHttpFilter 创建并处理超文传输协议过滤器对激察象,该对象用于过滤用于HTTP请求的服务器通知 afxisapi.h
CHttpFilterContext afxisapi.h
CHttpServer Internet Server API(ISAPI)的包装类 afxisapi.h
CHttpServerContext afxisapi.h
CImageList afxcmn.h
CInternetConnection afxinet.h
CInternetException afxinet.h
CInternetFile afxinet.h
CInternetSession afxinet.h
CSocket Windows Socket API的包装类 afxsock.h
CSocketFile afxsock.h
⑹ 如何在vb中控制webbrowser的弹出窗口
给出以下三种方法你可以试一下:
方法一:
控制webbrowser不弹出IE窗口的方法是在控件的NewWindow2事件里面添加如下代码:
Set ppDisp = WebBrowserTemp.Object ' WebBrowserTemp为自己在窗体中另外添加的Webbrowser控件
如果禁止弹出窗口,不做处理,则在NewWindow2事件里添加如下代码即可:
Cancel = True
方法二:
利用OnDownloadBegin和OnDownloadComplete
以CHtmlView为例,弹出的广告窗口都是通过CHtmlView::OnNewWindow2( LPDISPATCH* ppDisp, BOOL* Cancel );打开的。
关于OnNewWindow2不想多说,只说说这第2个参数 BOOL* Cancel
当Cancel = false的时候就不能打开新窗口了,如果你的CHtmlView的该参数一直为FALSE那么一切弹出窗口都不能打开,广告窗口自然就没了。
那~~~要是总FALSE岂不是正常网页也无法浏览了?
别忙,接下来要做的就是在适当的时候让这个参数返回FALSE。
抛开CHtmlView我们回头来看看IE下载网页弹出广告窗口的过程:
OnDownloadBegin ---->发现window.open等Js或者vbs ---->OnNewWindow2 ---->OnDownloadComplete
了解了上述过灶键程之后......什么时候让OnNewWindow2的第2个参数为FALSE你就清楚了吧!
下面跟我实战。
给你的从CHtmlView派生而来的CNoPopHtmlView加一个成员变量BOOL m_bPop;
在构造函数里给m_bPop初始化为:m_bPop = TRUE;
重载OnDownloadBegin虚函数,在其中加入:m_bPop = FALSE;
重载OnDownloadComplete虚函数,在其中加入:m_bPop = TRUE;
重载OnNewWindow2虚函数,在其中加入:
Cancel = m_bPop;
这样CNoPopHtmlView将不在打开广告窗口,关键在于了解IE的下载、弹出窗口的过程。(本文的方法同样对CWebBrowser2适用、不论你是用VC还是Delphi都有效,关键在于了解IE下载、弹出窗口的过程)
上面说的是在自编浏览器中巧辩谨过滤广告窗口。
其实你完全可以利用BHO(Browser Helper Object)写一个针对IE的孝基广告窗口过滤器。
在BHO里你利用IObjectWithSiteImpl::SetSite获得IWebBrowser2指针,然后利用Invoke处理OnDownloadBegin/OnDownloadComplete/OnNewWindow2等事件就可以,模式同上。
方法三:
设属性 silent 为 True