メッセージボックスのボタンを押すには?


ふじさん  2008-07-18 01:44:43  No: 144987  IP: 192.*.*.*

VB.netにて仕事で使うアプリを作成しているのですが、毎時間同じ簡単な作業をブラウザ上で行わなければいけません。これを自動化したいので、フォームにWebBrowserを表示しログインしていくつかの条件分岐があり、そのたび決められた作業を行います。
そのうち何箇所かブラウザ上にメッセージボックスが出る事があるのですが、そのメッセージボックスのOKボタンを押し、メッセージボックスが出た場合の処理と、それ以外という風に分けたいのです。
メッセージボックスが表示される可能性がある場所は決まっています。
メッセージボックスが出ているか感知する事は出来ますでしょうか?
OKボタンを押すためにはどのようにすれば良いでしょうか?
どうかお願い致します。

編集 削除
熊谷隆史  2008-07-18 13:36:17  No: 144988  IP: 192.*.*.*

> メッセージボックスが出ているか感知する事は出来ますでしょうか?
SetWinEventHookでEVENT_SYSTEM_ALERTが
反応します。

# ただ、.NETでどうやるのかは分からない。
http://msdn.microsoft.com/en-us/library/ms696160(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms697187(VS.85).aspx

編集 削除
ふじさん  2008-07-18 14:41:11  No: 144989  IP: 192.*.*.*

ありがとうございます。
WebBrowserでアラートが出ている限り出来ないのではないかとも思っているのですが、やり方はどうあれ何とかメッセージボックスを消したいのです。
思いつく方法があれば教えて頂けると助かります。

編集 削除
 2008-07-19 19:32:36  No: 144990  IP: 192.*.*.*

VB6ならタイマーで一秒おきに下のようにしたらできますがドットネットはできないのでしょうか?

Private Sub Timer1_Timer()

    Dim hwnd As Long

    hwnd = FindWindow("#32770", "セキュリティの警告")
    If hwnd <> 0 Then
        SendKeys "{ENTER}"
    End If

End Sub

編集 削除