投稿者 さと  (社会人) 投稿日時 2010/2/14 18:45:57
あにすさんそうですか・・・。
せっかくアドバイスいただいたのにすいません。

この後にメッセージボックスでどこまで処理が進行していくのかを確認してみました。
下記のように
MessageBox.Show("1")
MessageBox.Show("2")
を挿入しました。


    Private Sub Button2_Click(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles Button2.Click

        Dim path As String = Application.StartupPath + "\setting\path\path.xml"
        Dim dSet As New DataSet()
        Dim sRead As IO.StreamReader
        Dim dRow As DataRow

        Dim yahooaouction As New Uri("https://login.bizmanager.yahoo.co.jp/login")
        Me.WebBrowser1.Navigate(yahooaouction)


        Call webconCompleted()

        MessageBox.Show("1")
        Dim all As HtmlElementCollection = WebBrowser1.Document.All
        Dim IDb As HtmlElementCollection = all.GetElementsByName("user_name"
        Dim PASSb As HtmlElementCollection = all.GetElementsByName("password"
        Dim btb As HtmlElementCollection = all.GetElementsByName("login_form"

        sRead = New IO.StreamReader(path, System.Text.Encoding.Default)
        dSet.ReadXml(sRead)



        MessageBox.Show("2")
        dRow = dSet.Tables("ログイン設定詳細").Rows.Item(1)
        IDb(0).InnerText = dRow("ID")
        PASSb(0).InnerText = dRow("パス")
        btb(0).InvokeMember("submit")


        sRead.Close()

    End Sub



不思議です・・・。
MessageBox.Show("1")・MessageBox.Show("2")が表示され、しっかりログインできました。
※私がOKボタンを押す間にログインページがDocumentCompletedされている模様です。

しかし、MessageBox.Showの二つがそれぞれ表示されてすぐにOKボタンを押すと、
ページが切り替わる前に先ほどと同じエラーがでます。
※私がOKボタンを押すはやさを早くするとログインページがDocumentCompletedされる前に次の処理にいっている模様です。


思うに、ページがログインページに切り替わる(DocumentCompletedする)前に次の処理にいってしまっているのではないでしょうか?

ということは

   Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.ObjectByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
        webcompflag = True

    End Sub

    Sub webconCompleted()
        Do While (webcompflag = False)

            System.Windows.Forms.Application.DoEvents()
            System.Threading.Thread.Sleep(10)
        Loop

    End Sub


の処理に間違いがあるのでしょうか?
ちなみにこの処理はネットで検索してサンプルコードをひっぱってきたものです。

でもあにすさんは自動入力ができたとおっしゃっていたし・・・。

どなたかアドバイスをください。