Windows TIPS
[System Environment]
  Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

Office 2000のインストールの有無をリモートから確認する

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

デジタルアドバンテージ 島田 広道
2009/06/05
対象アプリケーション
Office 2000
Office 2000のセキュリティ・パッチ提供は2009年7月14日に終了するため、何らかの対策を早急に行う必要がある。
それにはOffice 2000がインストールされたPCを特定しなければならない。
ネットワーク経由で各PCのレジストリを参照すれば、複数のPCで自動的にOffice 2000がインストールされているかどうかをチェックできる。

解説

 最初のリリースから約10年が経つOffice 2000は、Office 2003まで文書フォーマットに互換性があったことなどから、今でも使い続けているユーザーが企業にも多いという。しかしマイクロソフトは2009年7月14日に、Office 2000の全サポートを終了し、これ以降にOffice 2000の新たな脆弱性が明らかになってもセキュリティ・パッチを提供しないと表明している。たとえこの脆弱性を悪用するウイルスなどが流布しても、脆弱性そのものは放置されるということだ。つまりOffice 2000を使い続けるリスクは格段に上がってしまう(詳細はTIPS「Office Updateサイトが閉鎖される前にやっておくべきこと」参照)。

 このためOffice 2000をインストールしたPCは、サポート継続中のOffice製品にアップグレードしたり、最低限、既存のセキュリティ・パッチだけでも適用したりするなど、早急に何らかの対策を必要とする。それには、Office 2000がインストールされたPCを確認して特定する必要がある。とはいえ企業などで複数のPCが対象の場合、手動でWindowsを対話的に操作して確認するのはまったく現実的ではない。パッチ管理ツールWSUSも、Office 2000のインストールは検出できない。

 ネットワーク経由で各PCのレジストリにアクセス可能なら、Office 2000がインストール時に書き込むレジストリ・キーをリモートから調べられる。これにより、バッチ・ファイルなどと併用すれば、ネットワークに接続された複数のPCを自動的にスキャンすることも可能だ。

操作方法

レジストリ・キーからインストール済み製品名を調べる

 Office製品のインストールを確認するには、次のレジストリ・キーの有無を調べる。

  • HKEY_LOCAL_MACHINE の \SOFTWARE\Classes\Installer\Products\<圧縮されたGUID>

 GUIDとは製品ごとに割り当てられたユニークなIDの一種で、製品の識別に用いられる。つまり、製品ごとに対象のレジストリ・キーは異なる。Office 2000ファミリの場合、代表的なエディションについては「<圧縮されたGUID>」の部分は下表のように決められている。

製品名 レジストリ・キー名
Office 2000 Personal 114060001E872D116BF00006799C897E
Office 2000 Standard 114020001E872D116BF00006799C897E
Office 2000 Professional 114010001E872D116BF00006799C897E
Office 2000 Premium 114000001E872D116BF00006799C897E
Office 2000 Disc 2 114040001E872D116BF00006799C897E
Word 2000単体版 114071001E872D116BF00006799C897E、
1140D1001E872D116BF00006799C897E
Excel 2000単体版 114011001E872D116BF00006799C897E
Outlook 2000単体版 114061001E872D116BF00006799C897E
PowerPoint 2000単体版 114031001E872D116BF00006799C897E
Access 2000単体版 114001001E872D116BF00006799C897E
FrontPage 2000単体版 114021001E872D116BF00006799C897E
Publisher 2000単体版 114041001E872D116BF00006799C897E、
1140A1001E872D116BF00006799C897E
Access 2000ランタイム 1140F4001E872D116BF00006799C897E、
114081001E872D116BF00006799C897E
日本語版Office 2000ファミリの情報が格納されているレジストリ・キー名
代表的なエディションをリストアップした。これらのキーが存在するなら、該当製品がインストール済みということを表す。先頭の「1140」は日本語版を表しており、ほかの言語では別の値が入る。エディションを表しているのは左から5〜6桁目の数値である(詳細は、マイクロソフト・サポート技術情報KB230848「Office 2000 での製品コード GUID の番号付けのしくみ」参照)。

 日本語版Office 2000ファミリを網羅的に調べるには、「1140**001E872D116BF00006799C897E」の5〜6桁目に00〜FFまでの16進数を代入したキーをスキャンする。キーが見つかったら値「ProductName」から製品名を確認する。例えばSR-1適用済みのOffice 2000 Premiumでは、「Microsoft Office 2000 SR-1 Premium」という製品名がProductNameに格納されている。

Office 2000ファミリの情報が格納されたレジストリ・キーの例
これはOffice 2000 PremiumをインストールしたPCで、HKEY_LOCAL_MACHINE の \SOFTWARE\Classes\Installer\Products以下をレジストリ・エディタで参照しているところ。
前述のキー「1140**001E872D116BF00006799C897E」に該当するキーを探して選択する。
インストールされている製品はOffice 2000 Premiumであることが分かる。

Office 2000ファミリの製品名をバッチ・コマンドで確認する

 レジストリ・キーをいちいち手動で確認するのは面倒なので、上表に記したOffice 2000ファミリの代表的なエディション(製品)を自動的に検出・表示するバッチ・ファイルを用意した。

 なお、Windows 2000でこのバッチ・ファイルを実行する場合は、あらかじめTIPS「コマンド・プロンプトでレジストリを操作する」を参照してreg.exeを実行可能にしていただきたい。

 このZIPファイルを展開して、chkof2kvr.cmdというファイルをフォルダに保存する。管理者アカウントでログオンしていることを確認してから、引数なしでchkof2kvr.cmdを実行すると、実行したコンピュータにインストールされているOffice 2000ファミリの製品名が表示される。

 また引数に「\\<コンピュータ名>」を指定すると、リモートからそのコンピュータにOffice 2000ファミリがインストール済みかどうか調査して表示できる。ただし、chkof2kvr.cmdを実行するコンピュータから、対象のリモート・コンピュータのレジストリにアクセスできる必要がある。具体的には、リモート・コンピュータのRemote Registryサービスが起動していること、ファイアウォールでMicrosoft Windowsネットワークを遮断していないことなどを確認する(詳細はTIPS「リモートからレジストリを操作する」を参照)。

C:\Temp> chkof2kvr.cmd \\UserPC01
----- \\UserPC01 -----
Office 2000 Premium がインストール済みです。
chkof2kvr.cmdの実行例
リモート・コンピュータを調査した例。Office 2000ファミリの製品名が表示される。

 複数のPCを自動的に調査するには、テキスト・ファイル(次の例ではcplist.txt)に対象コンピュータ名の一覧を記してから、次のようにforコマンドを利用して繰り返し実行する。

C:\Temp> type cplist.txt
UserPC01
UserPC02
FileServer01

C:\Temp> for /F %i in (cplist.txt) do @chkof2kvr.cmd \\%i
----- \\UserPC01 -----
Office 2000 Premium がインストール済みです。
----- \\UserPC02 -----
Office 2000 Personal がインストール済みです。
----- \\ FileServer01 -----
chkof2kvr.cmd: Office 2000ファミリは検出されませんでした。

 forコマンドの利用方法については、連載「Windows 2000コマンドライン活用徹底――第7回 forコマンド(その1)」が参考になる。End of Article

  関連リンク
  Office 2000 での製品コード GUID の番号付けのしくみ(サポート技術情報230848)

「Windows TIPS」


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

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間