ComCompatibleVersionAttribute Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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
- 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) |