Visual Studio のツール for Office runtime の概要Visual Studio Tools for Office runtime overview

Visual Studio で Microsoft Office developer tools を使用して作成されたソリューションを実行するには、するには、エンドユーザーのコンピューターに、Visual Studio 2010 Tools for Office ランタイムをインストールする必要があります。To run solutions that are created by using the Microsoft Office developer tools in Visual Studio, the Visual Studio 2010 Tools for Office runtime must be installed on end-user computers. 詳細については、「方法 :Visual Studio Tools for Office ランタイム再頒布可能パッケージをインストールします。For more information, see How to: Install the Visual Studio Tools for Office runtime redistributable. Visual Studio 2010 Tools for Office ランタイムは、2 つの主要なコンポーネントで構成されます。The Visual Studio 2010 Tools for Office runtime consists of two main components:

  • .NET Framework 用の Office 拡張機能。The Office extensions for the .NET Framework. これらのコンポーネントは、ソリューションと Microsoft Office アプリケーションの間の通信レイヤーとなるマネージド アセンブリです。These components are managed assemblies that provide the communication layer between your solution and the Microsoft Office application. 詳細については、次を参照してください。 .NET Framework 用の Office 拡張機能を理解するします。For more information, see Understand the Office extensions for the .NET Framework.

  • Office ソリューション ローダー。The Office solution loader. このコンポーネントは、Office アプリケーションがランタイムおよびソリューションの読み込みに使用する一連のアンマネージ DLL です。This component is a set of unmanaged DLLs that Office applications use to load the runtime and your solutions. 詳細については、次を参照してください。 Office ソリューション ローダーについて理解します。For more information, see Understand the Office solution loader.

    ランタイムをインストールする方法はいくつかあります。The runtime can be installed in several different ways. ランタイムをインストールするときには、コンピューターの構成に応じて異なるランタイム コンポーネントがインストールされます。Depending on the configuration of the computer, different runtime components are installed when you install the runtime. 詳細については、Visual Studio Tools for Office runtime のインストール シナリオを参照してください。For more information, see Visual Studio Tools for Office runtime installation scenarios.

.NET Framework 用の Office 拡張機能を理解します。Understand the Office extensions for the .NET Framework

Visual Studio 2010 Tools for Office ランタイムには、.NET Framework 3.5 用の Office 拡張機能が含まれています、.NET Framework 4.NET Framework 4以降。The Visual Studio 2010 Tools for Office runtime includes Office extensions for the .NET Framework 3.5, the .NET Framework 4.NET Framework 4 and later. .NET Framework の各バージョンを対象とするソリューションでは、そのバージョンに適した拡張機能が使用されます。Solutions that target each version of the .NET Framework use the appropriate extensions for that version.

これらの拡張機能は、ソリューションが Office アプリケーションの自動化および拡張に使用するアセンブリで構成されています。These extensions consist of assemblies that your solutions use to automate and extend Office applications. Office プロジェクトを作成すると、Visual Studio によって、そのプロジェクト タイプおよびプロジェクトの対象 .NET Framework に使用するアセンブリへの参照が自動的に追加されます。When you create an Office project, Visual Studio automatically adds references to the assemblies that are used for the project type and the target .NET Framework of the project. Office 拡張機能アセンブリの詳細については、次を参照してください。 、Visual Studio Tools for Office ランタイムのアセンブリします。For more information about the assemblies in the Office extensions, see Assemblies in the Visual Studio Tools for Office runtime.

Office 拡張機能の設計の相違点Design differences in the Office extensions

.NET Framework 3.5 用の Office 拡張機能で使用する型の大部分は、クラスです。Most of the types that you use in the Office extensions for the .NET Framework 3.5 are classes. これらのクラスは、以前のバージョンの Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtimeに含まれていたクラスと同じです。These are the same classes that were included in previous versions of the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime. これに対して、 .NET Framework 4.NET Framework 4 以降用の Office 拡張機能で使用する型の大部分は、インターフェイスです。In contrast, most of the types that you use in the Office extensions for the .NET Framework 4.NET Framework 4 or later are interfaces. たとえば、 .NET Framework 4.NET Framework 4 以降を対象とする場合、 WorksheetDocument の型はクラスではなくインターフェイスです。For example, when you target the .NET Framework 4.NET Framework 4 or later, the Worksheet and Document types are interfaces instead of classes.

