Microsoft Office Web ComponentsはOffice 2007ではサポートされない
Microsoft Application CenterTestとプロキシ設定
これでテストは動くようになったが、今度はテストサマリで表示されるはずのRPS(request per second)チャートが表示されない。
ヘルプを読むと、どうやら「Microsoft Office Chart コントロール」というのを流用しているらしく、現在のWindows Vista環境にはそのコンポーネント(名前からしてOffice オートメーションサーバか?)が登録されていないらしい。そもそもこのコンポーネントはどこに含まれているんだ?
調べて見ると、正式には「Microsoft Office Web Components」という名称であり、そもそもの目的はWebページのデータの表示やグラフ化に利用するActiveXコントロール群だ。
ならば最新版のをインストールしてやれば良いのだろうと思うが、Office 2007では既にサポートされていないらしい。
Office 2007を機にOffice Webコンポーネントが引退へ、選択肢はAJAX?
こうやってひっそりと? 便利だけど邪魔なコンポーネントは外されていくんだろう。
取り敢えずはOffice 2003用の同コンポーネントのダウンロードは継続されている、とのことなのでこれをインストールしてみることにする。既にOffice 2007を使用しているが、互換性のためにOffice 2003は残しているし、使えるだろう。
Office 2003 アドイン : Office Web Components
と、インストールしたがまだチャートが表示されない。困ったときのgroupということでmicrosoft.public.vsnet.actを調べてみたが、どうやらバージョンが違うらしい。
Office XP ツール : Web Components
これでも駄目だ。仕方が無いので、COMコンポーネントの登録し直しを実施してみた。インストールされたそれぞれのコンポーネントがコピーされたディレクトリに移動して以下のコマンドを実行
for %%i in (MSOWC*.dll) do RegSvr32 -u %%i for %%i in (MSOWC*.dll) do RegSvr32 -s %%i
その上でactを再インストール。駄目だ...
結局、前のエントリでも解説したようにactを再インストールして、その後、以下のサービスパックを実行することで、やっとactのチャート機能が復活した。
Visual Studio .NET 2003 Service Pack 1 MSOWC.DLL セキュリティ更新プログラム
この辺、表示されるようになった原因が分からなくて気持ちが悪いのだが、サービスパックでアップデートされたMSOWC.dllは新たに以下にインストールされたことが解っている。
C:\Program Files\Microsoft Office\Office\MSOWC.DLL
これが正しいバージョンだったのだろうか。それとも正しく登録されただけなのだろうか。
それにしても、インストールする度に必要なコンポーネントの不在に泣き、バージョンで泣くってのは勘弁してほしいもんだ。
コンポーネント指向は良いことだが、このように単独でインストールして使用するツール類は、最初からそれを前提にパッケージしてくれよな。
追記:Visual Studio .NET 2003 Service Pack 1 によってアップデートされたMSOWC.DLLがactから使われていることを確認した。
C:\Windows\system32>handle MSOWC.DLL Handle v3.42 Copyright (C) 1997-2008 Mark Russinovich Sysinternals - www.sysinternals.com act.exe pid: 688 260: C:\Program Files\Microsoft Office\Office\MSOWC.DLL
こいつのお陰でチャート機能が復活したのは間違い無いようだ。