ComRegisterFunctionAttribute Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Especifica o método a ser chamado quando você registra um assembly para ser usado de COM. Isso habilita a execução de código escrito pelo usuário durante o processo de registro.
public ref class ComRegisterFunctionAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)]
public sealed class ComRegisterFunctionAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ComRegisterFunctionAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)>]
type ComRegisterFunctionAttribute = class
inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ComRegisterFunctionAttribute = class
inherit Attribute
Public NotInheritable Class ComRegisterFunctionAttribute
Inherits Attribute
- Herança
- Atributos
Exemplos
O exemplo a seguir demonstra como aplicar ComRegisterFunctionAttribute e ComUnregisterFunctionAttribute aos métodos com a assinatura apropriada.
using namespace System;
using namespace System::Runtime::InteropServices;
public ref class MyClassThatNeedsToRegister
{
public:
[ComRegisterFunctionAttribute]
static void RegisterFunction( Type^ t )
{
//Insert code here.
}
[ComUnregisterFunctionAttribute]
static void UnregisterFunction( Type^ t )
{
//Insert code here.
}
};
using System;
using System.Runtime.InteropServices;
public class MyClassThatNeedsToRegister
{
[ComRegisterFunctionAttribute]
public static void RegisterFunction(Type t)
{
//Insert code here.
}
[ComUnregisterFunctionAttribute]
public static void UnregisterFunction(Type t)
{
//Insert code here.
}
}
Imports System.Runtime.InteropServices
Public Class MyClassThatNeedsToRegister
<ComRegisterFunctionAttribute()> Public Shared Sub _
RegisterFunction(t As Type)
'Insert code here.
End Sub
<ComUnregisterFunctionAttribute()> Public Shared Sub _
UnregisterFunction(t As Type)
'Insert code here.
End Sub
End Class
Comentários
Você pode aplicar esse atributo a métodos.
ComRegisterFunctionAttribute
permite adicionar código de registro arbitrário para acomodar os requisitos dos clientes COM. Por exemplo, você pode atualizar o registro usando funções de registro do Microsoft.Win32 namespace. Se você fornecer um método de registro, também deverá aplicar System.Runtime.InteropServices.ComUnregisterFunctionAttribute a um método de cancelamento de registro, o que inverte as operações feitas no método de registro.
.NET Framework: O common language runtime chama o método com esse atributo quando seu assembly contendo é registrado (direta ou indiretamente) com a ferramentaRegasm.exe (Registro de Assembly) ou por meio do RegistrationServices.RegisterAssembly método .
.NET Core: O common language runtime chama o método com esse atributo quando o host COM do assembly contém é registrado por meio da ferramentaRegSvr32.exe.
Esse atributo só pode ser aplicado a métodos que têm as seguintes características:
Escopo: Qualquer (público, privado e assim por diante).
Digite:
static
.Parâmetros: aceita um único Type parâmetro ou um tipo de String parâmetro.
Tipo de retorno:
void
.
Construtores
ComRegisterFunctionAttribute() |
Inicializa uma nova instância da classe ComRegisterFunctionAttribute. |
Propriedades
TypeId |
Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute. (Herdado de Attribute) |
Métodos
Equals(Object) |
Retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
GetHashCode() |
Retorna o código hash para a instância. (Herdado de Attribute) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
IsDefaultAttribute() |
Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
Match(Object) |
Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição. (Herdado de Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface. (Herdado de Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1). (Herdado de Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute) |