Program/Wmi

考察など

ここまでWMIを見てきましたが、最初の方でも書いたように万能ではありません。
WMIはWindowsが知っている情報のみが取得可能なシステムですが、DirectXやハード固有の情報などは取得できません。
DirectXに関する情報を取得する場合はDirectXの機能を利用したプログラムを組む必要があります。
ハード固有の情報については、IOへのダイレクトアクセスをすることが必要なようです。
また、WMIはWindowsやサービスパック、ハードのドライバをインストールする際に情報が更新されますが、必ず更新されるわけではないです。

わかっている難点

メモリーの取得に関して、スロット3以降にメモリーを挿すとそのメモリーを認識しない場合があります。
また、2枚以上のメモリーを搭載した環境では、取得の情報に多少違いがあるようでうまく取得できない場合があるようです。

Athlon環境下でFSBの取得がPentium環境と違いがあり、うまく取得できていません。
「PC Game Developpers ML」の皆さんからお寄せいただいた情報から考えると、
「133266」とFSBがSD,DDのようになっている模様です。
これは環境を整えられれば確認しようと思います。

まとめ

WMIを活用すれば、サポートに関する対応を充実させることができるようになると思います。
Windowsにおけるプログラムのサポートは非常に難しい状態です。
その原因としては、非常に多岐にわたるPCの機器構成が、サポートを難しくしている状況の一つとなっています。
CPUの機能、チップセットと各種接続機器の相性など、あらかじめ把握しておく必要はありますが、
PCの構成が判らない手探り状態ではその知識を生かすことも、原因を特定することもできません。
そんなときにWMIやその他DirectX等の機能を使用した情報取得ツールを機能として入れておくことで、
ユーザーからの説明に幅が出ますし、サポート情報の蓄積の際にも役立ちます。
さらに同一構成化でのテストを行う際にもこのような情報があれば、かなり楽に行うことができます。
難点はメーカー製のマシンの場合はマシンの機種名が判らないと、構成が一緒でも原因が絞れないところでしょうか?
メーカー製に関しても各メーカーがテストラボ等を用意している場合があるので問い合わせればPCを用意してくれると思います。
ただ経験上ほとんどが有料ですし、某BTOメーカーはユーザー数の割りにテストそのものをさせてくれません。

サポートに関する細かいことは別に書いてみようと思います。