Partager via


ProvideLanguageExtensionAttribute Classe

Définition

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
ProvideLanguageExtensionAttribute
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.

S’applique à