次の方法で共有


Office 2007 .NET 3.5 プロジェクトと Office 2010 .NET 4.0 プロジェクトの展開

Office Visual How To

概要:  Visual Studio 2010 を使用して, .NET Framework 3.5 および .NET Framework 4 を対象とする Microsoft Office 2007 system ソリューションおよび Microsoft Office 2010 ソリューションを作成できます。このようなソリューションをインストールするための要件は、Office と .NET Framework のバージョンによって異なります。

適用対象: Excel 2010 | Office 2007 | Office 2010 | Open XML | PowerPoint 2010 | VBA | Visual Studio | Word 2010

公開:   2010 年 8 月

提供元:   Robert Green (MVP)、MCW Technologies, LLC (英語)

概要

Microsoft Visual Studio 2010 を使用して、Microsoft Office 2007 system と Microsoft Office 2010 の両方にドキュメント レベルのカスタマイズやアプリケーション レベルのアドインを作成できます。どちらの場合も、Microsoft .NET Framework 3.5 または .NET Framework 4 を対象にして作成できます。作成したソリューションは、コンピューター上でテストした後、エンド ユーザーに展開できます。どのバージョンの Office を使用する場合も、また、どのバージョンの .NET Framework を対象とする場合も、必要なソフトウェアがユーザーのコンピューターにあることを確認する必要があります。

ユーザーのコンピューターには、Office および適切なバージョンの .NET Framework が必要です。また、Visual Studio 2010 Tools for Office Runtime も必要です。Microsoft Office 2007 system を使用する場合は、Office 2007 プライマリ相互運用機能アセンブリが必要です。Office 2010 を使用する場合は, .NET Framework 3.5 または 4 用の Office 拡張機能が必要です。

コード化する

.NET Framework 3.5 および .NET Framework 4 を対象とする Microsoft Office 2007 system ソリューションおよび Office 2010 ソリューションをレビューするには、次の手順を実行します。

ソリューションのレビュー

この記事では、SmartTagAddIn というプロジェクトの 4 種類のバージョンについて説明します。このプロジェクトは、Word のアプリケーション レベルのアドインであり、図 1 と図 2 のように、華氏または摂氏で温度を認識し、華氏と摂氏の変換を行うオプションを備えたカスタム スマート タグを提供します。図 3 と図 4 のようなリボンのカスタマイズによって、ユーザーが温度値を入力し、単位を設定して、温度をブックに挿入できるようにします。このアドインの内部コードも興味深いものですが、ここでは内部コードについては説明しません。この記事では、Office ソリューションの展開方法について説明します。

図 1. 温度の単位を変換する Word 2007 のスマート タグ

温度を変換するための Word 2007 のスマート タグ

図 2. 温度の単位を変換する Word 2010 のスマート タグ

温度を変換するための Word 2010 のアクション

図 3. 書式設定された温度値を挿入するための Word 2007 のリボンのカスタマイズ

Word 2007 のリボンのカスタマイズ

図 4. 書式設定された温度値を挿入するための Word 2010 のリボンのカスタマイズ

Word 2010 のリボンのカスタマイズ

バージョン 1: .NET Framework 3.5 を対象とする Office 2007 ソリューション

  1. Visual Studio 2010 で、SmartTagAddIn_Office2007_NET35.sln というサンプル プロジェクトを読み込みます。

  2. Visual Basic を使用する場合は、ソリューション エクスプローラーの [すべてのファイルを表示] をクリックします。

  3. ソリューション エクスプローラーの [参照設定] ノードを展開します。

    Microsoft.Office.Interop.SmartTag と Microsoft.Office.Interop.Word はプライマリ相互運用機能アセンブリ (PIA) です。これらの PIA によって、マネージ コードで Microsoft Office アプリケーションの COM ベースのオブジェクト モデルを操作できるようになります。.NET Framework 3.5 を対象とするソリューションを実行するには、エンド ユーザーのコンピューターにこれらの PIA が存在する必要があります。

  4. [プロジェクト] メニューの [SmartTagAddIn_Office2007_NET35 のプロパティ] をクリックしてプロジェクト デザイナーを表示します。

  5. [発行] タブをクリックします。

  6. [必須コンポーネント] をクリックします。[Microsoft Office 2007 Primary Interop Assemblies] と [Microsoft Visual Studio 2010 Tools for Office Runtime (x86 and x64)] がオンになっています (図 5 を参照)。

    図 5. このソリューションの実行に必要な Office 2007 PIA と VSTO 2010 ランタイム


    Office 2007 の PIA と VSTO ランタイム

    ユーザーのコンピューターに既に .NET Framework 3.5 がある場合は、Office 2007 の完全インストールによって PIA がインストールされます。PIA がない場合には、ソリューションのセットアップ ルーチンによってダウンロードおよびインストールします。

    Office 2007 をインストールするだけでは Visual Studio Tools for Office 2010 Runtime はインストールされません。これをインストールする必要があります。これがない場合には、ソリューションのセットアップ ルーチンによってダウンロードおよびインストールします。

  7. [キャンセル] をクリックして [必須コンポーネント] ダイアログ ボックスを閉じます。

