Windows TIPS
[Scripting]
  Windows TIPS TOPへ
Windows TIPS全リストへ

WSHでIEの「お気に入り」一覧を設定する

解説をスキップして操作方法を読む

山田祥寛
2004/08/14
 
対象OS
Windows 2000
Windows XP
Windows Server 2003
オフィスで業務用PCを導入する場合、社員が共通して使用するWebサイト/アプリケーションへのURLを一律に設定しておきたいことがある。
WSHを用いれば、URLの生成に必要な情報をあらかじめ用意しておくだけで、ワンクリックで一連のURL情報をお気に入りに登録することができる。
 
解説

 企業内にWebベースのアプリケーションが浸透するに及び、業務にWebの利用は欠かせないものとなった。社内基幹システム、グループウェア、社内情報サイト、部門内ローカル・サイトなど、これら乱立するサイトへのリンクを一元的に管理するのが、いわゆるEIP(Enterprise Information Portal:企業内ポータル)と呼ばれるものであり、近年、ナレッジマネジメントの有効な手段の1つとして話題になっている。しかし、まだまだこれらEIPの整備は十全なものとはいいがたいし、そもそも社内にあっても、部門、組織、あるいはラインごとに業務上必要なサイトがまちまちであるケースは、ごく当たり前のように考えられる。

 そのようなときにも、やはり最後に頼りとなるのは、ローカル環境に保存できるInternet Explorerの「お気に入り」機能だろう。いまでも、業務上必要なサイトが新たに公開された場合、メールで関係者にURLを通知し、関係者は自分のPCに「お気に入り」として登録しているというケースは少なくないはずだ。しかし、人によっては必ずしも几帳面に「お気に入り」を整理しているとは限らない。その結果、必要なときに必要なサイトが見つからず、結局、近くの誰かにURLを聞いたり、あるいは、過去のメールを探したりといった非効率な状況が発生することになる。

 そこで本稿では、WSH(Windows Scripting Hosts)を利用することで、あらかじめ用意した設定情報に従って、「お気に入り」に必要なサイトを登録するサンプルを紹介する。これによって、組織内で一律にお気に入りを設定することも容易となるし、もしもサイトの追加/変更があった場合にも、設定ファイルを変更するだけで各マシンに簡単に変更を反映することができる。


操作方法

手順1―テキスト・エディタでスクリプトのコードを入力する

 まずはテキスト・エディタ(メモ帳でも何でもよい)を開き、以下のコードを入力してfavorites.wsfというファイルを作成してほしい。ただし引用符(')で始まる行はコードの意味を解説するためのコメント部分なので、省略してもよい。

※ファイル:favorites.wsf

<?xml version="1.0" encoding="Shift_JIS" standalone="yes" ?>
<package>
  <job id="shortcut">
  <?job error="true" debug="true" ?>
  <object id="objFs" progid="Scripting.FileSystemObject" />
  <script language="VBScript">
  <![CDATA[
  ' お気に入り情報を記述した設定ファイルの格納場所
  ' 設定ファイルのパスについては、各自の環境に合わせて変更する必要がある
  ' 設定ファイルが所定の場所にない場合には、スクリプトの実行を中止
  Const CONFIG="C:\favorites.dat"
  If Not objFs.FileExists(CONFIG) Then
    WScript.Echo("設定ファイルがありません。")
    WScript.Quit(-1)
  End If
  Set objTs=objFs.OpenTextFile(CONFIG,1,False)
  ' favorites.datの情報に基づいて、お気に入りを作成する
  ' favorites.datにはタブ区切りテキスト形式で、サイト名、リンク先のURLが定義されているものとする
  Do While Not objTs.AtEndOfStream
    aryDat=Split(objTs.readLine,Chr(9))
    Set WshShell=WScript.CreateObject("WScript.Shell")
    Set objUrl=WshShell.CreateShortcut(objFs.BuildPath(WshShell.SpecialFolders("Favorites"),aryDat(0) & ".url"))
    objUrl.TargetPath=aryDat(1)
    objUrl.Save
  Loop
  objTs.Close
  WScript.Echo("お気に入りへの設定を完了しました。")
  ]]>
  </script>
  </job>
</package>
  • サンプル・ファイルのダウンロード
    :サンプルfavorites.wsfを実行するには、上のサンプル・ファイルを右クリックしてfavorites.wsfというファイル名で保存し、さらにC:ドライブのルートにデータ・ファイルをfavorites.datというファイル名で保存する)

 WSHの実行ファイルは拡張子「.wsf」(Windows Scripting host File)とする必要がある。ファイル名自体は何でもよいが、ここでは「favorites.wsf」という名前で保存しておこう。

手順2―WSHのコードを実行する

 favorites.wsfを実行するには、エクスプローラなどからfavorites.wsfをダブルクリックするだけでよい。その際、あらかじめ上記のスクリプト中の定数CONFIGで指定された設定ファイル(ここでは「c:\favorites.dat」としている)が実際に存在することを確認しておいてほしい。実行後、お気に入りに指定したサイトへのリンクが作成(追加)されていれば成功だ。

 favorites.datの例としては、例えば次のようなものを用意し、これをc:\favorites.datとして保存しておく。各行には、サイト名とリンク先のURLを、タブ(Tab)区切りのテキスト形式で記述しておく。

※ファイル:favorites.dat

サーバサイド技術の学び舎 - WINGS http://www.wings.msn.to
サーバサイド環境構築設定 http://www.wings.msn.to/redirect.php/-/B-08/
Q&A掲示板 http://www.wings.msn.to/redirect.php/-/B-07/
  • サンプル・データ・ファイルのダウンロード
    :サンプル・データ・ファイルfavorites.datを準備するには、上のリンクを右クリックしてfavorites.datというファイル名でC:ドライブのルートに保存する)

 なお、以上の例では[Favorites](お気に入り)フォルダへのパスを取得しているが、リンクの設置先は必ずしも[お気に入り]でなくても構わない。例えばグループウェアなど日常的に必ず使用するサイトならば、IEの開始ページ(ホーム ページ)に設定してもよいだろう。IEの開始ページをWSHから設定する方法については、Windows TIPS「WSHでレジストリの読み書きを行う」で紹介しているので、併せて参照していただきたい。End of Article

関連記事
  Windows TIPS:WSHでレジストリの読み書きを行う(Windows Server Insider)
     
「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間