Freigeben über


ComRegisterFunctionAttribute-Klasse

Gibt die Methode an, die beim Registrieren einer Assembly für die Verwendung durch COM aufgerufen werden muss. Dadurch kann während des Registrierungsvorgangs vom Benutzer erstellter Code ausgeführt werden.

Namespace: System.Runtime.InteropServices
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
<ComVisibleAttribute(True)> _
<AttributeUsageAttribute(AttributeTargets.Method, Inherited:=False)> _
Public NotInheritable Class ComRegisterFunctionAttribute
    Inherits Attribute
'Usage
Dim instance As ComRegisterFunctionAttribute
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets.Method, Inherited=false)] 
public sealed class ComRegisterFunctionAttribute : Attribute
[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets::Method, Inherited=false)] 
public ref class ComRegisterFunctionAttribute sealed : public Attribute
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Method, Inherited=false) */ 
public final class ComRegisterFunctionAttribute extends Attribute
ComVisibleAttribute(true) 
AttributeUsageAttribute(AttributeTargets.Method, Inherited=false) 
public final class ComRegisterFunctionAttribute extends Attribute

Hinweise

Dieses Attribut kann auf Methoden angewendet werden.

ComRegisterFunctionAttribute ermöglicht Ihnen das Hinzufügen von beliebigem Registrierungscode, der die Anforderungen von COM-Clients erfüllt. Beispielsweise können Sie die Registrierung mithilfe der Registrierungsfunktionen aus dem Microsoft.Win32-Namespace aktualisieren. Wenn Sie eine Registrierungsmethode bereitstellen, müssen Sie auch System.Runtime.InteropServices.ComUnregisterFunctionAttribute auf eine Methode zum Aufheben der Registrierung anwenden, um die ausgeführten Operationen der Registrierungsmethode rückgängig zu machen.

Die Common Language Runtime ruft die Methode mit diesem Attribut auf, wenn deren enthaltende Assembly (direkt oder indirekt) mit Assembly Registration-Tool (Regasm.exe) oder über die RegistrationServices.RegisterAssembly-API-Methode registriert ist. Methoden mit diesem Attribut können eine beliebige Sichtbarkeit (öffentlich, privat usw.) aufweisen, sie müssen jedoch static sein und einen einzelnen Type-Parameter zum Registrieren des Typs akzeptieren.

Beispiel

Im folgenden Beispiel wird die Anwendung von ComRegisterFunctionAttribute und ComUnregisterFunctionAttribute auf Methoden mit der entsprechenden Signatur veranschaulicht.

Imports System
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
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.
   }
}
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.
   }

};
import System.*;
import System.Runtime.InteropServices.*;

public class MyClassThatNeedsToRegister
{
    /** @attribute ComRegisterFunctionAttribute()
     */
    public static void RegisterFunction(Type t)
    {
        //Insert code here.
    } //RegisterFunction

    /** @attribute ComUnregisterFunctionAttribute()
     */
    public static void UnregisterFunction(Type t)
    {
        //Insert code here.
    } //UnregisterFunction
} //MyClassThatNeedsToRegister
import System;
import System.Runtime.InteropServices;

public class MyClassThatNeedsToRegister
{
   ComRegisterFunctionAttribute public static function RegisterFunction(t : Type) : void 
   {
      //Insert code here.
   }
   
   ComUnregisterFunctionAttribute public static function UnregisterFunction(t : Type) : void
   {
      //Insert code here.
   }
}

Vererbungshierarchie

System.Object
   System.Attribute
    System.Runtime.InteropServices.ComRegisterFunctionAttribute

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

ComRegisterFunctionAttribute-Member
System.Runtime.InteropServices-Namespace
ComUnregisterFunctionAttribute
RegisterAssembly

Weitere Ressourcen

Assembly Registration-Tool (Regasm.exe)