我々は、デモ環境としてノートPCにWindows Serverをインストールします。
ノートPC用のサーバードライバーがあるわけもなく、通常は対応するクライアントOSのドライバーを使います。たとえば、Windows Server 2008 R2ならWindows 7、Windows Server 2012ならWindows 8です。今回は、Windows Server 2012 R2をインストールしたかったのでWindows 8.1のものを探しました。
しかし、ちょっと古い機種だと最新OSのドライバは提供してもらえません。今回は、ThinkPad X201にインストールしたかったのですが、発売元であるLenovoのサイトにはWindows 7用しか存在しません。
こういうときは、古いOSのバージョンに順にさかのぼっていきます。X201は、Windows 7の54ビット版ドライバーがありました(Windowsのドライバーは原則として32ビットと64ビットドライバーの互換性はありません)。
必要なドライバーはこれでほとんど入ったのですが、ディスプレイドライバーだけはインストールできません。マイクロソフト標準ドライバーだと、マルチスクリーンが使えない上、外部ビデオに出力できません。マルチスクリーンはともかく、ビデオ出力が使えないのは困ります。
X201は、CPU内蔵のグラフィック機能を使っているので、CPU製造元であるインテルが提供するドライバーを使ってみましたが駄目でした。
いろいろ調べたら、いかのブログに行き着きました。
「SE の雑記」検証環境の整備
さらに元ネタは、知り合いが書いた記事でした(ブログは匿名みたいですが、プロフィールは実名で記載されています)。
「MCTの憂鬱」Windows 8 に レガシーなIntel HD Graphics Driver をインストールする
やることは簡単です。
- Windows 7用のドライバーをダウンロードし、展開
- 展開先フォルダーのGraphics\*.inf をメモ帳で編集
私の場合は KIT41822.INF でした。 - セクション[Intel Gfx.NTamd64.6.2] にセクション [Intel Gfx.NTamd64.6.0] の内容をコピー
セクション名はドライバーのバージョンで変わるようです。
コピー先の目印は以下のようなコメントです(セミコロンはコメントの開始記号)
; no install on Win8
このコメントから「Windows 8にインストールできないことが分かります。Windows 8.1用のセクションは作られていなかったので、今回はこれを使いました。
コピー先の目印は以下のような記述です。
%iILKGM0% = ... - 以下のコマンドを実行して、ドライバーの署名制限を無効にし、未署名のドライバーをインストールできるように設定
bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON - 再起動
再起動したら、改めてドライバーをインストールします。この時、以下の手順に従ってください。
- デバイスマネージャーで、[ディスプレイアダプター]の[マイクロソフト基本ディスプレイアダプター]を右クリックし、[ドライバーソフトウェアの更新]を選択
- 自動検索ではなく[コンピューターを参照してドライバーソフトウェアを検索します]を選択
- [コンピュータ上のデバイスドライバーの一覧から選択します]を選択
- [互換性のあるハードウェアを表示]のチェックを外し、[ディスク使用]から、ドライバーの入ったフォルダー(Graphicsフォルダー)のINFファイルを選択
- [Intel(R) HD Graphics]を選択
- 指示に従ってインストール
- 再起動
- 念のため、以下のコマンドを実行し、不適切なドライバーがインストールされないように設定
bcdedit -set loadoptions ENABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING OFF
以上です。無事、外部ディスプレイにも出せるようになりまいた。