Udostępnij za pośrednictwem


Wewnątrz zestawu Visual Studio SDK

Ta sekcja zawiera szczegółowe informacje o rozszerzeniach programu Visual Studio, w tym o architekturze programu Visual Studio, składnikach, usługach, schematach, narzędziach itp.

Architektura rozszerzalności

Na poniższej ilustracji przedstawiono architekturę rozszerzalności programu Visual Studio. Pakiety VSPackage zapewniają funkcjonalność aplikacji, która jest udostępniana w środowisku IDE jako usługach. Standardowe środowisko IDE oferuje również szeroką gamę usług, takich jak SVsUIShell, które zapewniają dostęp do funkcji okien środowiska IDE.

Architektura środowiska - grafika

Uogólniony widok architektury programu Visual Studio

Pakiety VSPackage

Pakiety VSPackage to moduły oprogramowania tworzące i rozszerzające program Visual Studio za pomocą elementów interfejsu użytkownika, usług, projektów, edytorów i projektantów. VSPackages są centralną jednostką architektoniczną programu Visual Studio. Aby uzyskać więcej informacji, zobacz VSPackages.

Visual Studio Shell

Powłoka programu Visual Studio zapewnia podstawowe funkcje i obsługuje komunikację krzyżową między składnikami pakietów VSPackage i rozszerzeń MEF. Aby uzyskać więcej informacji, zobacz Visual Studio Shell.

Wskazówki dotyczące środowiska użytkownika

Jeśli planujesz zaprojektować nowe funkcje programu Visual Studio, zapoznaj się z tymi wytycznymi dotyczącymi projektowania i użyteczności porad: Wytyczne dotyczące środowiska użytkownika programu Visual Studio.

Komendy

Polecenia to funkcje, które wykonują zadania, takie jak drukowanie dokumentu, odświeżanie widoku lub tworzenie nowego pliku.

Gdy rozszerzasz Visual Studio, możesz tworzyć polecenia i rejestrować je w powłoce Visual Studio. Możesz określić, jak te polecenia będą wyświetlane w środowisku IDE, na przykład na menu lub pasku narzędzi. Zazwyczaj polecenie niestandardowe jest wyświetlane w menu Narzędzia , a polecenie do wyświetlania okna narzędzi jest wyświetlane w podmenu Inne okna systemu Windows w menu Widok .

Podczas tworzenia polecenia należy również utworzyć dla niego procedurę obsługi zdarzeń. Program obsługi zdarzeń określa, kiedy polecenie jest widoczne lub włączone, umożliwia modyfikowanie jego tekstu i gwarantuje, że polecenie odpowiada odpowiednio po aktywowaniu. W większości przypadków środowisko IDE obsługuje polecenia przy użyciu interfejsu IOleCommandTarget . Polecenia w programie Visual Studio są obsługiwane od najbardziej wewnętrznego kontekstu polecenia, w oparciu o lokalne zaznaczenie, i przechodzą do najbardziej zewnętrznego kontekstu, w oparciu o globalne zaznaczenie. Polecenia dodane do menu głównego są natychmiast dostępne do skryptowania.

Aby uzyskać więcej informacji, zobacz Polecenia, menu i paski narzędzi.

Menu i paski narzędzi umożliwiają użytkownikom wywoływanie poleceń. Menu to wiersze lub kolumny poleceń, które zazwyczaj są wyświetlane jako poszczególne elementy tekstowe w górnej części okna narzędzia. Podmenus to menu pomocnicze, które są wyświetlane, gdy użytkownik kliknie polecenia zawierające małą strzałkę. Menu kontekstowe są wyświetlane, gdy użytkownik kliknie prawym przyciskiem myszy określone elementy interfejsu użytkownika. Niektóre typowe nazwy menu to Plik, Edycja, Widok i Okno. Aby uzyskać więcej informacji, zobacz Rozszerzanie menu i poleceń.

