次の方法で共有


マネージド パッケージ フレームワークを使用したプロジェクト タイプの実装 (C#)

Managed Package Framework (MPF) には、独自のプロジェクトの種類を実装するために使用または継承できる C# クラスが用意されています。 Visual Studio からプロジェクトの種類に対して期待されるインターフェイスの多くが MPF に実装されているため、プロジェクトの種類の特定の部分の実装に集中することができます。

MPF プロジェクトのソース コードの使用

プロジェクト用 Managed Package Framework (MPFProj) には、新しいプロジェクト システムを作成および管理するためのヘルパー クラスが用意されています。 MPF の他のクラスとは異なり、プロジェクト クラスは Visual Studio に付属のアセンブリには含まれていません。 代わりに、プロジェクト クラスは MPF for Projects 2013 のソース コードとして用意されています。

このプロジェクトを VSPackage ソリューションに追加するには、次の手順を実行します。

  1. MPFProj ファイルを MPFProjectDir にダウンロードします。

  2. MPFProjectDir\Dev10\Src\CSharp\ProjectBase.file で、次のブロックを変更します。

    <!-- Provide a default value for $(ProjectBasePath) -->
    <PropertyGroup>
      <ProjectBasePath >MPFProjDir\Dev10\Src\CSharp</ProjectBasePath>
    </PropertyGroup>
    
  3. VSPackage プロジェクトを作成します。

  4. VSPackage プロジェクトをアンロードします。

  5. 他の <Import> ブロックの前に次のブロックを追加して、VSPackage.csproj ファイルを編集します。

    <Import Project="MPFProjectDir\Dev10\Src\CSharp\ProjectBase.files" />
      <PropertyGroup>
        <!--To specify a different registry root to register your package, uncomment the TargetRegistryRoot tag and specify a registry root in it.
        <TargetRegistryRoot></TargetRegistryRoot>-->
        <RegisterOutputPackage>true</RegisterOutputPackage>
        <RegisterWithCodebase>true</RegisterWithCodebase>
      </PropertyGroup>
    
  6. プロジェクトを保存します。

  7. VSPackage ソリューションを閉じて再度開きます。

  8. VSPackage プロジェクトを再度開きます。 ProjectBase という名前の新しいディレクトリが表示されます。

  9. VSPackage プロジェクトに次の参照を追加します。

    Microsoft.Build.Tasks.4.0
    
  10. プロジェクトをビルドします。

階層クラス

次の表は、プロジェクト階層をサポートする MPFProj のクラスをまとめたものです。 詳細については、「Visual Studio の階層」を参照してください

クラス名
Microsoft.VisualStudio.Package.HierarchyNode
Microsoft.VisualStudio.Package.ProjectNode
Microsoft.VisualStudio.Package.ProjectContainerNode
Microsoft.VisualStudio.Package.FileNode
Microsoft.VisualStudio.Package.FolderNode
Microsoft.VisualStudio.Package.ReferenceContainerNode
Microsoft.VisualStudio.Package.ReferenceNode
Microsoft.VisualStudio.Package.ProjectReferenceNode
Microsoft.VisualStudio.Package.ComReferenceNode
Microsoft.VisualStudio.Package.AssemblyReferenceNode
Microsoft.VisualStudio.Package.BuildDependency

ドキュメント処理クラス

次の表は、ドキュメント処理をサポートする MPF のクラスの一覧です。 詳細については、「プロジェクト項目のオープンと保存」を参照してください。

クラス名
Microsoft.VisualStudio.Package.DocumentManager
Microsoft.VisualStudio.Package.FileDocumentManager

構成と出力のクラス

次の表は、プロジェクトの種類で、デバッグやリリース、プロジェクト出力のコレクションなどの複数の構成をサポートできるようになる MPF のクラスの一覧です。 詳細については、「構成オプションの管理」を参照してください。

クラス名
Microsoft.VisualStudio.Package.ConfigProvider
Microsoft.VisualStudio.Package.ProjectConfig
Microsoft.VisualStudio.Package.BuildableProjectConfig
Microsoft.VisualStudio.Package.OutputGroup
Microsoft.VisualStudio.Package.ProjectElement

自動化サポート クラス

次の表は、プロジェクトの種類のユーザーがアドインを記述できるようにする自動化をサポートする MPF のクラスの一覧です。

クラス名
Microsoft.VisualStudio.Package.Automation.OAProject
Microsoft.VisualStudio.Package.Automation.OANavigableProjectItems
Microsoft.VisualStudio.Package.Automation.OAProjectItems
Microsoft.VisualStudio.Package.Automation.OAProjectItem
Microsoft.VisualStudio.Package.Automation.OANestedProjectItem

プロパティ クラス

次の表は、ユーザーがプロパティ ブラウザーで参照および変更できるプロパティをプロジェクトの種類に追加できるようにする MPF のクラスの一覧です。

クラス名
Microsoft.VisualStudio.Package.LocalizableProperties
Microsoft.VisualStudio.Package.NodeProperties
Microsoft.VisualStudio.Package.FileNodeProperties
Microsoft.VisualStudio.Package.ProjectNodeProperties
Microsoft.VisualStudio.Package.FolderNodeProperties
Microsoft.VisualStudio.Package.ReferenceNodeProperties