ほとんどの場合、ソリューションが .NET Framework 3.5 を対象とするかまたは .NET Framework 4.NET Framework 4を対象とするかに関係なく、Office ソリューションで記述するコードは同じです。In most cases, the code you write in Office solutions is the same whether your solution targets the .NET Framework 3.5 or the .NET Framework 4.NET Framework 4. ただし、一部の機能については、対象となる .NET Framework のバージョンが異なる場合に別のコードが必要になります。However, certain features require different code when you target different versions of the .NET Framework. 詳細については、次を参照してください。以降、.NET Framework 4 への移行 Office ソリューションします。For more information, see Migrate Office solutions to the .NET Framework 4 or later.

.NET Framework 4 またはそれ以降の Office 拡張機能インターフェイスInterfaces in the Office extensions for the .NET Framework 4 or later

.NET Framework 4.NET Framework 4 以降用の Office 拡張機能に含まれるインターフェイスの大部分は、ユーザー コードで実装されることを意図していません。Most of the interfaces in the Office extensions for the .NET Framework 4.NET Framework 4 or later are not intended to be implemented by user code. 直接実装できるインターフェイスは、 Iという文字で始まる名前の付いたインターフェイスです。たとえば、 ISmartTagExtensionなどです。The only interfaces you can implement directly have names that begin with the letter I, such as ISmartTagExtension.

文字で始まらないすべてのインターフェイスVisual Studio 2010 Tools for Office runtime、によって内部的に実装されると、これらのインターフェイスが将来のリリースで変更があります。All interfaces that do not begin with the letter I are implemented internally by the Visual Studio 2010 Tools for Office runtime, and these interfaces might change in future releases. これらのインターフェイスを実装するオブジェクトを作成するには、プロジェクトで Globals.Factory オブジェクトによって提供されるメソッドを使用します。To create objects that implement these interfaces, use methods provided by the Globals.Factory object in your project. たとえば、SmartTag インターフェイスを実装するオブジェクトを取得するには、Globals.Factory.CreateSmartTag メソッドを使用します。For example, to get an object that implements the SmartTag interface, use the Globals.Factory.CreateSmartTag method. 詳細についてはGlobals.Factoryを参照してくださいOffice プロジェクト内のオブジェクトへのアクセスをグローバルします。For more information about Globals.Factory, see Global access to objects in Office projects.

型の等価性と埋め込まれた型を .NET Framework 4 以降を対象とするプロジェクトで有効にします。Enable type equivalence and embedded types in projects that target the .NET Framework 4 or later

.NET Framework 4.NET Framework 4 以降用の Office 拡張機能のオブジェクト モデルはインターフェイスに基づいているため、Visual Studio の Visual C# および Visual Basic の両方で、型の等価性の機能を使用して Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime から取得した型情報をソリューションに埋め込むことができます。Because the object model of the Office extensions for the .NET Framework 4.NET Framework 4 or later are based on interfaces, you can use the type equivalence feature in both Visual C# and Visual Basic in Visual Studio to embed type information from the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime into your solution. この機能によって、Office ソリューションおよび Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime が、それぞれ独立してバージョン管理できるようになります。This feature enables Office solutions and the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime to version independently of each other. たとえば、ソリューションで Document インターフェイスを埋め込み型として使用し、ランタイムの次のバージョンによって Document インターフェイスにメンバーが追加される場合でも、そのソリューションは引き続きランタイムの次のバージョンで機能します。For example, if your solution uses the Document interface as an embedded type and the next version of the runtime adds members to the Document interface, your solution will still work with the next version of the runtime. ソリューションで Document インターフェイスを埋め込み型として使用しない場合、そのソリューションはランタイムの次のバージョンで機能しません。If your solution does not use the Document interface as an embedded type, then your solution will no longer work with the next version of the runtime.

