Windows7を導入して久しい人にとってはすでに既知の話かもしれないが、ここ最近導入した私にとって画期的な事を今日知った。
Windows7のプログラム動作は、Vistaの頃から比べて随分と良くなったとは聞いたが、私がインストールしようとしたゲームのいくつかはやはりどうにもならなかった。
そのほとんどがDirectX9.0cなど前時代のDirectXで動作していた事に起因するものだが、残念ながらその上位にあるはずのDirectX 11がインストールされているWindows7は、そうした9.0cを利用しているプログラムからはDirectXがインストールされているように見えないようで、そもそもプログラムをインストールできなかったり、できたとしても実行時に見つけることができないとして起動しなかった。
これは諦めるしかないのかなぁと思っていたのだが、まぁモノは試しと検索してみたら、どうもランタイムが足りていない事が原因のようであり、そのランタイムさえ入れてしまえばDirectX 11上からでも実行できるような感じであった。
そのランタイムだが、DirectX End-User Runtimeという名でMicrosoftで公開されていた。
ダウンロードページからインストールしてみたところ、たしかにDirectX 11からでも9.0cが稼働するようになった。
これで昔のゲームでもプレイできるなぁ…と安直に思っていたら、それでも動作しないものがいくつか出てきた。これはもうプログラムの仕様に違いないと諦めようと思ったのだが、あきらめが悪いのが私であり、結局なんとか動作させる事ができないかとネット上をいろいろ検索してまわった。
すると、どうも私はとんでもない見落としをしている事に気がついた。
Windows7の互換性を支えているのは、Professional版以上で利用できるXP-modeだと思っていたのだが、実はそうじゃないのである。
実行プログラムを右クリックする。
この行為そのものは、私もWindowsXPを利用していた時にさんざんやってきた事なのだが、どうもWindows7に移行してからというもの、右クリックという行為をわすれてしまったのか、あまり使わなくなっていた。
あるのである、プロバティに「互換モード」なるものが。
画像の真ん中あたりに「互換モード」という項目がある。
互換モードはWindows95からVista SP2まで11種類から選ぶことができ、ここのチェックボックをONにする事で選んだOSの頃の互換モードにできるのである。
まぁ、ほとんどの場合はXP SP3で問題ないだろうが、古いプログラムであっても95や98などで試してみる価値はあるはずだ。
もちろん、この互換モードで完全に動作するというわけではない。
中にはこれでもダメなものもあるだろう。
だが、長きXP時代のゲームであれば、ほとんどが動作するのではないかと思う。
ちなみに私はこれでも動作しなかったソフトがいくつかあった。
…まぁその動作しなかったソフトのオリジナルはWindows2000やXPをサポートしない程古いソフトだったため、致し方ない話ではあるのだが。
とりあえず、この互換モードを知っておいて損はない。
XP-modeはProfessional版以上でなければ使えないが、この互換モードはHome Premiumでも利用できる。そしてなにより仮想化技術によるものではない。
ちなみにXP-modeは仮想化させるためのプログラムの制約でDirectXが使えない場合がある。使える仮想化プログラムもあるが、まだ安定しているとは言い難いし、なにより無料で利用できる仮想化プログラムでDirectXの動作が可能なものはない…と思う。
いろんな視点で見ても、今はこの互換モードが手軽に試せるものだと言える。
Windows7に移行したが、ゲームが動かない…なんて時は、この互換モードを試してみるといいだろう。
…ってか、ほとんどの人はもう知っているかw
うちも同じ症状でした。記事を見て動くようになりました。ありがとうございします。
返信
う…コメントもらってた事に気づいてなかった orz
タイムリーでなくてごめんなさい。
Blogやってて、反応もらったのに放置って…
私ってひどいヤツですね orz
以後、気をつけます…。
返信