Visual Studio 2010 RC に Silverlight 4 Tools for Visual Studio 2010 Beta 2 を無理やり適用インストールするには

Visual Studio 2010 RC 対応版が出たので、もう下記のハックは不要です。

Microsoft Silverlight 4 Tools for Visual Studio 2010 RC
Microsoft Download Center

Visual Studio 2010 RC が出て半月は経ちますが、Silverlight 4 Tools for Visual Studio 2010 の RC 版がいっこうに出てきません。ということで無理やり Beta 2 版を入れる方法はないものか探していたら、ロシアの方がブログに書いていたので参考にしてやってみました。

Silverlight 4 with VS 2010 RC, Visual Studio 2010, Silverlight 4 | Alex Sorokoletov
の記事を参考にやってみました。
原文が(多分)ロシア語なので記事内の「Update: Translated to English version.」のリンクで英語翻訳を見ると良いでしょう。

インストールパッケージの抽出

さきほとダウンロードした Silverlight4_Tools.exe を実行します。

このあと「Visual Studio 2010 Beta 2 がない」とダイアログが表示されます。ここで[Close]ボタンをクリックせずにそのまま解凍されたインストールパッケージを別の場所にコピーします。

C:\ を開くとハッシュ値のフォルダがあります。その中の SPInstaller.exe や SilverlightTools_Package.msi が存在するフォルダの中身をまるごと別の任意のフォルダへコピーします。

コピーしたら、[Close]ボタンをクリックしてダイアログは閉じます。

Beta 2 インストール判定を削除

コピーしたファイルの中に ParameterInfo.xml があるので、それをテキストエディタで開きます。

      <BlockIf DisplayText="Visual Studio 2010 Beta 2 or Visual Web Developer Express 2010 Beta 2 that matches the language version of Silverlight Tools 4 must be installed before installation of Silverlight Tools can continue.  Silverlight Tools is available in other languages at &lt;A HREF=&quot;http://go.microsoft.com/fwlink/?LinkId=177432&quot;&gt;http://go.microsoft.com/fwlink/?LinkId=177432&lt;/A&gt;.">
        <Not>
          <Or>
            <Equals LeftHandSide="10.0.21006" BoolWhenNonExistent="false">
              <RegKeyValue Location="HKLM\SOFTWARE\Microsoft\VisualStudio\10.0\Setup\VS\BuildNumber\1033" />
            </Equals>
            <Exists>
              <RegKey Location="HKLM\SOFTWARE\Microsoft\VisualStudio\10.0\Setup\Microsoft Visual Web Developer 2010 Express Beta 2 - enu" />
            </Exists>
          </Or>
        </Not>
      </BlockIf>

上記の項目をコメントアウトするか削除して保存します。

インストール

SPInstaller.exe を実行します。今度は普通にインストールされます。

レジストリの修正

Visual StudioSilverlight 4 が入ったことを認識させるために

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\DesignerPlatforms\Silverlight
  • HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0_Config\DesignerPlatforms\Silverlight

の二つの SilverlightHost の値を v3.0 から v4.0
に変更します。

Visual Studio 2010 RC を起動

New Project で Silverlight Application を選ぶと Silverlight 4 がデフォルトになってます。

Alex Sorokoletov さん、ありがとう。