既定では、 .NET Framework 4.NET Framework 4 以降を対象とする Office プロジェクトを作成するときに、型の等価性の機能は有効になりません。By default, the type equivalence feature is not enabled when you create an Office project that targets the .NET Framework 4.NET Framework 4 or later. この機能を有効にするには、プロジェクト内の次のアセンブリ参照の 相互運用型の埋め込み プロパティを Trueに設定します。If you want to enable this feature, set the Embed Interop Types property of any of the following assembly references in your project to True:

  • Microsoft.Office.Tools.dllMicrosoft.Office.Tools.dll

  • Microsoft.Office.Tools.Common.dllMicrosoft.Office.Tools.Common.dll

  • Microsoft.Office.Tools.Excel.dllMicrosoft.Office.Tools.Excel.dll

  • Microsoft.Office.Tools.Outlook.dllMicrosoft.Office.Tools.Outlook.dll

  • Microsoft.Office.Tools.Word.dllMicrosoft.Office.Tools.Word.dll

    この変更を加えると、プロジェクトをビルドするときに、プロジェクトが使用するすべてのランタイム型の型情報が、ソリューション アセンブリに埋め込まれます。After you make this change, type information for all of the runtime types used by the project is embedded into the solution assembly when you build the project. 参照先のアセンブリで型情報ではなく、この埋め込み型情報は、実行時に、ソリューションによって使用されます。This embedded type information, rather than the type information in the referenced assemblies, are used by the solution at runtime.

Office ソリューション ローダーを理解します。Understand the Office solution loader

Visual Studio Tools for Office Runtime には、Office アプリケーションがランタイムおよび Office ソリューションの読み込みに使用する複数のアンマネージ DLL が含まれています。The Visual Studio Tools for Office runtime includes several unmanaged DLLs that Office applications use to load the runtime and Office solutions. これらの DLL を直接操作する必要が生じることはありませんが、その目的を把握しておくと、Office ソリューションのアーキテクチャについて理解を深めるうえで役に立ちます。Although you should never have to work with these DLLs directly, knowing the purposes of these DLLs can help you better understand the architecture of Office solutions.

読み込みプロセス中にこれらのコンポーネントを使用する方法については、次を参照してください。のドキュメント レベル カスタマイズのアーキテクチャArchitecture of VSTO アドインします。For information about how these components are used during the load process, see Architecture of document-level customizations and Architecture of VSTO Add-ins.

vstoee.dllVSTOEE.dll

Office アプリケーションを呼び出すユーザーは、ドキュメント レベルのカスタマイズが表示されます、VSTO アドインを起動したり、 VSTOEE.dll読み込みに必要なタスクを実行する、Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtimeします。When a user opens a document-level customization or starts a VSTO Add-in, the Office application calls into VSTOEE.dll to perform the tasks required to load the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime.

VSTOEE.dllための正しいバージョン、Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtimeソリューションと Office のインストールされているバージョンに読み込まれます。VSTOEE.dll makes sure that the correct version of the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime is loaded for the solution and the installed version of Office. 複数のバージョンのVisual Studio Tools for Office RuntimeVisual Studio Tools for Office runtimeのインスタンスを 1 つだけ、同じコンピューターにインストールできますVSTOEE.dllを同時にインストールします。Although multiple versions of the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime can be installed on the same computer, only one instance of VSTOEE.dll is installed at a time. これは、 VSTOEE.dllですが、コンピューターにインストールされているランタイムの最新バージョンに含まれています。This is the VSTOEE.dll that was included with the latest version of the runtime installed on the computer. 異なるバージョンの詳細については、Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtimeの他のソリューションで使用できますを参照してくださいで異なるバージョンの Microsoft Office ソリューションを実行します。For more information about the different versions of the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime that can be used for other solutions, see Run solutions in different versions of Microsoft Office.

VSTOLoader.dllVSTOLoader.dll

VSTOEE.dllの適切なバージョンを読み込、 Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtimeVSTOLoader.dllソリューション アセンブリの読み込みに必要な作業のほとんどを実行します。After VSTOEE.dll loads the appropriate version of the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime, VSTOLoader.dll performs most of the work that is required to load the solution assembly. VSTOLoader.dllいくつかの操作します。VSTOLoader.dll does several things:

  • ソリューション アセンブリごとにアプリケーション ドメインを作成します。It creates an application domain for each solution assembly.

  • 一連のセキュリティ チェックによって、ソリューション アセンブリに実行のアクセス許可があることを確認します。It performs a set of security checks to verify that the solution assembly has permission to run.

  • ソリューションに必要な .NET Framework 用のバージョンの Office 拡張機能を読み込みます。It loads the version of the Office extensions for the .NET Framework that is required by the solution.

    VSTOLoader.dllも VSTO アドインに固有のいくつかの処理を行います。VSTOLoader.dll also does several things that are specific to VSTO Add-ins:

  • IDTExtensibility2 インターフェイスを実装します。It implements the IDTExtensibility2 interface. IDTExtensibility2 は、Microsoft Office アプリケーションのすべての VSTO アドインが実装する必要のある COM インターフェイスです。IDTExtensibility2 is a COM interface that all VSTO Add-ins for Microsoft Office applications must implement. このインターフェイスには、アプリケーションが VSTO アドインと通信するために呼び出すメソッドが定義されています。This interface defines methods that the application calls to communicate with the VSTO Add-in.

  • IManagedAddin インターフェイスを実装します。It implements the IManagedAddin interface. このインターフェイスは、Office アプリケーションで VSTO アドインの読み込みに使用されます。詳細については、次を参照してください。 IManagedAddin インターフェイスします。This interface is used by Office applications to help load VSTO Add-ins. For more information, see IManagedAddin interface.

