Utilisation de l’infrastructure de package gérée pour implémenter un type de projet (C#)Using the Managed Package Framework to Implement a Project Type (C#)

Managed Package Framework (MPF) fournit les classes c# vous pouvez utiliser ou hériter pour implémenter vos propres types de projet.The Managed Package Framework (MPF) provides C# classes you can use or inherit from to implement your own project types. MPF implémente la plupart des interfaces de que Visual Studio attend un type de projet pour fournir, en vous laissant permettant de vous concentrer sur l’implémentation de l’exactitude de votre type de projet.The MPF implements many of the interfaces Visual Studio expects a project type to provide, leaving you free to concentrate on implementing the particulars of your project type.

En utilisant le Code Source du projet MPFUsing the MPF Project Source Code

Managed Package Framework pour les projets (MPFProj) fournit des classes d’assistance pour créer et gérer le nouveau système de projet.The Managed Package Framework for Projects (MPFProj) provides helper classes for creating and managing new project system. Contrairement aux autres classes dans le MPF, les classes du projet ne sont pas inclus dans les assemblys fournis avec Visual Studio.Unlike other classes in the MPF, the project classes are not included in the assemblies shipped with Visual Studio. Au lieu de cela, les classes du projet sont fournis en tant que code source à MPF de projets 2013.Instead, the project classes are provided as source code at MPF for Projects 2013.

Pour ajouter ce projet à votre solution VSPackage, procédez comme suit :To add this project to your VSPackage solution, do the following:

  1. Télécharger les fichiers MPFProj à MPFProjectDir.Download the MPFProj files to MPFProjectDir.

  2. Dans le MPFProjectDir\Dev10\Src\CSharp\ProjectBase.file, modifiez le bloc suivant :In the MPFProjectDir\Dev10\Src\CSharp\ProjectBase.file, change the following block:

<!-- Provide a default value for $(ProjectBasePath) -->  
  <PropertyGroup>  
    <ProjectBasePath >MPFProjDir\Dev10\Src\CSharp</ProjectBasePath>  
  </PropertyGroup>  
  1. Créez un projet VSPackage.Create a VSPackage project.

  2. Décharger le projet VSPackage.Unload the VSPackage project.

  3. Modifier le fichier .csproj VSPackage en ajoutant le bloc suivant avant les autres <Import> blocs :Edit the VSPackage .csproj file by adding the following block before the other <Import> blocks:

<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>  
  1. Enregistrez le projet.Save the project.

  2. Fermez et rouvrez la solution VSPackage.Close and reopen the VSPackage solution.

  3. Rouvrez le projet VSPackage.Reopen the VSPackage project. Vous devriez voir un répertoire nommé ProjectBase.You should see a new directory named ProjectBase.

  4. Ajoutez la référence suivante au projet VSPackage :Add the following reference to the VSPackage project:

    Microsoft.Build.Tasks.4.0Microsoft.Build.Tasks.4.0

  5. Générez le projet.Build the project.

Hiérarchie des ClassesHierarchy Classes

Le tableau suivant récapitule les classes dans le MPFProj qui prennent en charge des hiérarchies de projet.The following table summarizes the classes in the MPFProj that support project hierarchies. Pour plus d’informations, consultez hiérarchies et sélection.For more information, see Hierarchies and Selection.

Nom de classeClass name
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

Classes de gestion des documentsDocument-Handling Classes

Le tableau suivant répertorie les classes dans le MPF qui prennent en charge la gestion des documents.The following table lists the classes in the MPF that support document handling. Pour plus d’informations, consultez d’ouverture et de l’enregistrement des éléments de projet.For more information, see Opening and Saving Project Items.

Nom de classeClass name
Microsoft.VisualStudio.Package.DocumentManager
Microsoft.VisualStudio.Package.FileDocumentManager

Configuration et les Classes de sortieConfiguration and Output Classes

Le tableau suivant répertorie les classes dans le MPF qui permettent les types de projets prend en charge plusieurs configurations, telles que les versions debug et release et collections de sortie du projet.The following table lists the classes in the MPF that let project types support multiple configurations, such as debug and release, and collections of project output. Pour plus d’informations, consultez la gestion des Options de Configuration.For more information, see Managing Configuration Options.

Nom de classeClass name
Microsoft.VisualStudio.Package.ConfigProvider
Microsoft.VisualStudio.Package.ProjectConfig
Microsoft.VisualStudio.Package.BuildableProjectConfig
Microsoft.VisualStudio.Package.OutputGroup
Microsoft.VisualStudio.Package.ProjectElement

Classes de prise en charge AutomationAutomation-Support Classes

Le tableau suivant répertorie les classes dans le MPF qui prennent en charge d’automation afin que les utilisateurs de votre type de projet peuvent écrire des compléments.The following table lists the classes in the MPF that support automation so that users of your project type can write add-ins.

Nom de classeClass name
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

Classes de propriétésProperties Classes

Le tableau suivant répertorie les classes dans le MPF qui permettent les types de projets ajouter des propriétés que les utilisateurs peuvent parcourir et modifier dans un Explorateur de propriétés.The following table lists the classes in the MPF that let project types add properties that users can browse and modify in a property browser.

Nom de classeClass name
Microsoft.VisualStudio.Package.LocalizableProperties
Microsoft.VisualStudio.Package.NodeProperties
Microsoft.VisualStudio.Package.FileNodeProperties
Microsoft.VisualStudio.Package.ProjectNodeProperties
Microsoft.VisualStudio.Package.FolderNodeProperties
Microsoft.VisualStudio.Package.ReferenceNodeProperties