ComCompatibleVersionAttribute Klas

Definitie

Geeft aan een COM-client aan dat alle klassen in de huidige versie van een assembly compatibel zijn met klassen in een eerdere versie van de assembly.

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
Overname
ComCompatibleVersionAttribute
Kenmerken

Voorbeelden

In het volgende voorbeeld ziet u hoe u assemblyversie 1.0.0.0 opgeeft in een assembly met een hoger versienummer. Ongeacht de nieuwe assemblyversie worden alle CLSI's in de assembly gegenereerd met versie 1.0.0.0 in plaats van de huidige assemblyversie te gebruiken.

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

Opmerkingen

U kunt dit kenmerk toepassen op assembly's.

De Tlbexp.exe (Type Library Exporter) gebruikt standaard het versienummer van een assembly om klasse-id's (CLSID's) te berekenen. Alle openbare, com-zichtbare klassen ontvangen nieuwe SSID's telkens wanneer u een nieuwe assemblyversie exporteert.

U kunt het ComCompatibleVersionAttribute kenmerk toepassen om alle CLSID's af te dwingen voor klassen in de huidige versie van een assembly om hetzelfde te zijn als CLSID's voor klassen in een eerdere versie van de assembly. Zolang de CLSID's hetzelfde blijven, kan een verouderde COM-toepassing de latere versie van een compatibele assembly gebruiken nadat u de oorspronkelijke assembly hebt verwijderd. Als u de System.Runtime.InteropServices.GuidAttribute klasse toepast op een klasse om de CLSID expliciet in te stellen, heeft dit ComCompatibleVersionAttribute geen effect.

De eigenschappen van dit kenmerk worden gecombineerd om de vier onderdelen van een assemblyversie te vormen. Geef altijd de laagste versie op waarmee de huidige assembly compatibel is met eerdere versies, zodat de versie wordt gebruikt om alle CLSI's in de assembly te berekenen.

Constructors

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

Initialiseert een nieuw exemplaar van de ComCompatibleVersionAttribute klasse met de primaire versie, secundaire versie, build en revisienummers van de assembly.

Eigenschappen

Name Description
BuildNumber

Hiermee haalt u het buildnummer van de assembly op.

MajorVersion

Hiermee haalt u het primaire versienummer van de assembly op.

MinorVersion

Hiermee wordt het secundaire versienummer van de assembly ophaalt.

RevisionNumber

Hiermee haalt u het revisienummer van de assembly op.

TypeId

Wanneer deze wordt geïmplementeerd in een afgeleide klasse, krijgt u Attributehiervoor een unieke id.

(Overgenomen van Attribute)

Methoden

Name Description
Equals(Object)

Retourneert een waarde die aangeeft of dit exemplaar gelijk is aan een opgegeven object.

(Overgenomen van Attribute)
GetHashCode()

Retourneert de hash-code voor dit exemplaar.

(Overgenomen van Attribute)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
IsDefaultAttribute()

Wanneer deze wordt overschreven in een afgeleide klasse, geeft u aan of de waarde van dit exemplaar de standaardwaarde is voor de afgeleide klasse.

(Overgenomen van Attribute)
Match(Object)

Wanneer deze wordt overschreven in een afgeleide klasse, wordt een waarde geretourneerd die aangeeft of dit exemplaar gelijk is aan een opgegeven object.

(Overgenomen van Attribute)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Expliciete interface-implementaties

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

Hiermee wordt een set namen toegewezen aan een bijbehorende set verzend-id's.

(Overgenomen van Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Hiermee haalt u de typegegevens voor een object op, die kan worden gebruikt om de typegegevens voor een interface op te halen.

(Overgenomen van Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Hiermee wordt het aantal type-informatieinterfaces opgehaald dat een object biedt (0 of 1).

(Overgenomen van Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Biedt toegang tot eigenschappen en methoden die door een object worden weergegeven.

(Overgenomen van Attribute)

Van toepassing op

Zie ook