在WinFrom中使用webBrowser,创建一个私用IE登陆器
要求就是我在左侧导航里点击CSDN网站,然后CSDN账号就直接登陆到CSDN,并在右侧显示出登陆后的CSDN主页来
在左侧导航里点击百度,然后百度账号就直接陆到百度,并在右侧显示出登陆后的言页来,
问题是:怎么把账户和密码放到网页中的文本输入框中???要用代码实现,这一步总是想不过来,请各位高手相助!!!另外祝每一位支持CSDN的用户,新年快乐,成事如意!!!

解决方案 »

  1.   

    假如两个文本框的ID为name,pwd
    获取两个文本框对象:
    //获取用户名文本框元素对象
    HtmlElement name=webBrowser1.GetElementByID("name");
    //获取密码文本框元素对象
    HtmlElement pwd=webBrowser1.GetElementByID("pwd");name.Value="xxx";
    pwd.Value="xxxxxx";就设置好了如果再获得确认按钮,模拟其单击,就可以自动登录了
    Element btn=webBrowser1.GetElementByID("btnOK");
    btn.InvokeMember("Click");
      

  2.   

    HtmlElement btnSubmit = webBrowser.Document.All["submitbutton"]; 
    HtmlElement tbUserid = webBrowser.Document.All["username"]; 
    HtmlElement tbPasswd = webBrowser.Document.All["password"]; 
    tbUserid.SetAttribute("value", ""); 
    tbPasswd.SetAttribute("value", ""); 
    btnSubmit.InvokeMember("click");
      

  3.   


    这位朋友的代码放在我的VS2005,C# 中时,语法编译不能通过,改成这样程序才能编译通过:
    //获取密码文本框元素对象 
     HtmlElement name = webBrowser1.Document .GetElementById ("name");
      //获取密码文本框元素对象              
     HtmlElement pwd = webBrowser1.Document.GetElementById ("pwd"); 
    但这样写,运行时程序还是会报错,说没有将对象引用到对象的例,可HtmlElement是不用实例化的,实例化后编译报错……name.Value中Valur在name后面点不出来
    pwd.Value中Valur在pwd后面也点不出来
    嗯 , 还请指点一二
    感谢您的再次回访!谢谢!
      

  4.   


    不能照抄,一点也不改吧,id要找到。如下:
    HtmlElement btnSubmit = webBrowser.Document.All["ctl00_CPH_Content_Image_Login"]; 
    HtmlElement tbUserid = webBrowser.Document.All["ctl00_CPH_Content_tb_LoginNameOrLoginEmail"]; 
    HtmlElement tbPasswd = webBrowser.Document.All["ctl00_CPH_Content_tb_Password"]; 
    tbUserid.SetAttribute("value", ""); 
    tbPasswd.SetAttribute("value", ""); 
    btnSubmit.InvokeMember("click"); 还有csdn是要验证码登陆的