ComCompatibleVersionAttribute Sınıf

Tanım

Bir COM istemcisine, bir derlemenin geçerli sürümündeki tüm sınıfların derlemenin önceki bir sürümündeki sınıflarla uyumlu olduğunu gösterir.

public ref class ComCompatibleVersionAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
public sealed class ComCompatibleVersionAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ComCompatibleVersionAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
type ComCompatibleVersionAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ComCompatibleVersionAttribute = class
    inherit Attribute
Public NotInheritable Class ComCompatibleVersionAttribute
Inherits Attribute
Devralma
ComCompatibleVersionAttribute
Öznitelikler

Örnekler

Aşağıdaki örnek, daha yüksek bir sürüm numarasına sahip bir derlemede derlemenin 1.0.0.0 sürümünün nasıl belirtileceğini gösterir. Yeni derleme sürümü ne olursa olsun, derlemedeki tüm CLSID'ler geçerli derleme sürümü yerine 1.0.0.0 sürümü kullanılarak oluşturulur.

using namespace System;
using namespace System::Reflection;
using namespace System::Runtime::InteropServices;

[assembly: AssemblyVersion("3.0.0.0")];
[assembly: ComCompatibleVersion(1,0,0,0)];
namespace MyNamespace
{
    public ref class TheClass
    {
        // Insert code.
    };
};
using System;
using System.Reflection;
using System.Runtime.InteropServices;

[assembly: AssemblyVersion("3.0.0.0")]
[assembly: ComCompatibleVersion(1,0,0,0)]
namespace MyNamespace
{
    public class TheClass
    {
        // Insert code.
    }
}
Imports System.Reflection
Imports System.Runtime.InteropServices

<assembly: AssemblyVersion("3.0.0.0")>
<assembly: ComCompatibleVersion(1,0,0,0)>
Namespace MyNamespace
    Public Class TheClass
        ' Insert code.
    End Class
End Namespace

Açıklamalar

Bu özniteliği derlemelere uygulayabilirsiniz.

Varsayılan olarak ,Tlbexp.exe (Tür Kitaplığı Dışarı Aktarıcısı) sınıf tanımlayıcılarını (CLSID) hesaplamak için bir derlemenin sürüm numarasını kullanır. Tüm genel, COM'a görünür sınıflar, her yeni derleme sürümünü dışarı aktardığınızda yeni CLSID'ler alır.

Bir derlemenin ComCompatibleVersionAttribute geçerli sürümündeki sınıflar için tüm CLSID'leri derlemenin önceki bir sürümündeki sınıflar için CLSID'lerle aynı olmaya zorlamak için özniteliğini uygulayabilirsiniz. CLSID'ler aynı kaldığı sürece, eski bir COM uygulaması özgün derlemeyi kaldırdıktan sonra uyumlu bir derlemenin sonraki sürümünü kullanabilir. AÇıKÇA CLSID ayarlamak için bir sınıfa uygularsanız System.Runtime.InteropServices.GuidAttribute , ComCompatibleVersionAttribute hiçbir etkisi yoktur.

Bu özniteliğin özellikleri, derleme sürümünün dört bölümünü oluşturmak için birleştirilir. Derlemedeki tüm CLSID'leri hesaplamak için sürümün kullanılması için her zaman geçerli derlemenin geriye dönük olarak uyumlu olduğu en düşük sürümü belirtin.

Oluşturucular

ComCompatibleVersionAttribute(Int32, Int32, Int32, Int32)

Derlemenin ComCompatibleVersionAttribute ana sürümü, ikincil sürümü, derleme ve düzeltme numaralarıyla sınıfının yeni bir örneğini başlatır.

Özellikler

BuildNumber

Derlemenin derleme numarasını alır.

MajorVersion

Derlemenin ana sürüm numarasını alır.

MinorVersion

Derlemenin ikincil sürüm numarasını alır.

RevisionNumber

Derlemenin düzeltme numarasını alır.

TypeId

Türetilmiş bir sınıfta uygulandığında, bu Attributeiçin benzersiz bir tanımlayıcı alır.

(Devralındığı yer: Attribute)

Yöntemler

Equals(Object)

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür.

(Devralındığı yer: Attribute)
GetHashCode()

Bu örneğe ilişkin karma kodu döndürür.

(Devralındığı yer: Attribute)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IsDefaultAttribute()

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin değerinin türetilmiş sınıf için varsayılan değer olup olmadığını gösterir.

(Devralındığı yer: Attribute)
Match(Object)

Türetilmiş bir sınıfta geçersiz kılındığında, bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değer döndürür.

(Devralındığı yer: Attribute)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

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

Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Bir arabirimin tür bilgilerini almak için kullanılabilecek bir nesnenin tür bilgilerini alır.

(Devralındığı yer: Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1).

(Devralındığı yer: Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar.

(Devralındığı yer: Attribute)

Şunlara uygulanır

Ayrıca bkz.