ProvideLanguageExtensionAttribute Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Kojarzy rozszerzenie pliku z określoną usługą językową.
public ref class ProvideLanguageExtensionAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
public ref class ProvideLanguageExtensionAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)]
public sealed class ProvideLanguageExtensionAttribute : Microsoft.VisualStudio.Shell.RegistrationAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)>]
type ProvideLanguageExtensionAttribute = class
inherit RegistrationAttribute
Public NotInheritable Class ProvideLanguageExtensionAttribute
Inherits RegistrationAttribute
- Dziedziczenie
- Atrybuty
Przykłady
W tym przykładzie pokazano, jak skojarzyć rozszerzenie pliku ".myext" z usługą językową.
Uwaga
Język Visual C# umożliwia skróconą postać atrybutu zdefiniowanego przez użytkownika przez usunięcie części "Atrybut" nazwy. Ten skrócony formularz jest używany w tym i wszystkich innych przykładach w tej klasie.
using Microsoft.VisualStudio.Shell;
namespace MyLanguagePackage
{
[ProvideLanguageExtension(typeof(MyLanguageService), ".myext")]
public class MyLanguagePackage : Package
{
}
}
Uwagi
Ten atrybut języka C# zdefiniowany przez użytkownika służy do rejestrowania w programie Visual Studio rozszerzenia pliku dla określonej usługi językowej. Ten atrybut umieszcza niezbędne informacje w metadanych zestawu, które są później pobierane i używane przez regpkg.exe. Nadal musisz zarejestrować usługę językową; ten atrybut powoduje tylko skojarzenie między rozszerzeniem pliku a usługą językową. Aby uzyskać więcej informacji, zobacz Rejestrowanie pakietów VSPackages.
Można użyć wielu wystąpień tego atrybutu, aby skojarzyć wiele rozszerzeń plików z usługą językową.
Klucz rejestru, którego dotyczy ten atrybut, istnieje w kluczu rejestru programu Visual Studio:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[X.Y]\
Languages\
File Extensions\
[FileExtension]\
(Default) = RG_SZ: [LanguageServiceGuid]
gdzie:
[X.Y] to numer wersji programu Visual Studio, taki jak 8.0 lub 8.0exp.
[FileExtension] to ciąg zawierający rozszerzenie pliku z okresem wiodącym; na przykład "myext".
[LanguageServiceGuid] to identyfikator GUID usługi językowej; na przykład
{B614A40A-80D9-4FAC-A6AD-FC2868FFF7CD}
.
Następujące atrybuty zdefiniowane przez użytkownika są używane dla usług językowych:
Atrybut | Opis |
---|---|
ProvideLanguageServiceAttribute | Rejestruje usługę językową w programie Visual Studio i określa, jakie funkcje są obsługiwane. |
ProvideLanguageExtensionAttribute | Kojarzy rozszerzenie pliku z usługą językową. |
ProvideLanguageEditorOptionPageAttribute | Określa węzeł właściwości lub stronę okna dialogowego Opcje specyficzne dla usługi językowej. |
ProvideLanguageCodeExpansionAttribute | Określa informacje o lokalizacji do obsługi fragmentów kodu w usłudze językowej. |
ProvideServiceAttribute | Rejestruje usługę językową jako usługę Visual Studio. Wszystkie usługi dostarczone w kodzie zarządzanym używają tego atrybutu. |
Uwagi dotyczące dziedziczenia
Nie można dziedziczyć tej klasy atrybutu, więc nie ma nic do zaimplementowania.
Uwagi dotyczące wywoływania
Użyj tego atrybutu w elemecie VSPackage, aby skojarzyć rozszerzenie pliku z usługą językową.
Konstruktory
ProvideLanguageExtensionAttribute(String, String) |
Inicjuje nowe wystąpienie atrybutu ProvideLanguageExtensionAttribute przy użyciu określonego identyfikatora GUID usługi językowej. |
ProvideLanguageExtensionAttribute(Type, String) |
Inicjuje nowe wystąpienie atrybutu ProvideLanguageExtensionAttribute przy użyciu typu klasy usługi językowej. |
Właściwości
Extension |
Zwraca skojarzone rozszerzenie pliku. |
LanguageService |
Zwraca identyfikator GUID języka. |
TypeId |
Zastąp właściwość TypeID, aby umożliwić klasom pochodnym RegistrationAttribute pracować z atrybutem System.ComponentModel.TypeDescriptor.GetAttributes(...). Atrybut pochodzący z tego atrybutu będzie musiał zastąpić tę właściwość tylko wtedy, gdy potrzebuje lepszej kontroli nad wystąpieniami, które można zastosować do klasy. (Odziedziczone po RegistrationAttribute) |
Metody
GetPackageRegKeyPath(Guid) |
Pobiera ścieżkę rejestru (względem katalogu głównego rejestru aplikacji) pakietu VSPackage. (Odziedziczone po RegistrationAttribute) |
Register(RegistrationAttribute+RegistrationContext) |
Umieszcza rozszerzenie pliku i identyfikator GUID usługi językowej w rejestrze. |
Unregister(RegistrationAttribute+RegistrationContext) |
Usuwa rozszerzenie pliku i identyfikator GUID usługi językowej z rejestru. |