こんにちは、阿久津です。前回のコラムで、現在のWindows 8環境に対し、"あと一年ぐらいは行けそうだ"と書いたところですが、早速問題が発生しました。メインマシンとして活用しているデスクトップ型コンピューターが搭載するプロセッサは、Intel Core 2 Quad Q550。第二世代のIntel Core 2で、俗に言うYorkfield(ヨークフィールド)です。昨日Hyper-Vの検証を行おうとコンポーネントを追加しますと、SLAT(Second Level Address Translation)がサポートされていないというメッセージと共に、Hyper-Vプラットフォームをインストールすることができませんでした。

もともとHyper-Vは、サーバー用Windows OSであるWindows Server 2008 R2上で実行する仮想化ソフトウェアであり、バージョン2.0の時点でプロセッサの持つ仮想化支援技術の第二世代を指すSLAT(Intel EPTやAMD RVIという呼称も用いられます)は、推奨用件に掲げられていました。しかし、Windows 8のクライアントは推奨から必須に押し上げられ、SLATをサポートしないプロセッサを使用するコンピューターでは、クライアントHyper-Vを使用することはできません(図01~02)。

図01 SLATをサポートしていないプロセッサでは、クライアントHyper-Vをインストールできません

図02 Sysinternalのツール「Coreinfo」でプロセッサの仮想化技術サポート状態を確認できます。ご覧のとおりEPT(SLAT)は未サポートでした

幸いにもサブマシンであるノート型コンピューターのプロセッサは、Intel Core i7 L620でしたので、クライアントHyper-Vの検証自体は問題なく行うことができました。同マシンでもSysinternalのツール「Coreinfo」で仮想化技術サポート状態を確認しましたが、ご覧のとおりEPT(SLAT)はサポート済み。ちなみに「Hyper-Vプラットフォーム」インストール後は、仮想化システムの一種であるハイパーバイザが有効になります。Windows 8自身もハイパーバイザ上で動作するため、同ツールの表示結果も変更されました(図03~05)。

図03 Intel Core i7マシンで同ツールを実行した状態。こちらのEPT(SLAT)はサポート済みと表示されました

図04 EPT(SLAT)をサポートしているマシンでは、「Hyper-Vプラットフォーム」がインストールできました

図05 「Hyper-Vプラットフォーム」をインストールした後は、「HYPERVISOR(ハイパーバイザ)」のみが有効になります

このようにWindows 8でクライアントHyper-Vを使用するには、CPU仮想化機能とSLATをサポートする64ビットプロセッサと、64ビット版Windows 8が必要になります。Windows 8リリース後にクライアントHyper-Vを試す予定の方は、ご自身のハードウェア環境を確認しておきましょう。詳しくは現在執筆中の「Windows 8大百科(仮)」でも紹介する予定ですが、原稿が締め切りまでに完成するのかが心配の種です。

さて、Windows 7の話に戻りましょう。Windows XP/Vista/7には、ウイルス対策やスパイウェアの侵入を未然に防ぐ「Microsoft Security Essentials(MSE)」が提供されています。インストール後はコンテキストメニューからファイルやフォルダーを直接チェックすることが可能になりますが、問題となるのがコンテキストメニューの幅。妙に広がってしまい、見栄えが悪くなります(図06~07)。

図06 フォルダーのコンテキストメニュー。項目名が長いため、同メニューの幅も広がります

図07 こちらはファイルのコンテキストメニュー。同じく幅が広がり、見栄えが悪くなります

この項目名は「%ProgramFiles%\Microsoft Security Client\shellext.dll」に含まれる文字列を使用していますので、変更にはちょっとしたコツが必要です。その手順を整理していて気付いたのが、そもそも同項目が必要なのかという点。そもそもMicrosoft Security Essentialsは定期的にクイックスキャンを実行し、ウイルスなどの侵入を未然に防ぐリアルタイム保護機能が用意されています。

そのため、コンテキストメニューの同項目を使うような場面が少ないのでは、という結論に至りました。そこで今週はMicrosoft Security Essentialsのコンテキストメニュー項目を無効にするチューニングをお送りします。

1.管理者権限でレジストリエディターを起動します。
2.HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\EPPキーを削除します。
3.HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\EPPキーを削除します。
4.HKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlers\EPPキーを削除します。
5.[F5]キーを押してからレジストリエディターを終了させます。

これでチューニングが終了しました(図08~15)。

図08 [Win]+[R]キーを押して「ファイル名を指定して実行」を起動し、テキストボックスに「regedit」と入力して<OK>ボタンをクリックします

図09 レジストリエディターが起動したら、HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlersキーを開きます

図10 EPPキーを右クリックし、メニューから<削除>をクリックします

図11 確認をうながすメッセージが現れたら<はい>ボタンをクリックします

図12 次にHKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlersキーを開き、EPPキーを右クリック。メニューから<削除>をクリックします

図13 確認をうながすメッセージが現れたら<はい>ボタンをクリックします

図14 後にHKEY_CLASSES_ROOT\Drive\shellex\ContextMenuHandlersキーを開き、EPPキーを右クリック。メニューから<削除>をクリックします

図15 [F5]キーを押して変更内容をシステムに反映させてから、<×>ボタンをクリックしてレジストリエディターを終了させます

それでは結果を確認してみましょう。任意のファイルやフォルダーを右クリックしますと、コンテキストメニューにあった<Microsoft Security Essentialsでスキャンします>が除外されます(図16)。

図16 ご覧のようにコンテキストメニューから<Microsoft Security Essentialsでスキャンします>が取り除かれました

なお、本チューニングはレジストリキーを直接削除していますので、事前にレジストリのバックアップを作成しましょう。削除前にキーを右クリックし、メニューから<エクスポート>をクリックします。後は任意のファイルを付けてレジストリファイルを作成してください。これらをダブルクリックすれば、レジストリファイルの内容がシステムに読み込まれ、各箇所の項目が復活します。

それでは、また次号でお会いしましょう。

阿久津良和(Cactus)