特集:初めてのVisual Studioアドイン(後編)

Visual Studioアドインを配布する!

株式会社NTTデータ
技術開発本部 ソフトウェア工学推進センタ
瀬下 真吾
2009/04/28
Page1 Page2

 中編では、前編で作成したアドインを拡張して「XMLファイル編集アドイン」を作成しました。このアドインの作成を通して、コマンドを右クリック・メニュー(=右クリックで表示されるコンテキスト・メニュー)に表示したり、ソリューション内のファイルを読み書きしたりするなど、アドインの少し高度な機能の実装方法を紹介しました。

 今回は、作成したアドインをインストーラで配布する方法について解説します。

第1章 アドインの配布

 本章では、作成したアドインを配布する方法を説明します。まずVisual Studioにアドインが登録される流れについて説明し、その後、配布に必要な作業を説明します。

Visual Studioにアドインが登録される流れ

 Visual Studioにアドインが登録される流れは図1-1のようになります。

図1-1 Visual Studioにアドインが登録される流れ
  1. アドインの設定ファイルを検索する
    Visual Studioは起動の際に特定のフォルダ内を検索し、アドインの設定ファイル(拡張子が「.AddIn」のファイル)があれば読み込みます。

  2. アセンブリ・ファイルを読み込む
    前編で解説したように、アドインの設定ファイルにはVisual Studioにアドインを登録するための情報がXML形式で記述されています。設定ファイルの<Assembly>要素に記述されているファイル・パスに従って、アドインのアセンブリ・ファイル(拡張子が「.dll」のファイル)を読み込むことでVisual Studioにアドインが登録されます。

 起動の際に検索するフォルダは、Visual Studioのオプション(メニューバーの[ツール]−[オプション])で設定できます。既定では図1-2のように設定されています。この中の「%」で囲まれた文字はトークンと呼ばれ、Visual Studioが設定ファイルの検索をする際には、これらのトークンが環境に応じたパス文字列に置き換えられます。(表1-1、1-2参照)

図1-2 [オプション]ダイアログの「アドイン/マクロセキュリティ」

トークン パス文字列
%ALLUSERSPROFILE% C:\Documents and Settings\All Users
%APPDATA% C:\Documents and Settings\<username>\Application Data
%VSAPPDATA% C:\Documents and Settings\<username>\Application Data\Microsoft\VisualStudio\9.0
%VSCOMMONAPPDATA% C:\Documents and Settings\All Users\Application Data\Microsoft\VisualStudio\9.0
%VSMYDOCUMENTS% :\Documents and Settings\<username>\My Documents\Visual Studio 2008
表1-1 トークンの実際のパス文字列(Windows XPの場合)

トークン パス文字列
%ALLUSERSPROFILE% C:\ProgramData
%APPDATA% C:\Users\<username>\AppData\Roaming
%VSAPPDATA% C:\Users\<username>\AppData\Roaming\Microsoft\VisualStudio\9.0
%VSCOMMONAPPDATA% C:\ProgramData\Microsoft\VisualStudio\9.0
%VSMYDOCUMENTS% C:\Users\<username>\Documents\Visual Studio 2008
表1-2 トークンの実際のパス文字列(Windows Vistaの場合)

アドインの配布に必要な作業

 続いては、アドインの配布に必要な作業を次の流れで説明します。

  1. SampleAddinプロジェクトのリリース・ビルド
  2. 設定ファイルの編集
  3. インストーラの作成

1. SampleAddinプロジェクトのリリース・ビルド

 Visual Studioのソリューション構成を「Release」に切り替えて、SampleAddinプロジェクトをビルドします(図1-3)。リリース構成でビルドすることでコードの最適化が行われ、アセンブリ・ファイルのサイズが小さくなり、実行速度も向上します。

図1-3 SampleAddinプロジェクトのリリース・ビルド

 ビルドが正常に終了したら、設定ファイルとアセンブリ・ファイルが以下のフォルダに保存されていることを確認しましょう。

C:\Documents and Settings\<username>\My Documents\Visual Studio 2008\Projects
\SampleAddin\SampleAddin\
 ┃
 ┣━ SampleAddin.AddIn (設定ファイル)
 ┃
 ┗━ bin\SampleAddin.dll (アセンブリ・ファイル)
設定ファイルとアセンブリ・ファイルが保存されているフォルダ

2. 設定ファイルの編集

 次に設定ファイルを開き、<Assembly>要素に記述されているアセンブリ・ファイルのパスを編集します。

 アセンブリ・ファイルを配置する場所はどこでも構いません。ここでは「C:\SampleAddin\SampleAddin.dll」に配置することにします。コード1-1は編集後の設定ファイルです。

<?xml version="1.0" encoding="utf-16" standalone="no"?>
<Extensibility xmlns="http://schemas.microsoft.com/AutomationExtensibility">
  <HostApplication>
    <Name>Microsoft Visual Studio</Name>
    <Version>9.0</Version>
  </HostApplication>
  <Addin>
    <FriendlyName>サンプルアドイン</FriendlyName>
    <Description>アドインのサンプルです。</Description>
    <AboutBoxDetails>このアドインに関する詳細は……省略……</AboutBoxDetails>
    <AboutIconData>000001000600202010……省略……</AboutIconData>
    <Assembly>C:\SampleAddin\SampleAddin.dll</Assembly>
    <FullClassName>SampleAddin.Connect</FullClassName>
    <LoadBehavior>0</LoadBehavior>
    <CommandPreload>1</CommandPreload>
    <CommandLineSafe>0</CommandLineSafe>
  </Addin>
</Extensibility>
コード1-1 編集後の設定ファイル(SampleAddin.AddIn)

3. インストーラの作成

 SampleAddinをVisual Studioに登録するには、設定ファイルとアセンブリ・ファイルをそれぞれ以下の場所に配置します。

  • 設定ファイル
    • (Windows XPの場合)C:\Documents and Settings\All Users\Application Data\Microsoft\MSEnvShared\Addins\SampleAddin.AddIn
    • (Windows Vistaの場合)C:\ProgramData\Application Data\Microsoft\MSEnvShared\Addins\SampleAddin.AddIn
  • アセンブリ・ファイル
    • (XP/Vista共通)C:\SampleAddin\SampleAddin.dll

 自分1人が使うアドインであれば、手作業で配置した方が速いですが、アドインをほかの誰かに配布する場合はインストーラがあった方が便利です。インストーラを導入すれば、前述のようにOSごとに異なる「設定ファイルの格納パス」を利用者がいちいち意識する必要がなくなり、簡単かつ高速にアドインを導入できます。

 それではインストーラを作成していきましょう。


 INDEX
  [特集]初めてのVisual Studioアドイン(前編)
  開発環境Visual Studioをカスタマイズせよ!
    1.Visual Studioの機能を拡張する3つの方法
    2.アドインを作成してみよう
    3.アドインを実行してみよう
    4.アドイン・プロジェクトの中身を見てみよう
 
  [特集]初めてのVisual Studioアドイン(中編)
  Visual Studioアドインを実装しIDEで使う!
    1.コンテキスト・メニューにコマンドを表示する
    2.コマンド実行時にXMLファイル編集画面を表示する
    3.コマンドをいろいろな場所に表示してみよう
 
  [特集]初めてのVisual Studioアドイン(後編)
  Visual Studioアドインを配布する!
  1.Visual Studioにアドインが登録される流れ/アドインの配布に必要な作業
    2.インストーラの作成手順


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 記事ランキング

本日 月間