特集:Visual Studio 2008 SP1概説

新機能がてんこ盛りの「Visual Studio 2008 SP1」レビュー

デジタルアドバンテージ 一色 政彦
2008/08/20
2008/08/21 更新
Page1 Page2 Page3 Page4

 2008年8月12日(日本時間)にマイクロソフトからVisual Studio 2008(以降、VS 2008)および.NET Framework 3.5のマイナー・アップグレードである「Service Pack 1」(以降、SP1)がそれぞれリリースされた。

 VS 2008 SP1は、Standard Edition、Professional Edition、Team Systemの各エディションに適用可能で、それ以外のExpress EditionやTeam Foundation Serverに対するSP1は次のリンク先で個別に提供されている。

 今回のSP1は、単なるバグ修正やパフォーマンス向上にとどまらず、いくつかの新機能(=恐らくVS 2008のリリースに間に合わなかった機能群)が追加されているという点でも、非常に重要なアップデートだ。VS 2008を利用している開発者や、.NET Framework 3.5でシステムを運用している管理者がインストールしない理由はない。

【コラム】VS 2008 SP1 ベータ版をインストールしていた場合

 今回のVS 2008 SP1 ベータ版(Beta1)をすでにインストールしている/していた場合(厳密にはKB944899のパッチが適用されている環境の場合は)、VS 2008 SP1正式版のインストールでエラーが発生することがある。

 この問題は手動で解決することもできるが、問題を解決するためのツールが提供されているので、基本的にはこのツールを用いて解決するとよいだろう。このツール(Remove_KB944899.exe)は次のページからダウンロードできる。なお、事前にSP1のベータ版自体もアンインストールしておいた方がよいだろう。

筆者はVS 2008 SP1ベータ版を適用していなかったので、実際の現象については確認していないことをご了承いただきたい。本コラムの内容は、上記のリンク先のサイトの情報に基づいて記述している。

 本稿では、VS 2008 SP1と.NET Framework 3.5 SP1でどのような機能が追加されたのかを、主要なものに絞り、短い概要説明と画面キャプチャで簡単に紹介していく。なお、各機能に関するより詳しい情報は、今後の@IT/Insider.NETフォーラムでの記事展開にご期待いただきたい。以下で掲載するキャプチャ画面は、SP1を適用したVisual Studio Team System 2008 Team Suiteのものである。

 本稿では、「ほとんどの開発者が.NET Framework 3.5単体での開発ではなく、VS 2008を使用する」という前提に立ち、「VS 2008からの新機能の利用」という観点で新機能を眺めてみる。まずは、まだあまり情報が出ていないIDE関連から紹介していこう。

Visual Studio IDE関連の新機能と機能強化ポイント

タスクバーやタイトルバーのアイコンに「9」の表記

 インストールしてすぐに気付くのが、タスクバーやタイトルバーのアイコンの右下に表示される「9」の文字だ。

 VS 2008は過去のバージョン「2005」「.NET 2003」「.NET 2002」と共存できるが、特にVS 2008とVS 2005は見た目が非常に似ており、両方を同時に起動している場合、どちらがどちらなのか一見しただけでは分からなかった。結果、[バージョン情報]を表示して確かめなければならない、ということがよくあった。

 VS 2008 SP1では、次の画面の例のように「9」という文字がアイコンの右下に表示されるようになった。これにより、そのVisual Studioが「Visual Studio 9.0」(=Visual Studio 2008の正式なメジャー・バージョン番号)であるということが、ひと目で認識できるようになっている。

VS 2008 SP1(左)/VS 2008(中央)/VS 2005(右)のタスクバー・アイコン
VS 2008 SP1では、タスクバーのアイコンの右下に「9」という文字が表示される。

VS 2008 SP1(左)/VS 2008(中央)/VS 2005(右)のタイトルバー
VS 2008 SP1では、タイトルバーのアイコンの右下に「9」という文字が表示される。

 参考までに、VS 2008 SP1の[Microsoft Visual Studio のバージョン情報]ダイアログは次のようになっており、VS 2008のバージョン番号は「9.0.21022.8」から「9.0.30729.1」に変わっている。

VS 2008 SP1の[Microsoft Visual Studio のバージョン情報]ダイアログ
このダイアログは、メニューバーから[ヘルプ]−[Microsoft Visual Studio のバージョン情報]で表示される。

共通言語ランタイム(CLR)関連の新機能と機能強化ポイント

共有フォルダ上からのWindowsアプリケーションのフル権限実行

 .NET Framework 3.5 SP1以前の共通言語ランタイム(CLR)のデフォルトの動作では、イントラネット上の共有フォルダに配置しているWindowsアプリ(アプリは「アプリケーション」の略)をローカル環境から直接に実行すると、一部の機能(例えば、イベントログの書き込みなど)は制限され、次の画面のようにセキュリティ・エラーが表示される。これは(ノータッチ・デプロイメントの)CAS(コード・アクセス・セキュリティ)の機能によるものである。

共有フォルダのWindowsアプリを実行
[イベントログの書き込み]ボタンをクリック
CASによる部分信頼のアプリ実行(.NET Framework 3.5 SP1以前)

 このセキュリティ仕様が.NET Framework 3.5 SP1で変更され、イントラネットから直接実行してもCASの制限を受けなくなった。つまりローカル・コンピュータ上でプログラムを動かす場合と同じ完全信頼の状態で実行できる。

 次の画面は、.NET Framework 3.5 SP1をインストールしたコンピュータ環境から、共有フォルダにあるWindowsアプリを実行した例である。上の画面とは違い、[イベントログの書き込み]ボタンをクリックしても正常に動作する。

CASによる完全信頼のアプリ実行(.NET Framework 3.5 SP1)
このようにセキュリティ・エラーは発生することなく、ローカル実行と同じように実行される。

 この仕様変更は、マイクロソフトが開発者やユーザーのニーズに答えたもののようだが、ネット上の.NET開発者のブログなどを読むと「問題のある仕様変更ではないか」と物議を醸しているようだ。

 さて、今回のVS 2008 SP1ではクライアント機能の強化で注目したいものがいくつかある。次にそのクライアント関連の新機能について紹介する。


 INDEX
  [特集]Visual Studio 2008 SP1概説
  1.Visual Studio IDEと共通言語ランタイム(CLR)の新機能と機能強化ポイント
    2.クライアント関連の新機能と機能強化ポイント
    3.データベースとASP.NETの新機能と機能強化ポイント
    4.言語個別の新機能と機能強化ポイント

更新履歴
【2008/8/21】本記事の一部に以下のような誤りがありました。お詫びして訂正させていただきます。

●「共有フォルダ上からのWindowsアプリケーションのフル権限実行」
画面や説明がイントラネット・ゾーンではなく、インターネット・ゾーンになっていました。
イントラネット・ゾーン上の動作内容に、画面と説明を修正しました。


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間