ComCompatibleVersionAttribute ComCompatibleVersionAttribute ComCompatibleVersionAttribute ComCompatibleVersionAttribute Class

定義

現在のバージョンのアセンブリ内のクラスはすべて、以前のバージョンのアセンブリ内のクラスと互換性があることを COM クライアントに対して示します。Indicates to a COM client that all classes in the current version of an assembly are compatible with classes in an earlier version of the assembly.

public ref class ComCompatibleVersionAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ComCompatibleVersionAttribute : Attribute
type ComCompatibleVersionAttribute = class
    inherit Attribute
Public NotInheritable Class ComCompatibleVersionAttribute
Inherits Attribute
継承
ComCompatibleVersionAttributeComCompatibleVersionAttributeComCompatibleVersionAttributeComCompatibleVersionAttribute
属性

次の例より高いバージョン番号を持つアセンブリのアセンブリのバージョン 1.0.0.0 を指定する方法を示します。The following example shows how to specify assembly version 1.0.0.0 in an assembly with a higher version number. アセンブリの新しいバージョンに関係なく、現在のアセンブリのバージョンを使用する代わりに、バージョン 1.0.0.0 を使用してアセンブリ内のすべての Clsid が生成されます。Regardless of the new assembly version, all CLSIDs in the assembly are generated using version 1.0.0.0 instead of using the current assembly version.

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
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

注釈

この属性は、アセンブリに適用できます。You can apply this attribute to assemblies.

既定で、 Tlbexp.exe (タイプ ライブラリ エクスポーター)アセンブリのバージョン番号を使用して、クラス識別子 (Clsid) を計算します。By default, the Tlbexp.exe (Type Library Exporter) uses an assembly's version number to calculate class identifiers (CLSIDs). すべてのパブリック COM 参照可能クラスが表示される新しい Clsid たびに新しいバージョンのアセンブリをエクスポートします。All public, COM-visible classes receive new CLSIDs each time you export a new assembly version.

適用することができます、ComCompatibleVersionAttributeを以前のバージョンのアセンブリ内のクラスの Clsid と同じアセンブリの現在のバージョンのクラスのすべての Clsid を強制する属性。You can apply the ComCompatibleVersionAttribute attribute to force all CLSIDs for classes in the current version of an assembly to be the same as CLSIDs for classes in an earlier version of the assembly. Clsid が同じ場合に限り、従来の COM アプリケーションは、元のアセンブリをアンインストールした後に互換性のあるアセンブリの以降のバージョンを使用できます。As long as the CLSIDs remain the same, a legacy COM application can use the later version of a compatible assembly after you uninstall the original assembly. 適用する場合、 System.Runtime.InteropServices.GuidAttribute 、CLSID を明示的に設定するためにクラス、ComCompatibleVersionAttributeも何も起こりません。If you apply the System.Runtime.InteropServices.GuidAttribute to a class to explicitly set its CLSID, the ComCompatibleVersionAttribute has no effect.

この属性のプロパティは、アセンブリのバージョンの 4 つの部分を結合します。The properties of this attribute combine to form the four parts of an assembly version. 常に現在のアセンブリとの下位互換性、そのバージョンはアセンブリ内のすべての Clsid を計算するために使用される最小バージョンを指定します。Always specify the lowest version that the current assembly is backward compatible with so that version is used to calculate all CLSIDs in the assembly.

コンストラクター

ComCompatibleVersionAttribute(Int32, Int32, Int32, Int32) ComCompatibleVersionAttribute(Int32, Int32, Int32, Int32) ComCompatibleVersionAttribute(Int32, Int32, Int32, Int32) ComCompatibleVersionAttribute(Int32, Int32, Int32, Int32)

アセンブリのメジャー バージョン番号、マイナー バージョン番号、ビルド番号、およびリビジョン番号を指定して、ComCompatibleVersionAttribute クラスの新しいインスタンスを初期化します。Initializes a new instance of the ComCompatibleVersionAttribute class with the major version, minor version, build, and revision numbers of the assembly.

プロパティ

BuildNumber BuildNumber BuildNumber BuildNumber

アセンブリのビルド番号を取得します。Gets the build number of the assembly.

MajorVersion MajorVersion MajorVersion MajorVersion

アセンブリのメジャー バージョン番号を取得します。Gets the major version number of the assembly.

MinorVersion MinorVersion MinorVersion MinorVersion

アセンブリのマイナー バージョン番号を取得します。Gets the minor version number of the assembly.

RevisionNumber RevisionNumber RevisionNumber RevisionNumber

アセンブリのリビジョン番号を取得します。Gets the revision number of the assembly.

TypeId TypeId TypeId TypeId

派生クラスで実装されると、この Attribute の一意の識別子を取得します。When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

このインスタンスが、指定されたオブジェクトと等価であるかどうかを示す値を返します。Returns a value that indicates whether this instance is equal to a specified object.

(Inherited from Attribute)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

このインスタンスのハッシュ コードを返します。Returns the hash code for this instance.

(Inherited from Attribute)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

派生クラスでオーバーライドされるとき、このインスタンスの値が派生クラスの既定値であるかどうかを示します。When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object) Match(Object) Match(Object) Match(Object)

派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

明示的なインターフェイスの実装

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

一連の名前を対応する一連のディスパッチ識別子に割り当てます。Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

適用対象

こちらもご覧ください