SCE / WSUS :今すぐに更新ファイルやソフトウェアをインストールしたい その1

TechEd での Essentials セッション参加者の皆様、大変お待たせしました。
いろいろと技術検証を行っており、遅くなってしまいました。

SCEに限らず、Windows Update または WSUS を使用して更新ファイルを今すぐに適用するためのスクリプトをご紹介します。
いや、紹介するだけではつまらないので、スクリプトを一緒に作っていきましょう。

スクリプト自体、さほど新しいわけでもなく、むかしからいろいろなサイトでご紹介されているものですが、日本語解説がついたものはあまりないみたいですので、スクリプトの勉強がてら読んでいただければと思います。

でははじめましょう。

まず、以下の図をざーっとごらんください...ちょいと大きくてすいません。

DEVな方や、スクリプトの開発になれた方にはおなじみですよね。クリックしていただくと、MSDNの当該ページに移動します。
これはなにかといいますと、Windows Update Agent のオブジェクトモデルです。スクリプトを書くときに限らず、開発者の心の友でもあります。

これをご覧いただくと、なんとなく、UpdateSession というオブジェクトに便利そうな機能が詰まっているであろうことがわかります。なんとなくでよいので、そんな気分になってみてください(強引だな)。

今回は、Windows Update サイトもしくは、WSUSのサイトにアクセスして適用可能な更新ファイルが存在する場合には即座に適用するためのスクリプトを作成します。上記のオブジェクトモデルを参照すると、以下のことが予測できます。

  • UpdateSeacher は更新ファイルの検索に使うような気がする
  • UpdateDownloader は更新ファイルのダウンロードに使うような気がする
  • UpdateInstaller は更新ファイルのインストールに使うような気がする

こうして "あたり" をつけたら ( というやり方が正しいかどうかはおいといて... )、もうやることはなんとなく見えてきました。

探して、ダウンロードして、インストールすればよいわけですね。

では、まず「探す」スクリプトから作りましょう。 

続きは、「その2 探す編」にて。

参考サイト

Searching, Downloading, and Installing Updates
http://msdn2.microsoft.com/en-us/library/aa387102.aspx

Tales from the Script
http://www.microsoft.com/japan/technet/community/columns/scripts/sg0705.mspx