バージョン 2: .NET Framework 4 を対象とする Office 2007 ソリューション

  1. Visual Studio 2010 で、SmartTagAddIn_Office2007_NET4.sln というサンプル プロジェクトを読み込みます。

  2. Visual Basic を使用する場合は、ソリューション エクスプローラーの [すべてのファイルを表示] をクリックします。

  3. ソリューション エクスプローラーの [参照設定] ノードを展開します。

  4. Microsoft.Office.Interop.SmartTag を選択します。

    .NET Framework 4 には、COM 型の型情報をマネージ アセンブリに直接埋め込める新機能があります。ただし、埋め込めるのはマネージ アセンブリで使用する型とメンバーのみです。

    図 6 のように、SmartTag PIA の [相互運用機能型の埋め込み] プロパティは True に設定されています。この型情報は SmartTagAddIn_Office2007_NET4 アセンブリに埋め込まれるので、PIA をユーザーのコンピューターにインストールする必要はありません。

    図 6. SmartTags の COM 型は Word アドイン アセンブリに埋め込まれる


    スマート タグの COMN の種類

  5. Microsoft.Office.Interop.Word を選択します。この PIA の [相互運用機能型の埋め込み] プロパティは True に設定されています。

  6. [プロジェクト] メニューの [SmartTagAddIn_Office2007_NET4 のプロパティ] をクリックしてプロジェクト デザイナーを表示します。

  7. [発行] タブをクリックします。

  8. [必須コンポーネント] をクリックします。[Microsoft Office 2007 Primary Interop Assemblies] はオフになっています (図 7 を参照)。[Microsoft Visual Studio 2010 Tools for Office Runtime (x86 and x64)] はオンになっているので、コンピューターにない場合はインストールする必要があります。

    図 7. .NET Framework 4 を対象とするソリューションでは Office 2007 PIA は必須コンポーネントではない


    Office 2007 の前提条件

  9. [Microsoft .NET Framework 4 Client Profile (x86 and x64)] もオンになっています。

    .NET Framework 4 Client Profile は .NET Framework 4 のサブセットであり、クライアント アプリケーション用に最適化されています。Windows Presentation Foundation (WPF)、Windows フォーム、Windows Communication Foundation (WCF)、ClickOnce 機能など、ほとんどのクライアント アプリケーション向け機能を備えています。これを使用すると, .NET Framework 4 Client Profile を対象とするアプリケーションの展開を高速化でき、インストール パッケージを小さくできます。

  10. [キャンセル] をクリックして [必須コンポーネント] ダイアログ ボックスを閉じます。

  11. Visual Basic を使用する場合、プロジェクト デザイナーの [コンパイル] タブをクリックします。[詳細コンパイル オプション] をクリックします。[コンパイラの詳細設定] ダイアログ ボックスの [対象のフレームワーク] ドロップダウン リストで、[.NET Framework 4 Client Profile] がオンになっていることを確認してください。[キャンセル] をクリックして [コンパイラの詳細設定] ダイアログ ボックスを閉じます。

  12. Visual C# を使用する場合は、プロジェクト デザイナーの [アプリケーション] タブをクリックします。[対象のフレームワーク] ドロップダウン リストで、[.NET Framework 4 Client Profile] がオンになっていることを確認してください。

    既定では, .NET Framework 4 を対象とする Office ソリューションを Visual Studio で作成すると, .NET Framework 4 Client Profile が対象になります。Client Profile に含まれていない .NET Framework のパーツを使用する場合は、[対象のフレームワーク] ドロップダウン リストで .NET Framework 4 を選択します。

