VB.NET(Windows Apploication)から起動済みのIEでJavaScriptを実行する
φ(..)メモメモ
VB.NET(Windows Apploication)から起動済みのIEのObjectを取得し、Javascriptを実行するサンプル。
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim objIEWindow As Object = getIEWindowObject() If objIEWindow Is Nothing Then Exit Sub End If ' ここではalert()を実行しているが、表示しているページ内のJavaScriptも実行できる executeScript(objIEWindow, "alert('Hello!!');") End Sub Function executeScript(ByVal objIEWindow As Object, ByVal script As String) As Boolean 'InvokeScript()が使えない(何故だ・・・orz)ので、Navigate()を使用する Return objIEWindow.Navigate("javascript:" & script) End Function Function getIEWindowObject() As Object 'シェルのオブジェクトを作成する Dim objshell As Object = CreateObject("Shell.Application") Dim retObject As Object = Nothing 'ウインドウの数だけまわす For Each objWindow As Object In objshell.windows 'HTMLDocumentだったら(HTMLDocumentがあったらIEと判断してしまう) If TypeName(objWindow.Document) = "HTMLDocument" Then retObject = objWindow ' 1個見つかったらそれで終わりにする Exit For End If Next Return retObject End Function End Class