VS 2005 SP1は年内に提供、ただしVistaでのサポートはずれ込む

Windows Vista上でサポートされる開発ツールはVisual Studio 2005のみとなる。しかも、それを実行するには、これから提供されるサービスパックとパッチが必要となる。

» 2006年10月06日 07時00分 公開
[Greg DeMichillie,Directions on Microsoft]
Directions on Microsoft 日本語版

 Visual Studio 2005 Service Pack 1(SP1)はバグフィックスのみで構成され、2006年中のリリースが予定されている。続いて、Windows VistaでVisual Studio(VS)2005を実行するために必要となるパッチが提供される予定だ。MicrosoftはWindows VistaでVisual Basic(VB)6.0をサポートすることを約束しているが、このVB 6.0のほかには、SP1とパッチを適用したVS 2005だけが、Windows Vista上での動作がサポートされる唯一のバージョンのVSとなる。つまり、現在VSの旧バージョンを使っていて、Vistaへのアップグレードを検討している開発者は、VS 2005にもアップグレードするか、あるいはVirtual PCやVMwareなどの仮想化技術を使わなければならない。

 サポートポリシーはVSツール群のみに適用され、これらのツールで作成されたアプリケーションには適用されない。一方、.NET Frameworkの既存バージョンはWindows Vistaでサポートされる。

なぜVistaとの互換性問題が生じるのか

 Vistaにはアーキテクチャ上の変更が幾つか施されているが、VSのすべてのバージョンがその影響を受ける。Vistaではこうした変更のおかげで、悪意あるソフトウェアによる攻撃への耐性が高まり、下手な設計のソフトウェアによる損害も軽減されるが、その一方で、開発ツールとの干渉という問題が生じることになる。

 Vistaの最も重要な変更点は、ユーザーアカウントコントロール(UAC)機能の導入だ。これは、通常は完全な管理者権限を持たない状態でもプログラムを実行でき、必要に応じて一時的に権限を昇格させられるというもの。ネットワーク設定を変更したり、アプリケーションをインストールしたりなど、管理者権限を必要とするアクションをユーザーが実行しようとすると、そのタスクを実行するために権限の昇格を承認するよう求めるダイアログボックスが表示される。OSの設定によっては、ユーザーはOKをクリックするだけでよい場合もあれば、パスワードを入力しなければならない場合もある。

 開発ツールにとっては、このUAC機能が問題となる。開発ツールは完全な管理者権限を必要とするからだ。例えば、デバッギングを行うには、システム上の1つのアプリケーション(開発ツール)で、同じシステム上の別のアプリケーション(デバッグするプログラム)を起動したり、中止したり、メモリにアクセスしたりできるようにする必要がある。こうした動作は、しばしばマルウェアで実行されるのと同じタイプの動作だ。UAC機能は、そうしたマルウェアを阻止することを目的に設計されている。

 MicrosoftはWindows Vistaのリリース後ほどなくして、一般配布リリース(GDR:General Distribution Release)と呼ばれるパッチを提供し、UAC機能に関する問題や互換性に関するそのほかの問題点を修正する方針だ。このパッチが、SP1を適用したVS 2005をWindows Vistaで正しく機能させるためのものとなる。SP1とこのパッチを適用したVS 2005は、Vistaで完全にサポートされる唯一のバージョンのVSとなる。つまり開発者には、Vistaへのアップグレードを見送り、Windows XPを使い続けるという選択肢もあるわけだ。そのほかの選択肢としては、Vistaでホストされた仮想マシンで動作するWindows XPのゲストOSで開発者ツールを使ったり、あるいはUAC機能をオフにするといった方法もある。ただし、UAC機能をオフにするとセキュリティ脅威に対するシステムの脆弱性が高まるため、Microsoftはこの選択肢を推奨していない。

 MicrosoftはVisual Basic(VB)6.0を特別扱いし、Windows Vistaでのサポートを約束している。VBの内部アーキテクチャはVSの内部アーキテクチャとは大きく異なるため、ユーザーが管理者権限を持っている限り、VB 6.0をVistaで実行するための技術的変更は不要だ。VB 6.0のサポートは2005年3月31日でメインストリームサポートから延長サポートに移行したが、多くの企業開発者は重要なビジネスアプリケーションを保守するために同製品を使い続けており、Microsoftはこうした開発者向けに通常の延長サポートを提供していく方針だ(延長サポート期間中、セキュリティ関連以外のホットフィックスは有償で提供される)。

 Microsoftの開発者ツールの各バージョンについてのVistaでのサポートに関しては、次の表を参照のこと。

製品 Vistaとの互換性 サポート
Visual Basic 6.0 管理者権限を必要とする(開発者は権限の昇格を承認するよう促される) VB 6.0は現在、延長サポート期間に入っており、セキュリティに関連しないホットフィックスと電話サポートが有償ベースでのみ提供される
Visual Studio .NET、Visual Studio 2003 互換性に関する警告が表示される(実行はできるが、動作は不安定) サポートされない
Visual Studio 2005 互換性に関する警告が表示される(実行はできるが、動作は不安定) サポートされない
SP1を適用したVisual Studio 2005 互換性に関する警告が表示される(実行はできるが、動作は不安定) サポートされない
SP1とパッチを適用したVisual Studio 2005 管理者権限を必要とする(開発者は権限の昇格を承認するよう促される) メインストリームサポート

Copyright(C) 2007, Redmond Communications Inc. and Mediaselect Inc. All right reserved. No part of this magazine may be reproduced, stored in a retrieval system, or transmitted in any form or by any means without prior written permission. ISSN 1077-4394. Redmond Communications Inc. is an independent publisher and is in no way affiliated with or endorsed by Microsoft Corporation. Directions on Microsoft reviews and analyzes industry news based on information obtained from sources generally available to the public and from industry contacts. While we consider these sources to be reliable, we cannot guarantee their accuracy. Readers assume full responsibility for any use made of the information contained herein. Throughout this magazine, trademark names are used. Rather than place a trademark symbol at every occurrence, we hereby state that we are using the names only in an editorial fashion with no intention of infringement of the trademark.

注目のテーマ