MFC利用webbrowser控件实现简单的自动登陆

本文介绍如何在MFC应用中利用WebBrowser控件进行网页自动登录和交互。关键在于引入Mshtml.h头文件,通过GetHTMLElemCollDispatch获取元素Dispatch,执行click事件进行按钮点击,使用put_innerText设置输入框文字。同时,文章还提及了在网页加载完成后获取当前地址的方法,以及如何阻止新窗口的打开,实现链接点击后在当前窗口内导航。
摘要由CSDN通过智能技术生成

用MFC 新建一个对话框工程,在界面上加入webbrowsr控件。

关键是要利用这个头文件 Mshtml.h


声明这几个函数:

    IHTMLElement*       GetHTMLElement(const CString& strID); //获取网页元素,通过ID  主要用来获得 button 和 text 控件
    IHTMLSelectElement* GetHTMLSelectElement(const CString& strID); //获取select 控件 元素
    IDispatch*          GetHTMLElemCollDispatch(const CString& strID);  //获取收集所有网页元素的Dispatch

这个函数具体实现

IDispatch* CHtmlClickDlg::GetHTMLElemCollDispatch(const CString& strID)
{
    HRESULT hr = S_OK;
    IDispatch* pDispath = NULL;
    IHTMLElement* pElem = NULL;

    pDispath = m_web.get_Document();         //m_web是CExplorer 也就是webbrowser控件

    if (pDispath == NULL)
    {
        TRACE(L"pDispath = m_web.get_Document() = NULL"); 
    }

    IHTMLDocument2* pDoc = NULL;
    hr = pDispath->QueryInterface
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值