アプリ版:「スタンプのみでお礼する」機能のリリースについて

WEBブラウザにHTMLで構成されているテキストボックスにVBプログラムから文字列を入力することができますでしょうか。
イメージとしては、ブラウザにHTML表示されたID,パスワード欄にVBプログラムから入力を行い、同じくHTMLのsubmitボタンをVBから押下するという感じです。
また、可能である場合、具体的にどのようにすればできるか、参考情報、サイト等教えていただけませんでしょうか。

ベーシック認証時などにポップアップ表示されるダイアログへのID/パスワードなどの入力プログラムを以前作成した際は、ウィンドウハンドルを取得して、sendmessageすることができたのですが、HTMLの部品はウィンドウハンドルで特定することができないので、苦慮しています。

以上、よろしくお願い致します。

A 回答 (2件)

Webブラウザなどを GetObjectやCreateObjectでVB側で管理できるようにします



その後取得したオブジェクトからHTMLDocumentオブジェクトを取得し
getElementbyIdメソッドなどでテキストボックスを取得
valueプロパティに設定値を代入
Formタグに対してSubmitメソッド

といった具合でしょう

参照設定としては
『Microsoft Internet controls』 ... IEの場合
『Microsoft HTML Object Libraly』
などを使います
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
HTMLDocumentオブジェクトを取得することで各エレメントを指定して値の入力、ボタンの押下ができました!
getElementbyIdの使用法がよくわからなかった(うまくいかなかった)ので、結局は
オブジェクト.Document.All("ID").Value = "xxxxx"
という記述になりました。
getElementByIdによる書き方も参考に教えていただけると幸いです。
ひとまずはおかげさまで解決できました。

お礼日時:2007/07/10 18:48

カン違いな回答だったらごめんなさい。



VB2005の場合ですが。

Private IE As Object

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim strURL As String = "http://www.XXXX.XXXX"
IE = CreateObject("InternetExplorer.application")
IE.Navigate(strURL)
IE.Visible = True
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
IE.Document.Forms(0).Elements("ID").value = "XXXXX"
IE.Document.Forms(0).Elements("PASSWORD").value = "XXXXX"
IE.Document.Forms(0).Elements("SUBMIT").click()
End Sub

Elementsの"ID"や"PASSWORD"は仮称ですのでソース等で確認して設定してみてください。

うまく動かなかったらごめんなさい。
    • good
    • 1
この回答へのお礼

私の環境を書くのを忘れていました。すみません。
VB6.0ですので、そのままでは動かなかったですが、基本的な考え方はいただいた記述のとおりでした。
どうもありがとうございました。

お礼日時:2007/07/10 18:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!