32 ビットおよび 64 ビット バージョンのランタイムを理解します。Understand the 32-bit and 64-bit versions of the runtime

Visual Studio 2010 Tools for Office ランタイムの別の 64 ビットおよび 32 ビット バージョンがあります。There are separate 64-bit and 32-bit versions of the Visual Studio 2010 Tools for Office runtime. ランタイムのこれらのバージョンは、64 ビット エディションおよび 32 ビット エディションの Office でソリューションを実行するのに使用されます。These versions of the runtime are used to run solutions in 64-bit and 32-bit editions Office. 次の表は、Windows と Office のそれぞれの組み合わせで必要とされる、ランタイムのバージョンを示しています。The following table shows which version of the runtime is required for each combination of Windows and Office.

Windows のエディションEdition of Windows Microsoft Office のエディションEdition of Microsoft Office Visual Studio Tools for Office Runtime のバージョン番号Required version of the Visual Studio Tools for Office runtime
32 ビット32-bit 32 ビット32-bit 32 ビット32-bit
64 ビット64-bit 32 ビット32-bit 64 ビット64-bit
64 ビット64-bit 64 ビット64-bit 64 ビット64-bit

Office をインストールするときに、必要なバージョンの Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime が Office と共にインストールされます。When you install Office, the required version of the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime is installed along with Office. たとえば、64 ビット エディションの Office を 64 ビット バージョンの Windows にインストールすると、64 ビット バージョンの Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime もインストールされます。For example, when you install the 64-bit edition of Office on a 64-bit version of Windows, the 64-bit version of the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime is also installed. インストールの詳細については、 Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime office では、次を参照してください。 Visual Studio Tools for Office runtime のインストール シナリオします。For more information about installing the Visual Studio Tools for Office RuntimeVisual Studio Tools for Office runtime with Office, see Visual Studio Tools for Office runtime installation scenarios.

64 ビット バージョンの Office は、Visual Studio 2008 で 2007 Microsoft Office system 用のプロジェクト テンプレートを使用して作成された Office ソリューションも実行できます。The 64-bit version of Office can also run Office solutions that were created by using project templates for the 2007 Microsoft Office system in Visual Studio 2008. ただし、Visual Studio 2008 で Microsoft Office 2003 用のプロジェクト テンプレートを使用して作成された Office ソリューションや、Visual Studio 2005 を使用して作成された Office ソリューションは実行できません。However, it cannot run Office solutions created by using project templates for Microsoft Office 2003 in Visual Studio 2008, or Office solutions created by using Visual Studio 2005. 詳細については、次を参照してください。で異なるバージョンの Microsoft Office ソリューションを実行します。For more information, see Run solutions in different versions of Microsoft Office.

Visual Studio 2010 Tools for Office ランタイムを修復します。Repair the Visual Studio 2010 Tools for Office runtime

ランタイムを修復する必要がある場合は、[コントロール パネル] の [プログラムと機能] または [プログラムの追加と削除] を開き、プログラムの一覧から [Microsoft Visual Studio 2010 Tools for Office Runtime] をクリックし、 [アンインストール] をクリックします。If you need to repair the runtime, open Programs and Features or Add or Remove Programs in the Control Panel, select Microsoft Visual Studio 2010 Tools for Office Runtime in the list of programs, and then click Uninstall. 実行されるセットアップ プログラムを使用して、ランタイムを修復できます。The setup program that runs enables you to repair the runtime. [変更] をクリックした場合、ランタイムを修復するオプションは表示されません。If you click Change, you are not given an option for repairing the runtime.

関連項目See also