ProvideLanguageExtensionAttribute Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Associe une extension de fichier à un service de langage particulier.
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
- Héritage
- Attributs
Exemples
Cet exemple montre comment associer l’extension de fichier « .myext » à un service de langage.
Notes
Visual C# permet une forme abrégée d’un attribut défini par l’utilisateur en supprimant la partie « Attribut » du nom. Ce formulaire abrégé est utilisé dans cet exemple et dans tous les autres exemples de cette classe.
using Microsoft.VisualStudio.Shell;
namespace MyLanguagePackage
{
[ProvideLanguageExtension(typeof(MyLanguageService), ".myext")]
public class MyLanguagePackage : Package
{
}
}
Remarques
Cet attribut C# défini par l’utilisateur est utilisé pour inscrire auprès de Visual Studio une extension de fichier pour un service de langage particulier. Cet attribut place les informations nécessaires dans les métadonnées de l’assembly qui sont ensuite récupérées et utilisées par regpkg.exe. Vous devez toujours inscrire le service de langue lui-même ; cet attribut établit uniquement l’association entre l’extension de fichier et le service de langage. Pour plus d’informations, consultez Inscription de VSPackages.
Vous pouvez utiliser plusieurs instances de cet attribut pour associer plusieurs extensions de fichier à votre service de langage.
La clé de Registre affectée par cet attribut existe sous la clé de Registre Visual Studio :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[X.Y]\
Languages\
File Extensions\
[FileExtension]\
(Default) = RG_SZ: [LanguageServiceGuid]
où :
[X.Y] est un numéro de version de Visual Studio tel que 8.0 ou 8.0exp.
[FileExtension] est une chaîne contenant l’extension de fichier avec la période de début ; par exemple, « myext ».
[LanguageServiceGuid] est le GUID de votre service de langage ; par exemple,
{B614A40A-80D9-4FAC-A6AD-FC2868FFF7CD}
.
Les attributs définis par l’utilisateur suivants sont utilisés pour les services linguistiques :
Attribut | Description |
---|---|
ProvideLanguageServiceAttribute | Inscrit le service de langage auprès de Visual Studio et spécifie les fonctionnalités prises en charge. |
ProvideLanguageExtensionAttribute | Associe une extension de fichier au service de langage. |
ProvideLanguageEditorOptionPageAttribute | Spécifie un nœud de propriété ou une page pour la boîte de dialogue Options spécifique au service de langage. |
ProvideLanguageCodeExpansionAttribute | Spécifie les informations d’emplacement pour prendre en charge les extraits de code dans le service de langage. |
ProvideServiceAttribute | Inscrit un service de langage en tant que service Visual Studio. Tous les services fournis dans le code managé utilisent cet attribut. |
Notes pour les héritiers
Cette classe d’attribut ne peut pas être héritée, il n’y a donc rien à implémenter.
Notes pour les appelants
Utilisez cet attribut sur votre VSPackage pour associer une extension de fichier à votre service de langage.
Constructeurs
ProvideLanguageExtensionAttribute(String, String) |
Initialise une nouvelle instance de l'attribut ProvideLanguageExtensionAttribute avec le GUID du service de langage spécifié. |
ProvideLanguageExtensionAttribute(Type, String) |
Initialise une nouvelle instance de l'attribut ProvideLanguageExtensionAttribute avec le type de votre classe de service de langage. |
Propriétés
Extension |
Retourne l'extension de fichier associée. |
LanguageService |
Retourne le GUID de langage. |
TypeId |
Remplacez la propriété TypeID pour permettre aux classes dérivées RegistrationAttribute de fonctionner avec System.ComponentModel.TypeDescriptor.GetAttributes(...). Un attribut dérivé de celui-ci ne doit remplacer cette propriété que s’il a besoin d’un meilleur contrôle sur les instances qui peuvent être appliquées à une classe. (Hérité de RegistrationAttribute) |
Méthodes
GetPackageRegKeyPath(Guid) |
Obtient le chemin d'accès au Registre (relatif à la racine de Registre de l'application) du VSPackage. (Hérité de RegistrationAttribute) |
Register(RegistrationAttribute+RegistrationContext) |
Place l'extension de fichier et le service de langage GUID dans le Registre. |
Unregister(RegistrationAttribute+RegistrationContext) |
Supprime l'extension de fichier et le service de langage GUID du Registre. |