Paski narzędzi to wiersze lub kolumny przycisków i innych kontrolek, takich jak pola kombi, pola listy i pola tekstowe. Przyciski paska narzędzi zwykle mają obrazy ikon, takie jak ikona folderu dla polecenia Otwórz plik lub drukarka dla polecenia Drukuj . Wszystkie elementy paska narzędzi są skojarzone z poleceniami. Po kliknięciu przycisku paska narzędzi zostanie uruchomione skojarzone z nim polecenie. W przypadku kontrolki listy rozwijanej każdy element na liście rozwijanej jest skojarzony z innym poleceniem. Niektóre kontrolki paska narzędzi, takie jak kontrolka podziału, są hybrydami. Jedna strona kontrolki to przycisk paska narzędzi, a druga strona to strzałka w dół, która wyświetla kilka poleceń po kliknięciu.

Okna narzędzi

Okna narzędzi są używane w środowisku IDE do wyświetlania informacji. Przybornik, Eksplorator rozwiązań, Okno właściwości i Przeglądarka internetowa to przykłady okien narzędzi.

Okna narzędzi zwykle oferują różne kontrolki, z którymi użytkownik może korzystać. Na przykład okno Właściwości umożliwia użytkownikowi ustawienie właściwości obiektów, które mają określony cel. Okno Właściwości jest wyspecjalizowane w tym sensie, ale także ogólne, ponieważ może być używane w wielu różnych sytuacjach. Podobnie okno Dane wyjściowe jest wyspecjalizowane, ponieważ udostępnia dane wyjściowe oparte na tekście, ale ogólne, ponieważ wiele podsystemów w programie Visual Studio może używać go do dostarczania danych wyjściowych użytkownikowi programu Visual Studio.

Rozważmy następujący obraz programu Visual Studio, który zawiera kilka okien narzędzi:

Zrzut ekranu

Niektóre okna narzędzi są zadokowane razem w jednym okienku, które wyświetla okno narzędzia Eksplorator rozwiązań i ukrywa inne okna narzędzi, ale umożliwia dostęp do nich poprzez kliknięcie kart. Na ilustracji przedstawiono dwa inne okna narzędzi: Lista błędów i Dane wyjściowe, zadokowane razem w jednym panelu.

Pokazano również główne okienko dokumentu, które pokazuje kilka okien edytora. Mimo że okna narzędzi zwykle mają tylko jedno wystąpienie (na przykład można otworzyć tylko jednego Eksploratora rozwiązań), okna edytora mogą mieć wiele wystąpień, każde z nich jest używane do edytowania oddzielnego dokumentu, ale wszystkie są dokowane w tym samym okienku. Obraz przedstawia okienko dokumentu z dwoma oknami edytora, jednym oknem projektanta formularzy. Wszystkie okna w okienku dokumentu są dostępne, klikając na zakładki, ale okno edytora zawierające plik EditorPane.cs jest widoczne i aktywne.

Po rozszerzeniu programu Visual Studio można tworzyć okna narzędzi, które umożliwiają użytkownikom programu Visual Studio interakcję z rozszerzeniem. Możesz również utworzyć własne edytory, które umożliwiają użytkownikom programu Visual Studio edytowanie dokumentów. Ponieważ okna narzędzi i edytory zostaną zintegrowane z programem Visual Studio, nie musisz programować ich do dokowania ani wyświetlania się na kartach. Gdy są one poprawnie zarejestrowane w programie Visual Studio, będą automatycznie miały typowe funkcje okien narzędzi i okien dokumentów w programie Visual Studio. Aby uzyskać więcej informacji, zobacz Rozszerzanie i dostosowywanie okien narzędziowych.

Okna dokumentów

Okno dokumentu to okno potomne z obramowaniem w ramach interfejsu wielodokumentowego (MDI). Okna dokumentów są zwykle używane do hostowania edytorów tekstów, edytorów formularzy (znanych również jako projektanci) lub kontrolek edycji, ale mogą również hostować inne typy funkcjonalne. Okno dialogowe Nowy plik zawiera przykłady okien dokumentów, które udostępnia program Visual Studio.

