用IE浏览VB.Net网页

时间:2014-02-20 06:20:32

标签: vb.net internet-explorer login

我正在尝试编写一个可以管理登录工作的程序。我会在我的表单中使用WebBrowser控件,但有些位置只能在IE中使用。我已经使用VBA在Excel中工作,我只是想尝试更快速的工作。

我的代码如下:

Public Sub New()
    Me.name = "Name"
    Me.url = "web address"
    Me.log = "test"
    Me.pass = "test123"
End Sub

Public Overrides Sub Login()
    Me.IE = CreateObject("InternetExplorer.Application")
    IE.Visible = False
    IE.Navigate(Me.url)
    Do While IE.ReadyState <> IE_READY.READYSTATE_COMPLETE
        System.Threading.Thread.Sleep(1000)
    Loop
    IE.Visible = True
    'here is where it breaks
    IE.Document.GetElementsByName("username").SetAttribute("value", Me.log)
    IE.Document.GetElementsByName("password").SetAttribute("value", Me.pass)
End Sub

一切正常,直到我尝试写入登录字段。

登录字段的HTML:

<form id="loginform" method="post" action="/Home/in">
    <label for="username">Username</label>
    <input type="text" class="validate[required]" name="username" id="username" disabled="disabled" value="" />
    <label id="password-label" for="password">Password</label>
    <input type="password" class="validate[required]" name="password" id="password"  disabled="disabled" />
</form>

1 个答案:

答案 0 :(得分:0)

请尝试以下方法:

IE.Document.GetElementsByName("username").Value= Me.log

IE.Document.GetElementsByName("password").Value= Me.pass

这可能适合你