バージョン 3: .NET Framework 3.5 を対象とする Office 2010 ソリューション

  1. Visual Studio 2010 で、SmartTagAddIn_Office2010_NET35.sln というサンプル プロジェクトを読み込みます。

  2. Visual Basic を使用する場合は、ソリューション エクスプローラーの [すべてのファイルを表示] をクリックします。

  3. ソリューション エクスプローラーの [参照設定] ノードを展開します。

    Microsoft.Office.Interop.SmartTag および Microsoft.Office.Interop.Word は、前の 2 つのプロジェクトで使用した相互運用機能アセンブリの Office 2010 版です。

  4. [プロジェクト] メニューの [SmartTagAddIn_Office2010_NET35 のプロパティ] をクリックしてプロジェクト デザイナーを表示します。

  5. [発行] タブをクリックします。

  6. [必須コンポーネント] をクリックします。現在、Microsoft Office 2010 相互運用機能アセンブリの項目はありません。また、[Microsoft Visual Studio 2010 Tools for Office Runtime (x86 and x64)] がオフになっていることも確認してください (図 8 を参照)。

    図 8. このソリューションの必須コンポーネントとして VSTO 2010 ランタイムは不要


    Office 2010 の前提条件

    ユーザーのコンピューターに既に .NET Framework 3.5 がある場合は、Office 2010 をインストールすると PIA がインストールされます。PIA がない場合には、ソリューションのセットアップ ルーチンによってダウンロードおよびインストールします。Office 2010 のリリース後は、Microsoft Web サイトから PIA をダウンロードできるようになります。セットアップ ルーチンで PIA をダウンロードおよびインストールするには、[必須コンポーネント] ダイアログ ボックスのリストにこれらを追加する必要があります。追加するには、ブートストラップ パッケージを作成します。詳細については、「Creating Bootstrapper Packages」を参照してください。

    .NET Framework 3.5 が既にインストールされているコンピューターにユーザーが Office 2010 をインストールすると、Visual Studio 2010 Tools for Office Runtime と共に, .NET Framework 3.5 用の Office 拡張機能もインストールされます。これらの拡張機能は、バージョン 3.5 の .NET Framework を対象とするカスタマイズの実行に必要なコンポーネントです。

  7. [キャンセル] をクリックして [必須コンポーネント] ダイアログ ボックスを閉じます。

バージョン 4: .NET Framework 4 を対象とする Office 2010 ソリューション

  1. Visual Studio 2010 で、SmartTagAddIn_Office2010_NET4.sln というサンプル プロジェクトを読み込みます。

  2. Visual Basic を使用する場合は、ソリューション エクスプローラーの [すべてのファイルを表示] をクリックします。

  3. ソリューション エクスプローラーの [参照設定] ノードを展開します。

  4. Microsoft.Office.Interop.SmartTag を選択します。この PIA の [相互運用機能型の埋め込み] プロパティは True に設定されています。

  5. Microsoft.Office.Interop.Word を選択します。この PIA の [相互運用機能型の埋め込み] プロパティは True に設定されています。

  6. [プロジェクト] メニューの [SmartTagAddIn_Office2010_NET4 のプロパティ] をクリックしてプロジェクト デザイナーを表示します。

  7. [発行] タブをクリックします。

  8. [必須コンポーネント] をクリックします。[Microsoft .NET Framework 4 Client Profile (x86 and x64)] がオンになっていることを確認してください。前の場合と同様, .NET Framework 4 を対象とする Office ソリューションを Visual Studio で作成すると、既定で .NET Framework 4 Client Profile が対象となります。

  9. 現在、Microsoft Office 2010 相互運用機能アセンブリの項目はありません。また、[Microsoft Visual Studio 2010 Tools for Office Runtime (x86 and x64)] がオフになっていることも確認してください (図 9 を参照)。

    図 9. 既定では VSTO 2010 ランタイムはこのソリューションの必須コンポーネントにならない


    VSTO 2010 ランタイムの前提条件

    前の場合と同様、既定では, .NET Framework 4 を対象とするソリューションでユーザーのコンピューターに PIA をインストールする必要はありません。型とメンバーはソリューションのマネージ アセンブリに埋め込まれます。

    .NET Framework 4 がインストールされているコンピューターに Office 2010 をインストールすると、Visual Studio 2010 Tools for Office Runtime もインストールされます。ただし、既定では、Office 2010 のインストールに .NET Framework 4 用の Office 拡張機能は含まれません。これらの拡張機能は、バージョン 4 の .NET Framework を対象とするカスタマイズの実行に必要なコンポーネントです。したがって、[必須コンポーネント] ダイアログ ボックスで [Microsoft Visual Studio 2010 Tools for Office Runtime (x86 and x64)] をオンにする必要があります。これによって、セットアップ ルーチンで Visual Studio ランタイムが再インストールされ、Office 拡張機能もインストールされるようになります。

  10. [キャンセル] をクリックして [必須コンポーネント] ダイアログ ボックスを閉じます。

  11. Visual Basic を使用する場合、プロジェクト デザイナーの [コンパイル] タブをクリックします。[詳細コンパイル オプション] をクリックします。[コンパイラの詳細設定] ダイアログ ボックスの [対象のフレームワーク] ドロップダウン リストで、[.NET Framework 4 Client Profile] がオンになっていることを確認してください。[キャンセル] をクリックして [コンパイラの詳細設定] ダイアログ ボックスを閉じます。

  12. Visual C# を使用する場合は、プロジェクト デザイナーの [アプリケーション] タブをクリックします。[対象のフレームワーク] ドロップダウン リストで、[.NET Framework 4 Client Profile] がオンになっていることを確認してください。