Większość edytorów jest specyficzna dla języka programowania lub typu pliku, takiego jak strony HTML, zestawy ramek, pliki C++ lub pliki nagłówkowe. Po wybraniu szablonu w oknie dialogowym Nowy plik użytkownik dynamicznie tworzy okno dokumentu dla edytora dla typu pliku skojarzonego z szablonem. Okno dokumentu jest również tworzone, gdy użytkownik otworzy istniejący plik.

Okna dokumentów są ograniczone do obszaru klienta MDI. Każde okno dokumentu ma zakładkę u góry, a kolejność zakładek jest połączona z innymi oknami, które mogą być otwierane w obszarze MDI. Kliknięcie prawym przyciskiem myszy karty okna dokumentu powoduje wyświetlenie menu kontekstowego zawierającego opcje podziału obszaru MDI na wiele grup kart poziomych lub pionowych. Dzielenie obszaru MDI umożliwia jednoczesne wyświetlanie wielu plików. Aby uzyskać więcej informacji, zobacz Dokument Windows.

Edytory

Edytor programu Visual Studio umożliwia dostosowanie go i użycie go dla własnego typu zawartości za pomocą programu Managed Extensibility Framework (MEF). W wielu przypadkach nie trzeba tworzyć pakietu VSPackage w celu rozszerzenia edytora, chociaż jeśli chcesz uwzględnić funkcje ze środowiska (na przykład polecenie menu lub klawisz skrótu), możesz połączyć rozszerzenie MEF z pakietem VSPackage.

Możesz również utworzyć edytor niestandardowy, na przykład jeśli chcesz odczytywać i zapisywać w bazie danych lub jeśli chcesz użyć projektanta. Możesz również użyć edytora zewnętrznego, takiego jak Notatnik lub Microsoft WordPad. Aby uzyskać więcej informacji, zobacz Edytor i Rozszerzenia językowe.

Usługi językowe

Jeśli chcesz, aby edytor programu Visual Studio obsługiwał nowe słowa kluczowe programowania, a nawet nowy język programowania, należy utworzyć usługę językową. Każda usługa językowa może implementować niektóre funkcje edytora w pełni, częściowo lub w ogóle nie. W zależności od konfiguracji usługa językowa może zapewnić wyróżnianie składni, dopasowywanie nawiasów klamrowych, obsługę funkcji IntelliSense i inne funkcje w edytorze.

Sercem usługi językowej jest analizator i skaner. Skaner (lub leksykator) dzieli plik źródłowy na elementy znane jako tokeny, a analizator ustanawia relacje między tymi tokenami. Podczas tworzenia usługi językowej należy zaimplementować analizator i skaner, aby program Visual Studio mógł zrozumieć tokeny i gramatykę języka. Można tworzyć zarządzane lub niezarządzane usługi językowe. Aby uzyskać więcej informacji, zobacz Rozszerzalność usługi językowej w starszej wersji.

Projekty

W programie Visual Studio projekty to kontenery używane przez deweloperów do organizowania i tworzenia kodu źródłowego i innych zasobów. Projekty umożliwiają organizowanie, kompilowanie, debugowanie i wdrażanie kodu źródłowego, odwołania do usług i baz danych sieci Web oraz innych zasobów. Pakiety VSPackage mogą rozszerzać system projektów programu Visual Studio, udostępniając typy projektów, podtypy projektów i narzędzia niestandardowe.

Projekty mogą być również zbierane razem w rozwiązaniu, czyli grupowaniu jednego lub większej liczby projektów, które współpracują ze sobą w celu utworzenia aplikacji. Informacje o projekcie i stanie dotyczące rozwiązania są przechowywane w dwóch plikach rozwiązania, pliku tekstowego rozwiązania (.sln) i pliku opcji użytkownika rozwiązania (.suo). Te pliki są podobne do plików grupy (vbg), które były używane we wcześniejszych wersjach języka Visual Basic, oraz plików obszaru roboczego (dsw) i opcji użytkownika (.opt), które były używane we wcześniejszych wersjach języka C++.

Aby uzyskać więcej informacji, zobacz Projekty i rozwiązania.

