ComClassAttribute 클래스

정의

ComClassAttribute 특성은 메타데이터를 추가하도록 컴파일러에 지시하여 클래스를 COM 개체로 노출할 수 있도록 합니다.The ComClassAttribute attribute instructs the compiler to add metadata that allows a class to be exposed as a COM object.

public ref class ComClassAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)]
public sealed class ComClassAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)>]
type ComClassAttribute = class
    inherit Attribute
Public NotInheritable Class ComClassAttribute
Inherits Attribute
상속
ComClassAttribute
특성

예제

이 예제를 실행 하려면 새로 만듭니다 클래스 라이브러리 애플리케이션을 클래스 모듈에 다음 코드를 추가 합니다.To run this example, create a new Class Library application and add the following code to a class module.

    <ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)>
    Public Class ComClass1
        ' Use the Region directive to define a section named COM Guids. 
#Region "COM GUIDs"
        ' These  GUIDs provide the COM identity for this class 
        ' and its COM interfaces. You can generate 
        ' these guids using guidgen.exe
        Public Const ClassId As String = "7666AC25-855F-4534-BC55-27BF09D49D46"
        Public Const InterfaceId As String = "54388137-8A76-491e-AA3A-853E23AC1217"
        Public Const EventsId As String = "EA329A13-16A0-478d-B41F-47583A761FF2"
#End Region

        Public Sub New()
            MyBase.New()
        End Sub

        Function AddNumbers(ByVal X As Integer, ByVal Y As Integer)
            AddNumbers = X + Y
        End Function
    End Class

설명

ComClassAttribute를 사용 하 여 Visual Basic에서 COM 구성 요소를 노출 하는 프로세스를 간소화 합니다.Use ComClassAttribute to simplify the process of exposing COM components from Visual Basic. COM 개체는 .NET Framework 어셈블리와 매우 다릅니다. 가 없으면 ComClassAttribute 여러 단계를 수행 하 여 Visual Basic에서 COM 개체를 생성 해야 합니다.COM objects are very different from .NET Framework assemblies; without the ComClassAttribute, you need to follow a number of steps to generate a COM object from Visual Basic. 로 표시 된 클래스의 경우 ComClassAttribute 컴파일러는 이러한 단계를 자동으로 수행 합니다.For classes marked with ComClassAttribute, the compiler performs many of these steps automatically.

참고

이 특성은 COM 개체 만들기를 간소화 합니다.This attribute simplifies the creation of COM objects. 클래스를 COM 개체로 노출 하려면 구성 속성 대화 상자의 빌드 섹션에서 선택한 com Interop 등록 옵션을 사용 하 여 프로젝트를 컴파일해야 합니다.To expose a class as a COM object, you must compile the project with the Register for COM Interop option selected in the Build section of the Configuration Properties dialog box.

참고

Visual Basic를 사용 하 여 만든 클래스를 비관리 코드에서 사용할 COM 개체로 노출할 수도 있지만 진정한 COM 개체가 아닙니다.Although you can also expose a class created with Visual Basic as a COM object for unmanaged code to use, it is not a true COM object. 자세한 내용은 참조 하세요 .NET Framework 애플리케이션의 COM 상호 운용성합니다.For details, see COM Interoperability in .NET Framework Applications.

생성자

ComClassAttribute()

ComClassAttribute 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the ComClassAttribute class.

ComClassAttribute(String)

ComClassAttribute 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the ComClassAttribute class.

ComClassAttribute(String, String)

ComClassAttribute 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the ComClassAttribute class.

ComClassAttribute(String, String, String)

ComClassAttribute 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the ComClassAttribute class.

속성

ClassID

클래스를 고유하게 식별하는 데 사용되는 클래스 ID를 가져옵니다.Gets a class ID used to uniquely identify a class.

EventID

이벤트를 고유하게 식별하는 데 사용되는 이벤트 ID를 가져옵니다.Gets an event ID used to uniquely identify an event.

InterfaceID

인터페이스를 고유하게 식별하는 데 사용되는 인터페이스 ID를 가져옵니다.Gets an interface ID used to uniquely identify an interface.

InterfaceShadows

COM 인터페이스 이름이 해당 클래스나 기본 클래스의 다른 멤버를 숨긴다는 것을 나타냅니다.Indicates that the COM interface name shadows another member of the class or base class.

TypeId

파생 클래스에서 구현된 경우 이 Attribute에 대한 고유 식별자를 가져옵니다.When implemented in a derived class, gets a unique identifier for this Attribute.

(다음에서 상속됨 Attribute)

메서드

Equals(Object)

이 인스턴스가 지정된 개체와 같은지를 나타내는 값을 반환합니다.Returns a value that indicates whether this instance is equal to a specified object.

(다음에서 상속됨 Attribute)
GetHashCode()

이 인스턴스의 해시 코드를 반환합니다.Returns the hash code for this instance.

(다음에서 상속됨 Attribute)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
IsDefaultAttribute()

파생 클래스에서 재정의된 경우 이 인스턴스 값이 파생 클래스에 대한 기본값인지 여부를 표시합니다.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(다음에서 상속됨 Attribute)
Match(Object)

파생 클래스에서 재정의된 경우 이 인스턴스가 지정된 개체와 같은지 여부를 나타내는 값을 반환합니다.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(다음에서 상속됨 Attribute)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

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

이름 집합을 해당하는 디스패치 식별자 집합에 매핑합니다.Maps a set of names to a corresponding set of dispatch identifiers.

(다음에서 상속됨 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

인터페이스의 형식 정보를 가져오는 데 사용할 수 있는 개체의 형식 정보를 검색합니다.Retrieves the type information for an object, which can be used to get the type information for an interface.

(다음에서 상속됨 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

개체에서 제공하는 형식 정보 인터페이스의 수를 검색합니다(0 또는 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(다음에서 상속됨 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

개체에서 노출하는 메서드와 속성에 대한 액세스를 제공합니다.Provides access to properties and methods exposed by an object.

(다음에서 상속됨 Attribute)

적용 대상

추가 정보