Compartilhar via


ProvideLanguageExtensionAttribute Classe

Definição

Associa uma extensão de arquivo a um serviço de idioma específico.

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
Herança
ProvideLanguageExtensionAttribute
Atributos

Exemplos

Este exemplo mostra como associar a extensão de arquivo ".myext" a um serviço de linguagem.

Observação

O Visual C# permite uma forma abreviada de um atributo definido pelo usuário removendo a parte "Atributo" do nome. Esse formulário abreviado é usado neste e em todos os outros exemplos em toda essa classe.

using Microsoft.VisualStudio.Shell;  

namespace MyLanguagePackage  
{  
    [ProvideLanguageExtension(typeof(MyLanguageService), ".myext")]  
    public class MyLanguagePackage : Package  
    {  
    }  
}  

Comentários

Esse atributo C# definido pelo usuário é usado para registrar no Visual Studio uma extensão de arquivo para um serviço de linguagem específico. Esse atributo coloca as informações necessárias nos metadados do assembly recuperados e usados posteriormente por regpkg.exe. Você ainda deve registrar o próprio serviço de idioma; esse atributo faz apenas a associação entre a extensão de arquivo e o serviço de idioma. Para obter mais informações, consulte Registrando VSPackages.

Você pode usar várias instâncias desse atributo para associar várias extensões de arquivo ao serviço de idioma.

A chave do Registro afetada por esse atributo existe na chave do Registro do Visual Studio:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\[X.Y]\  
  Languages\  
    File Extensions\  
      [FileExtension]\  
        (Default) = RG_SZ: [LanguageServiceGuid]  

em que:

  • [X.Y] é um número de versão do Visual Studio, como 8.0 ou 8.0exp.

  • [FileExtension] é uma cadeia de caracteres que contém a extensão de arquivo com o período à esquerda; por exemplo, "myext".

  • [LanguageServiceGuid] é o GUID do serviço de idioma; por exemplo, {B614A40A-80D9-4FAC-A6AD-FC2868FFF7CD}.

Os seguintes atributos definidos pelo usuário são usados para serviços de linguagem:

Atributo Descrição
ProvideLanguageServiceAttribute Registra o serviço de linguagem com o Visual Studio e especifica quais recursos têm suporte.
ProvideLanguageExtensionAttribute Associa uma extensão de arquivo ao serviço de idioma.
ProvideLanguageEditorOptionPageAttribute Especifica um nó de propriedade ou página para a caixa de diálogo Opções específica para o serviço de idioma.
ProvideLanguageCodeExpansionAttribute Especifica informações de localização para dar suporte a snippets de código no serviço de idioma.
ProvideServiceAttribute Registra um serviço de linguagem como um serviço do Visual Studio. Todos os serviços fornecidos no código gerenciado usam esse atributo.

Notas aos Herdeiros

Essa classe de atributo não pode ser herdada de, portanto, não há nada a implementar.

Notas aos Chamadores

Use esse atributo em seu VSPackage para associar uma extensão de arquivo ao serviço de idioma.

Construtores

ProvideLanguageExtensionAttribute(String, String)

Inicializa uma nova instância do ProvideLanguageExtensionAttribute atributo usando o GUID do serviço de linguagem especificado.

ProvideLanguageExtensionAttribute(Type, String)

Inicializa uma nova instância do ProvideLanguageExtensionAttribute atributo usando o tipo da classe de serviço de linguagem.

Propriedades

Extension

Retorna a extensão de arquivo associada.

LanguageService

Retorna o GUID do idioma.

TypeId

Substitua a propriedade TypeID para permitir que as classes derivadas de RegistrationAttribute funcionem com System.ComponentModel.TypeDescriptor.GetAttributes(...). Um atributo derivado deste terá que substituir essa propriedade somente se precisar de um controle melhor sobre as instâncias que podem ser aplicadas a uma classe.

(Herdado de RegistrationAttribute)

Métodos

GetPackageRegKeyPath(Guid)

Obtém o caminho do Registro (em relação à raiz do registro do aplicativo) do VSPackage.

(Herdado de RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Coloca a extensão de arquivo e o GUID do serviço de idioma no registro.

Unregister(RegistrationAttribute+RegistrationContext)

Remove a extensão de arquivo e o GUID do serviço de idioma do registro.

Aplica-se a