Udostępnij przez


Używanie struktury pakietów zarządzanych do implementowania typu projektu (C#)

Program Managed Package Framework (MPF) udostępnia klasy języka C#, z których można korzystać lub dziedziczyć w celu zaimplementowania własnych typów projektów. MPF implementuje wiele interfejsów, których Visual Studio oczekuje od typu projektu, co pozwala skoncentrować się na implementacji szczegółów swojego typu projektu.

Korzystanie z kodu źródłowego projektu MPF

Program Managed Package Framework for Projects (MPFProj) udostępnia klasy pomocnika do tworzenia nowego systemu projektu i zarządzania nim. W przeciwieństwie do innych klas w programie MPF klasy projektów nie są uwzględniane w zestawach dostarczanych z programem Visual Studio. Zamiast tego klasy projektów są udostępniane jako kod źródłowy w programie MPF dla projektów 2013.

Aby dodać ten projekt do rozwiązania VSPackage, wykonaj następujące czynności:

  1. Pobierz pliki MPFProj do MPFProjectDir.

  2. W pliku MPFProjectDir\Dev10\Src\CSharp\ProjectBase.file zmień następujący blok:

    <!-- Provide a default value for $(ProjectBasePath) -->
    <PropertyGroup>
      <ProjectBasePath >MPFProjDir\Dev10\Src\CSharp</ProjectBasePath>
    </PropertyGroup>
    
  3. Utwórz projekt VSPackage.

  4. Wyładuj projekt VSPackage.

  5. Edytuj plik .csproj pakietu VSPackage, dodając następujący blok przed innymi <Import> blokami:

    <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. Zapisz projekt.

  7. Zamknij i otwórz ponownie rozwiązanie VSPackage.

  8. Otwórz ponownie projekt VSPackage. Powinien zostać wyświetlony nowy katalog o nazwie ProjectBase.

  9. Dodaj następujące odwołanie do projektu VSPackage:

    Microsoft.Build.Tasks.4.0
    
  10. Skompiluj projekt.

Klasy hierarchii

W poniższej tabeli podsumowano klasy w pliku MPFProj, które obsługują hierarchie projektów. Aby uzyskać więcej informacji, zobacz Hierarchie w programie Visual Studio.

Nazwa klasy
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

Klasy Obsługi Dokumentów

W poniższej tabeli wymieniono klasy w programie MPF, które obsługują obsługę dokumentów. Aby uzyskać więcej informacji, zobacz Otwieranie i zapisywanie elementów projektu.

Nazwa klasy
Microsoft.VisualStudio.Package.DocumentManager
Microsoft.VisualStudio.Package.FileDocumentManager

Klasy konfiguracji i danych wyjściowych

W poniższej tabeli wymieniono klasy w programie MPF, które umożliwiają typom projektów obsługę wielu konfiguracji, takich jak debugowanie i wydawanie, oraz kolekcje danych wyjściowych projektu. Aby uzyskać więcej informacji, zobacz Zarządzanie opcjami konfiguracji.

Nazwa klasy
Microsoft.VisualStudio.Package.ConfigProvider
Microsoft.VisualStudio.Package.ProjectConfig
Microsoft.VisualStudio.Package.BuildableProjectConfig
Microsoft.VisualStudio.Package.OutputGroup
Microsoft.VisualStudio.Package.ProjectElement

Klasy wspomagające automatyzację

W poniższej tabeli wymieniono klasy w programie MPF, które obsługują automatyzację, dzięki czemu użytkownicy typu projektu mogą zapisywać dodatki.

Nazwa klasy
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

Klasy właściwości

W poniższej tabeli wymieniono klasy w programie MPF, które umożliwiają typom projektów dodawanie właściwości, które użytkownicy mogą przeglądać i modyfikować w przeglądarce właściwości.

Nazwa klasy
Microsoft.VisualStudio.Package.LocalizableProperties
Microsoft.VisualStudio.Package.NodeProperties
Microsoft.VisualStudio.Package.FileNodeProperties
Microsoft.VisualStudio.Package.ProjectNodeProperties
Microsoft.VisualStudio.Package.FolderNodeProperties
Microsoft.VisualStudio.Package.ReferenceNodeProperties