Szablony projektów i elementów

Program Visual Studio zawiera wstępnie zdefiniowane szablony projektów i szablony elementów projektu. Możesz również tworzyć własne szablony lub uzyskiwać szablony ze społeczności, a następnie integrować je z programem Visual Studio. Galeria kodu MSDN to miejsce, w których można znaleźć szablony i rozszerzenia.

Szablony zawierają strukturę projektu i podstawowe pliki wymagane do utworzenia określonego rodzaju aplikacji, kontrolki, biblioteki lub klasy. Jeśli chcesz opracować oprogramowanie podobne do jednego z szablonów, utwórz projekt oparty na szablonie, a następnie zmodyfikuj pliki w tym projekcie.

Uwaga / Notatka

Ta architektura szablonu nie jest obsługiwana w przypadku projektów Visual C++.

Aby uzyskać więcej informacji, zobacz Dodawanie szablonów projektów i elementów projektu.

Właściwości i opcje

W oknie Właściwości są wyświetlane właściwości jednego lub wielu wybranych elementów: Rozszerzone właściwości. Strony Opcji zawierają zestawy opcji odnoszące się do określonego składnika, takich jak język programowania lub pakiet VSPackage: Opcje i strony Opcji. Ustawienia to zazwyczaj funkcje związane z interfejsem użytkownika, które można importować i eksportować: obsługa ustawień użytkownika.

Usługi Programu Visual Studio

Usługa udostępnia określony zestaw interfejsów do wykorzystania przez składniki. Program Visual Studio udostępnia zestaw usług, które mogą być używane przez dowolne składniki, w tym rozszerzenia. Na przykład usługi programu Visual Studio umożliwiają dynamiczne pokazywanie lub ukrywanie okien narzędzi, włączanie dostępu do pomocy, paska stanu lub zdarzeń interfejsu użytkownika. Edytor programu Visual Studio udostępnia również usługi, które mogą być importowane przez rozszerzenia edytora. Aby uzyskać więcej informacji, zobacz Korzystanie z usług i dostarczanie ich.

Narzędzie debugowania

Debuger to interfejs użytkownika składników debugowania specyficznych dla języka. Jeśli utworzono nową usługę językową, musisz utworzyć konkretny silnik debugowania, aby zintegrować z debugerem. Aby uzyskać więcej informacji, zobacz Rozszerzenie debugera programu Visual Studio.

Kontrola źródła

Aby uzyskać informacje na temat implementowania wtyczki kontroli źródła lub pakietu VSPackage, zobacz Kontrola źródła.

Czarodzieje

Kreator można utworzyć w połączeniu z nowym typem projektu, aby kreator mógł pomóc użytkownikom w podejmowaniu odpowiednich decyzji podczas tworzenia nowego projektu tego typu. Aby uzyskać więcej informacji, zobacz Kreatory.

Narzędzia niestandardowe

Narzędzia niestandardowe umożliwiają skojarzenie narzędzia z elementem w projekcie i uruchomienie tego narzędzia za każdym razem, gdy plik zostanie zapisany. Aby uzyskać więcej informacji, zobacz Narzędzia niestandardowe.

Narzędzia VSSDK

Zestaw VSSDK zawiera zestaw narzędzi, które mogą być potrzebne do pracy z różnymi aspektami pakietów VSPackage. Aby uzyskać więcej informacji, zobacz VSSDK Utilities (Narzędzia VSSDK).

Korzystanie z Instalatora Windows

W niektórych przypadkach może być konieczne użycie Instalatora Windows, a nie instalatora VSIX: na przykład może być konieczne zapisanie w rejestrze. Aby uzyskać informacje o korzystaniu z Instalatora Windows z rozszerzeniami, zobacz Instalowanie pakietów VSPackage za pomocą Instalatora Windows.

Podgląd pomocy

Możesz zintegrować własną pomoc i strony F1 z Przeglądarką pomocy. Aby uzyskać więcej informacji, zobacz Zestaw SDK przeglądarki Pomocy firmy Microsoft.