ComCompatibleVersionAttribute Osztály

Definíció

Azt jelzi a COM-ügyfélnek, hogy a szerelvény aktuális verziójában lévő összes osztály kompatibilis a szerelvény egy korábbi verziójában lévő osztályokkal.

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
Öröklődés
ComCompatibleVersionAttribute
Attribútumok

Példák

Az alábbi példa bemutatja, hogyan adhatja meg a szerelvény 1.0.0.0-s verzióját egy nagyobb verziószámú szerelvényben. Az új szerelvényverziótól függetlenül a rendszer az aktuális szerelvényverzió helyett az 1.0.0.0-s verzióval hozza létre a szerelvény összes CLSID-ját.

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

Megjegyzések

Ezt az attribútumot a szerelvényekre is alkalmazhatja.

Alapértelmezés szerint a Tlbexp.exe (típuskódtár-exportőr) egy szerelvény verziószámát használja az osztályazonosítók (CLSID-k) kiszámításához. Minden nyilvános, COM-látható osztály új CLSID-ket kap minden alkalommal, amikor új szerelvényverziót exportál.

Az attribútummal ComCompatibleVersionAttribute kényszerítheti, hogy a szerelvény aktuális verziójában lévő osztályok összes CLSID-je megegyezik a szerelvény egy korábbi verziójában lévő osztályok CLSID-jeivel. Ha a CLSID-k változatlanok maradnak, az örökölt COM-alkalmazások az eredeti szerelvény eltávolítása után használhatják a kompatibilis szerelvény későbbi verzióját. Ha egy osztályra alkalmazza a System.Runtime.InteropServices.GuidAttribute CLSID explicit beállításához, annak ComCompatibleVersionAttribute nincs hatása.

Ennek az attribútumnak a tulajdonságai kombinálva alkotják a szerelvényverzió négy részét. Mindig adja meg azt a legalacsonyabb verziót, amellyel az aktuális szerelvény visszamenőlegesen kompatibilis, így a rendszer a szerelvény összes CLSID-jének kiszámításához használja a verziót.

Konstruktorok

Name Description
ComCompatibleVersionAttribute(Int32, Int32, Int32, Int32)

Inicializálja az osztály új példányát a ComCompatibleVersionAttribute szerelvény főverziójával, alverziójával, buildjével és változatszámával.

Tulajdonságok

Name Description
BuildNumber

Lekéri a szerelvény buildszámát.

MajorVersion

Lekéri a szerelvény főverziószámát.

MinorVersion

Lekéri a szerelvény alverziószámát.

RevisionNumber

Lekéri a szerelvény változatszámát.

TypeId

Ha származtatott osztályban implementálják, ehhez egy egyedi azonosítót Attributekap.

(Öröklődés forrása Attribute)

Metódusok

Name Description
Equals(Object)

Olyan értéket ad vissza, amely jelzi, hogy ez a példány egyenlő-e egy adott objektummal.

(Öröklődés forrása Attribute)
GetHashCode()

A példány kivonatkódját adja vissza.

(Öröklődés forrása Attribute)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
IsDefaultAttribute()

Ha egy származtatott osztályban felül van bírálva, azt jelzi, hogy a példány értéke-e a származtatott osztály alapértelmezett értéke.

(Öröklődés forrása Attribute)
Match(Object)

Származtatott osztály felülírásakor egy olyan értéket ad vissza, amely jelzi, hogy ez a példány egy adott objektummal egyenlő-e.

(Öröklődés forrása Attribute)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)

Explicit interfész-implementációk

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

Névkészletet képez le a küldési azonosítók megfelelő készletére.

(Öröklődés forrása Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Lekéri egy objektum típusadatait, amelyek a felület típusadatainak lekérésére használhatók.

(Öröklődés forrása Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1).

(Öröklődés forrása Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz.

(Öröklődés forrása Attribute)

A következőre érvényes:

Lásd még