ソリューションを発行およびインストールするには

  1. Visual Studio で、[ビルド] メニューの [ソリューションのクリーン] をクリックします。

  2. プロジェクト デザイナーの [発行] タブをクリックします。

    図 10. プロジェクト デザイナーの [発行] タブを使用して Office ソリューションを発行する


    ソリューションの発行

  3. [発行フォルダーの場所] ボックスに、アプリケーションの発行場所を入力します。

  4. [今すぐ発行] をクリックしてソリューションを発行します。

  5. エクスプローラーで、発行フォルダーに移動します。

    図 11. 発行フォルダーの内容


    発行フォルダーの内容

    発行フォルダーには、ドキュメントとセットアップ プログラムが含まれています。また、配置マニフェスト (SmartTagAddIn_Office2010_NET4.vsto) も含まれています。このファイルには、アプリケーションの展開方法が記述されています。ここには、アプリケーション マニフェストの場所や、クライアントが実行するアプリケーションのバージョンも記述されています。

  6. Application Files フォルダーをダブルクリックします。このフォルダーには SmartTagAddIn_Office2010_NET4_1_0_0_0 フォルダーが含まれています。このフォルダーには、ソリューションのバージョン 1.0.0.0 のインストールに必要なファイルが含まれています。

  7. SmartTagAddIn_Office2010_NET4_1_0_0_0 フォルダーをダブルクリックします。

    図 12. SmartTagAddIn_Office2010_NET4_1_0_0_0 フォルダーの内容


    フォルダーの内容

    このフォルダーには、カスタマイズ アセンブリ (SmartTagAddIn_Office2010_NET4.dll.deploy) および ThisAddIn クラスと Ribbon クラスの基本クラスが含まれるアセンブリ (Microsoft.Office.Tools.Common.v4.0.Utilities.dll.deploy) が含まれています。また、配置マニフェスト (SmartTagAddIn_Office2010_NET4.vsto) およびアプリケーション マニフェスト (SmartTagAddIn_Office2010_NET4.dll.manifest) も含まれています。

手順

Visual Studio を使用して Office ソリューションをビルドした後、それをエンド ユーザーに展開する前に、必要なソフトウェアがエンド ユーザーのコンピューターにインストールされていることを確認する必要があります。幸い、必須コンポーネントは多くありません。.NET Framework と Visual Studio 2010 Tools for Office Runtime、そして、使用する Office のバージョンに応じた相互運用機能アセンブリまたは .NET Framework 用 Office 拡張です。[必須コンポーネント] ダイアログ ボックスを使用すると、これらを確認できます。

ビデオ

ビデオの視聴

ビデオを見る (英語)

クリックしてコードを取得

コードを取得する (英語)

ビデオの長さ: 10:32

ファイル サイズ: 13.9 MB WMV

関連情報

著者について

Robert Green 氏は、開発者であり、執筆者やトレーナーとしても活動しています。また、MCW Technologies (英語) のシニア コンサルタントを務めています。Visual Studio Tools for the Office system の MVP であり、Microsoft Visual Basic、Microsoft Visual C#、LINQ、および Microsoft Windows Workflow Foundation 向けの AppDev コースウェアの共同制作者でもあります。MCW に加わる前は、マイクロソフトでプロダクト マネージャーやプログラム マネージャーを務めていました。