昨日、DirectX 9.0cの古いリリースでは、ミコソフトスライドショーXが起動できないというお話しをしました。


そこで、XNA2導入チェッカーでも、システムディレクトリにあるDirectX 9.0cの本体DLL(=d3d9.dll)のファイルバージョンをチェックして判定しようとしたのですが…。


なんと、ファイルバージョンは、0.0.0.0ではないですか!


うーん、これには驚きました。


DirectXの古いSDKには、DirectXのバージョン判定プログラムサンプルも入っているのですが、ファイルのバージョンでチェックしているのは、DirectX8までで、9以降は、DxDiagの機能を使ってバージョン判定を行っている理由が判りました。(涙)


そいいうことなんですね。


納得です。


となると、なにか代替方法を考えないといけません。


という訳で、今回は、d3d9.dllのファイルタイムスタンプで判定することにしました。


しかし、どのスタンプからならOKというのは、ネットを検索しても情報が見つかりません。(まあ、探し方が悪いんでしょうが…)


そこで、今回は確実な2008年以降のリリースということで、2008年4月14日11時25分のスタンプを用いることにしました。


そして、d3d9.dllのファイルタイムスタンプがそれよりも前の場合は、古いリリースだと判定して、DirectXの最新バージョンの導入を促すガイドを表示するようにしました。


ただ、あくまで執事ですから…


もとい!


ただ、あくまで代替手段ですから、情報が見つかり次第、改訂したいと思っています。