网页中的密码输入框和一般不同,他没有句柄之类的,但是可以通过IE的IHTMLInputTextElement接口获取!
本文是教你如何得到网页中输入框的内容。如何你想获取网页中的密码,则只要把if (lstrcmpi(strtype, _T("TEXT")) == 0) 改成if
(lstrcmpi(strtype, _T("PASSWORD")) == 0) 就可以了,如果你要是再加个实时监视的话,就成了密码窃取程序了咯!
主要思路:获取IE的IHTMLInputTextElement接口,这样就可以获取网页中的输入框(包括文本和密码输入框)的内容了。
--------------------------------------------------------------------------------
VARIANT id, index;
CComPtr<IDispatch> spDispatch;
CComQIPtr<IHTMLDocument2, &IID_IHTMLDocument2> pDoc2;
CComQIPtr<IHTMLElement, &IID_IHTMLElement> pElement;
CComPtr<IHTMLElementCollection> pElementCol;
CComPtr<IHTMLFormElement> pFormElement;
CComPtr<IHTMLInputTextElement> pInputElement;
//首先获取IWebBrowser2接口
CoInitialize(NULL); //必须要这句初始化
SHDocVw::IWebBrowser2Ptr spBrowser(spDisp);
if (m_spSHWinds == NULL)
...{
if (m_spSHWinds.CreateInstance(__uuidof(SHDocVw::ShellWindows)) != S_OK)
...{
MessageBox("Failed");
CoUninitialize();
}
}
if (m_spSHWinds)
...{
int n = m_spSHWinds->GetCount();
for (int i = 0; i < n; i++)
...{
_variant_t v = (long)i;
IDispatchPtr spDisp = m_spSHWinds->Item(v);
SHDocVw::IWebBrowser2Ptr spBrowser(spDisp); //生成一个IE窗口的智能指针
if (spBrowser)
...{
//获取IHTMLDocument2接口
if (SUCCEEDED(spBrowser->get_Document( &spDispatch)))
pDoc2 = spDispatch;
if(pDoc2!=NULL)
...{
// AfxMessageBox("已经获取IHTMLDocument2");
if (SUCCEEDED(pDoc2->get_forms(&pElementCol)))
...{
// AfxMessageBox("已经获取IHTMLElementCollection");
long p=0;
if(SUCCEEDED(pElementCol->get_length(&p)));
if(p!=0)
...{
for(long i=0;i<=(p-1);i++)
...{
V_VT(&id) = VT_I4;
V_I4(&id) = i;
V_VT(&index) = VT_I4;
V_I4(&index) = 0;
if(SUCCEEDED(pElementCol->item(id,index, &spDispatch)))
if(SUCCEEDED(spDispatch->QueryInterface(IID_IHTMLFormElement,(void**)&pFormElement)))
...{
// AfxMessageBox("已经获取IHTMLFormElement");
long q=0;
if(SUCCEEDED(pFormElement->get_length(&q)));
for(long j=0;j<=(q-1);j++)
...{
V_VT(&id) = VT_I4;
V_I4(&id) = j;
V_VT(&index) = VT_I4;
V_I4(&index) = 0;
if(SUCCEEDED(pFormElement->item(id,index, &spDispatch)))
if(SUCCEEDED(spDispatch->QueryInterface(IID_IHTMLInputTextElement,(void**)&pInputElement)))
...{
//AfxMessageBox("已经获取IHTMLInputTextElement");
CComBSTR value;
CComBSTR type;
pInputElement->get_type(&type);//获取输入框类型(密码框还是文本框)
CString strtype(type);
strtype.MakeUpper();
if (lstrcmpi(strtype, _T("TEXT")) == 0)
...{
pInputElement->get_value(&value);//获取文本框的值
CString strvalue(value);
AfxMessageBox(strvalue);
}
}
}
}
}
}
}
分享到:
相关推荐
在VC++环境中,开发一个应用程序来获取网页中的密码和文本输入框的内容涉及到网络编程和浏览器交互的知识。这个项目可能使用了Microsoft的ActiveX技术,如Internet Explorer控件,或者使用了WinINet库来实现HTTP请求...
这个"vc获取网页中输入的密码框中的内容和文本输入框的内容.zip"项目显然涉及到如何通过C++代码来实现这一功能。下面我们将深入探讨相关知识点。 首先,C++本身并不直接支持对网页内容的直接访问,但可以通过第三方...
5. **为文本框赋值**:使用`Doc.body.All("LoginName").Value = "eddie"`和`Doc.body.All("LoginPassword").Value = "123456"`分别为用户名和密码文本框赋值。 6. **触发提交按钮**:最后,通过`Doc.body.All("click...
介绍两个方法和种是利用javascript onFocus onBlur来判断焦点和失去焦点,加一种是利用jquery $("p").blur(); 或$("p").blur(fn)来实现,有需要的朋友可以参考一下
在IT行业中,文本框内容隐藏是一个重要的议题,尤其是在网络安全、数据隐私和用户界面设计领域。文本框通常是网页或应用程序中用户输入数据的地方,如用户名、密码或其他敏感信息。隐藏文本框内容是为了保护用户数据...
在网页或应用中,当用户在密码文本框输入字符时,系统通常会自动将其替换为星号或圆点,以隐藏实际输入的字符。但这种简单的隐藏方式并不能阻止熟练的黑客。他们可能使用键盘钩子(API Hooking)技术,例如压缩包中...
网页密码(星号)查看器VB版是一款基于Visual Basic (VB)编程语言开发的应用程序,主要用于帮助用户查看网页中被隐藏为星号(*)的密码。在许多网站上,为了保护用户的隐私,输入密码的框会以星号的形式显示输入内容,而...
在网页开发中,有时我们需要实现一个功能,让用户在文本框(input type="text")中自动选择一部分文字,比如默认的提示信息。这个功能在很多场合都很实用,比如登录页面的用户名或密码输入框,可以预设一些提示文字...
在本压缩包“易语言源码获取外部IE浏览器网页源码和密码框的密码例程.7z”中,包含了一个易语言编写的源代码文件——“易语言源码获取外部IE浏览器网页源码和密码框的密码例程.e”,这个例程展示了如何利用易语言来...
在网页设计中,文本框(text input)是用户与页面交互的重要组成部分,它们通常用于收集用户的输入信息。"超级好看的文本框样式" 提供了一种方法,通过CSS(层叠样式表)来增强文本框的视觉效果,使其更加吸引人且...
在探讨“好看的文本框和按钮样式”的主题时,我们不仅关注功能性和实用性,还强调设计美学,以提升...这些技巧不仅适用于网页设计,也可以扩展应用到各类基于Web的应用程序中,为用户提供更加个性化和高效的交互环境。
它利用了JavaScript库jQuery,实时评估用户在文本框中输入的密码强度,并给予反馈。 首先,jQuery是一个轻量级、功能丰富的JavaScript库,它极大地简化了DOM操作、事件处理、动画设计以及Ajax交互。在本项目中,...
在网页开发过程中,我们经常会遇到这样一个需求:需要禁止浏览器自动填充或记忆用户在表单中输入的信息。这种功能对于保护用户隐私、提高安全性非常有帮助。本文将详细介绍如何在HTML表单中实现这一功能。 #### 一...
在网页设计和开发中,文本框(Text Box)是用户输入数据的重要元素。"文本框设置默认值、验证以及提交"这一主题涵盖了三个关键环节:为文本框预填充默认值,实现输入验证,以及处理表单提交。这些功能在jQuery库的...
在网页开发过程中,为了提升用户体验,常常需要对用户输入进行即时反馈。其中一种常见的做法就是在用户将光标聚焦到某个输入框时,通过弹出提示的方式告知用户该输入框的一些注意事项或格式要求。这种功能可以通过...
在本示例中,我们将讨论如何使用 jQuery 选择器对文本框和密码框在获得焦点和失去焦点时应用特定样式。 在 Web 开发中,文本框(text)和密码框(password)是表单中常用的两种输入类型,它们通常用于收集用户的...
在标题和描述中提到的,我们要在文本框获得焦点时清除其内容。实现这个功能,我们可以通过JavaScript的事件监听机制来完成。在HTML中,我们可以为每个需要此功能的文本框添加一个`onfocus`事件处理函数。当用户点击...
HTML文本框是网页设计中不可或缺的元素,它们用于获取用户输入数据或展示静态文本。在HTML中,文本框由`<input>`标签定义,类型通常设置为"text"。本资源"HTML文本框.rar"可能包含了一个易语言编写的源代码示例,...
然后,从文本框中获取用户名和密码,并将其保存到cookies中。同时,将当前时间保存到cookies中,作为登录时间。最后,将cookies的过期时间设置为15天,以便自动记住密码。 三、 读取cookies中的数据 在页面加载时...
- 如何识别并填写不同类型的表单字段(例如:文本框、复选框、密码框等)。 - 如何模拟点击提交按钮完成表单提交。 #### 知识点详解 ##### VB与HTML交互基础 在VB中处理HTML文档通常需要借助`Microsoft ...