VisualStudioでInternetExplorerを操作する方法

VisualStudioでのInternetExplorer操作について

※InternetExplorerのサポートが終了したため、この方法は現在推奨されません。
 SeleniumやPlaywrightなどのライブラリの使用を検討してください。
Microsoftの開発環境であるVisualStudio(C#/VB.NET)によりInternetExplorerを操作するプログラムを作成できます。

InternetExplorer操作の準備

ライブラリの参照設定

ソリューションエクスプローラーにて「全てのファイルを表示」をクリックします。
ソリューションエクスプローラーにて「全てのファイルを表示」をクリック

「参照設定」上で右クリック -> 参照の追加をクリックします。
「参照設定」上で右クリック -> 参照の追加をクリック

COMのタブを選択し、「Microsoft Internet Controls」「Microsoft HTML Object Library」を選択してOKボタンを押下します。
COMのタブを選択し、「Microsoft Internet Controls」「Microsoft HTML Object Library」を選択してOKボタンを押下する。

あとは画面に適当にボタンを配置して、以下のサンプルプログラムを貼り付けて実行すれば、InternetExplorerが起動してページが表示されます。

サンプルプログラム

							Public Class Form1

								Private objIE As SHDocVw.InternetExplorer

								Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

									'IEの起動
									objIE = CreateObject("InternetExplorer.Application") 'オブジェクトを作成
									objIE.Navigate("about:blank")   '空ページの表示
									objIE.Visible = True    'IEを表示

								End Sub
							End Class
						
							public partial class Form1 : Form
							{
								SHDocVw.InternetExplorer objIE;

								public Form1()
								{
									InitializeComponent();
								}

								private void Form1_Load(object sender, EventArgs e)
								{
									//IEの起動
									objIE = new SHDocVw.InternetExplorer(); //オブジェクトを作成
									objIE.Navigate("about:blank");          //空ページの表示
									objIE.Visible = true;                   //IEを表示

								}
							}
						

InternetExplorer操作の解説


上記のサンプルプログラムを解説します。

参照設定で追加した2つのライブラリですが、
「Microsoft Internet Controls」はInternetExplorerの制御を行うためのものです。
「Microsoft HTML Object Library」は、表示しているページの操作をプログラムで簡単に行えるようにするものです。

Private objIE As SHDocVw.InternetExplorer
は、操作するInternetExploreのオブジェクトを格納する変数です。 以降のInternetExplore操作はこの変数を使って行います。

objIE = CreateObject("InternetExplorer.Application")
では、InternetExplorerの起動と、objIE変数へのInternetExplorerオブジェクト格納を行います。

objIE.Visible = True
ではInternetExplorerを表示させます。起動時は非表示になっているので、この設定を行わないと画面に見えません。
※画面に見えなくてもプロセスとしては起動しているので、タスクマネージャーで確認はできます。

objIE.Navigate("about:blank")
にて、指定したURLをInternetExplorerで表示します。

参考