PR

プログラム~フォルダー検索ダイアログを表示する

 プログラムを簡単に見ていきましょう。今回のプログラムでは、ボタンを押すとフォルダー選択ダイアログが開いて、任意のフォルダーを選択できるようになっています。これを実現するには、ShellオブジェクトのBrowseForFolder()メソッドを利用します。以下は、フォルダーの選択ダイアログを利用している部分を抜粋したものです。

// フォルダ選択ダイアログ
function selectdir(id) {
  var objShell = new ActiveXObject("shell.application");
  var folder = objShell.BrowseForFolder(0, "フォルダ選択", 0);
  if (folder == null) return;
  var path = folder.Self.Path;
  $(id).value = path;
}

 通常、Webブラウザーで実行されるHTMLの中では、セキュリティ上の制約ゆえに、ActiveXは利用できないように配慮されています。しかし、Webブラウザーを介さず、HTAを使うことで、ActiveXが利用できるようになります。その方法は簡単で、ファイルの拡張子を「.html」から「.hta」に変更するだけです。