C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: AxWebBrowserコントロール表示について


(過去ログ 59 を表示中)

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■34034 / inTopicNo.1)  AxWebBrowserコントロール表示について
  
□投稿者/ 遠藤陽平 (1回)-(2009/03/17(Tue) 16:26:32)

分類:[.NET 全般] 

現在VB2008の環境で、yahoo自動ログインのプログラムを作成しようとしています。

コードは以下の通りです。テキストボックスにID、パスワードを入力後自動ログインは成功しました。
    
    Dim objeBrowser As New SHDocVw.InternetExplorer()
        Dim iCol As mshtml.IHTMLElementCollection
        Dim iEle As mshtml.IHTMLElement
        Dim sString As String
        Dim sID As String 'Yahoo! JAPAN ID
        Dim sPass As String 'パスワード

        sID = TextBox1.Text
        sPass = TextBox2.Text

        objeBrowser.Visible = True
        objeBrowser.Navigate("https://login.yahoo.co.jp/config/login_verify2?.src=ym", Nothing, Nothing, Nothing, Nothing)


        Do
        Loop Until Not objeBrowser.Busy
        Dim HTMLDoc As mshtml.HTMLDocument

        Do
        Loop Until Not objeBrowser.Busy

        HTMLDoc = objeBrowser.Document
        iCol = HTMLDoc.getElementsByTagName("input")
        'Yahoo! JAPAN ID============================
        For Each iEle In iCol
            If Not iEle.getAttribute("name") Is Nothing Then
                sString = iEle.getAttribute("name").ToString
                If sString = "login" Then
                    iEle.setAttribute("value", sID)
                    Exit For
                End If
            End If
        Next
        'パスワード=================================
        For Each iEle In iCol
            If Not iEle.getAttribute("name") Is Nothing Then
                sString = iEle.getAttribute("name").ToString
                If sString = "passwd" Then
                    iEle.setAttribute("value", sPass)
                    Exit For
                End If
            End If
        Next
        'ログイン====================================

        For Each iEle In iCol
            If Not iEle.getAttribute("type") Is Nothing Then
                sString = iEle.getAttribute("type").ToString
                If sString = "image" Then
                    sString = iEle.getAttribute("value").ToString
                    If sString = "ログイン" Then
                        iEle.click()
                        Exit For
                    End If
                End If
            End If
        Next
        Do
        Loop Until Not objeBrowser.Busy

しかし上記のコードで実行すると、新規にIEを開いてログインしてしまいます。
AxWebBrowser1コントロール等を使用して、フォーム上に同様の処理を表示させたいのですがうまくいきません。

下記コードを実行しても入力前のログイン画面が表示されるのみです。
AxWebBrowser1.Navigate2("https://login.yahoo.co.jp/config/login_verify2?.src=ym", Nothing, Nothing, Nothing, Nothing)

新規にIEを開くことなく、webBowser上に処理後の画面を表示させるにはどうしたらいいでしょうか?
VBをほとんど初心者で、大雑把な質問で申し訳ないのですが何卒ご教授の程よろしくお願いします。













引用返信 編集キー/
■34048 / inTopicNo.2)  Re[1]: AxWebBrowserコントロール表示について
□投稿者/ Azulean (325回)-(2009/03/17(Tue) 23:10:30)
@ITでレスがついているようなのでリンクしておきます。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=48635&forum=7&2
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -