用sendMessage不行啊得不到网页文本框的句柄啊
用途:可以找回还记录在网页上但已经没有记在心里的密码。
请高手救助,因为我想重装系统啊。
谢了!!!

解决方案 »

  1.   

    找到一个,不过是VC的不知VB是否能够实现
    本文是教你如何得到网页中输入框的内容。如何你想获取网页中的密码,则只要把if (lstrcmpi(strtype, _T("TEXT")) == 0) 改成if (lstrcmpi(strtype, _T("PASSWORD")) == 0) 就可以了,如果你要是再加个实时监视的话,就成了密码窃取程序了咯!
      
      主要思路:获取IE的IHTMLInputTextElement接口,这样就可以获取网页中的输入框(包括文本和密码输入框)的内容了。
      
      具体请看源代码,严禁把本文和代码用于商业或者非法用途,否则一切后果与本人无关!
      如果要转载,请与作者联系!
      Copyright (C) 2002.  All Rights Reserved.
                     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);
                               }
                             }
                        }
                    }
                }
             }
                    
    }
      

  2.   

    =================================================
    HTTP://WWW.ITZYK.NET IT资源库--->IT人的专业资源库
    =================================================
    http://www.itzyk.net 中国IT人的技术资源网站。网站刚刚起步,希望广大IT网友们加入我们,我们会一直把这个网站做大,做全起来。现在网站分为两大部分:http://bbs.itzyk.net -->专业讨论DoNet技术的论坛社区 http://down.itzyk.net  各种程序源码的下载站。
    现在论坛区正处于发展壮大期,诚邀各位有志于IT技术方面的朋友加入我们的论坛来负责版主一职,发挥你们的能力让我们把这个论坛壮大起来吧!http://bbs.itzyk.net  欢迎您的到来!同时也欢迎各位IT朋友批评、指教!
      

  3.   

    stiffe01(灌水家),能不能再详细点?
      

  4.   

    你看看 网页的原代码 里面的 那个password 的 input 里的value 值是多少 
      

  5.   

    UP!!!
    我想知道上面提及的IE接口如何得到!
    高手快现身!!!
      

  6.   

    本文是教你如何得到网页中输入框的内容。如何你想获取网页中的密码,则只要把if (lstrcmpi(strtype, _T("TEXT")) == 0) 改成if (lstrcmpi(strtype, _T("PASSWORD")) == 0) 就可以了,如果你要是再加个实时监视的话,就成了密码窃取程序了咯!
      
      主要思路:获取IE的IHTMLInputTextElement接口,这样就可以获取网页中的输入框(包括文本和密码输入框)的内容了。
      
      具体请看源代码,严禁把本文和代码用于商业或者非法用途,否则一切后果与本人无关!
      如果要转载,请与作者联系!
      Copyright (C) 2002.  All Rights Reserved.
                     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);
                               }
                             }
                        }
                    }
                }
             }
                    
    }
      

  7.   

    做这个用VB比用VC方便。等我给你找。
    用shellwindow
      

  8.   

    http://cache.baidu.com/c?word=%B1%E9%3B%C0%FA%3Bie&url=http%3A//www%2Eyourblog%2Eorg/Data/20041/2650%2Ehtml&b=2&user=baidu
    以前的几遍文章找不到了。我又搜到这个。还有这个:
    http://www.tchtour.com/blog/detail.asp?blog_id=1&content_id=1402还有这个:
    http://xkun.go.nease.net/Jszl/Bckf/net2/list.asp-id=1033更多的请去搜索关键字:ShellWindows