ComRegisterFunctionAttribute Kelas

Definisi

Menentukan metode yang akan dipanggil saat Anda mendaftarkan assembly untuk digunakan dari COM; ini memungkinkan eksekusi kode yang ditulis pengguna selama proses pendaftaran.

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
Warisan
ComRegisterFunctionAttribute
Atribut

Contoh

Contoh berikut menunjukkan cara menerapkan ComRegisterFunctionAttribute dan ComUnregisterFunctionAttribute ke metode dengan tanda tangan yang sesuai.

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

Keterangan

Anda dapat menerapkan atribut ini ke metode.

ComRegisterFunctionAttribute memungkinkan Anda menambahkan kode pendaftaran arbitrer untuk mengakomodasi persyaratan klien COM. Misalnya, Anda dapat memperbarui registri menggunakan fungsi pendaftaran dari Microsoft.Win32 namespace. Jika Anda menyediakan metode pendaftaran, Anda juga harus menerapkan System.Runtime.InteropServices.ComUnregisterFunctionAttribute ke metode unregistration, yang membalikkan operasi yang dilakukan dalam metode pendaftaran.

.NET Framework: Runtime bahasa umum memanggil metode dengan atribut ini ketika rakitan yang berisi terdaftar (secara langsung atau tidak langsung) dengan alatRegasm.exe (Pendaftaran Perakitan) atau melalui RegistrationServices.RegisterAssembly metode .

.NET Core: Runtime bahasa umum memanggil metode dengan atribut ini ketika host COM assembly yang berisi terdaftar melalui alatRegSvr32.exe.

Atribut ini hanya dapat diterapkan ke metode yang memiliki karakteristik berikut:

  • Cakupan: Apa pun (publik, privat, dan sebagainya).

  • Ketik: static.

  • Parameter: Menerima parameter tunggal Type atau String jenis parameter.

  • Jenis pengembalian: void.

Konstruktor

ComRegisterFunctionAttribute()

Menginisialisasi instans baru kelas ComRegisterFunctionAttribute.

Properti

TypeId

Ketika diimplementasikan di kelas turunan, mendapatkan pengidentifikasi unik untuk ini Attribute.

(Diperoleh dari Attribute)

Metode

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
GetHashCode()

Mengembalikan kode hash untuk instans ini.

(Diperoleh dari Attribute)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
IsDefaultAttribute()

Ketika ditimpa di kelas turunan, menunjukkan apakah nilai instans ini adalah nilai default untuk kelas turunan.

(Diperoleh dari Attribute)
Match(Object)

Saat ditimpa di kelas turunan, mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1).

(Diperoleh dari Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

(Diperoleh dari Attribute)

Berlaku untuk

Lihat juga