AssemblyVersionAttribute クラス

定義

属性を付けるアセンブリのバージョンを指定します。Specifies the version of the assembly being attributed.

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

次の例ではAssemblyVersionAttribute 、属性を使用してバージョン番号をアセンブリに割り当てています。The following example uses the AssemblyVersionAttribute attribute to assign a version number to an assembly. コンパイル時に、このバージョン情報はアセンブリのメタデータと共に格納されます。At compile time, this version information is stored with the assembly's metadata. 実行時に、この例では、アセンブリ内Type.Assemblyの型のプロパティの値を取得して、実行中のアセンブリへの参照を取得し、次のVersion AssemblyNameプロパティからアセンブリのバージョン情報を取得します。Assembly.GetNameメソッドによって返されるオブジェクト。At run time, the example retrieves the value of the Type.Assembly property on a type found in the assembly to get a reference to the executing assembly, and it retrieves the assembly's version information from the Version property of the AssemblyName object returned by the Assembly.GetName method.

using System;
using System.Reflection;

[assembly:AssemblyVersionAttribute("2.0.1")]

public class Example1
{
   public static void Main()
   {
      Assembly thisAssem = typeof(Example1).Assembly;
      AssemblyName thisAssemName = thisAssem.GetName();
       
      Version ver = thisAssemName.Version;
       
      Console.WriteLine("This is version {0} of {1}.", ver, thisAssemName.Name);    
   }
}
// The example displays the following output:
//        This is version 2.0.1.0 of Example1.
Imports System.Reflection

<Assembly:AssemblyVersionAttribute("2.0.1")>
Module Example1
   Public Sub Main()
       Dim thisAssem As Assembly = GetType(Example1).Assembly
       Dim thisAssemName As AssemblyName = thisAssem.GetName()
       
       Dim ver As Version = thisAssemName.Version
       
       Console.WriteLine("This is version {0} of {1}.", ver, thisAssemName.Name)    
   End Sub
End Module
' The example displays the following output:
'      This is version 2.0.1.0 of Example1.

注釈

属性AssemblyVersionAttributeは、アセンブリにバージョン番号を割り当てるために使用されます。The AssemblyVersionAttribute attribute is used to assign a version number to an assembly. その後、そのバージョン番号がアセンブリのメタデータと共に格納されます。That version number is then stored with the assembly's metadata.

アセンブリのバージョン番号はアセンブリの固有名の一部であるため、アセンブリへのバインディング、およびバージョンのポリシーは、重要な部分を果たします。The assembly version number is part of an assembly's identity and plays a key part in binding to the assembly and in version policy. ランタイムの既定のバージョン ポリシーは、構成ファイル (アプリケーション構成ファイル、発行者ポリシー ファイル、コンピューター管理者の構成ファイル) に指定した明示的なバージョン ポリシーでオーバーライドされない限り、アプリケーションが作成およびテストされた時点のバージョンの場合にだけそのアプリケーションを実行します。The default version policy for the runtime is that applications run only with the versions they were built and tested with, unless overridden by explicit version policy in configuration files (the application configuration file, the publisher policy file, and the computer's administrator configuration file). 詳細については共通言語ランタイムのアセンブリを参照してください。See Assemblies in the Common Language Runtime for more information.

注意

バージョンのチェックは、厳密な名前付きのアセンブリに対してだけ実行されます。Version checking only occurs with strong-named assemblies.

バージョン番号には、4 つのコンポーネントがあります。The version number has four parts, as follows:

<メジャー バージョン >.<マイナー バージョン >.<ビルド番号 >.<リビジョン ><major version>.<minor version>.<build number>.<revision>

重要

バージョンのすべてのコンポーネントは、0 以上の整数である必要があります。All components of the version must be integers greater than or equal to 0. メタデータの制約によって、アセンブリにおけるメジャー、マイナー、ビルド、およびリビジョン コンポーネントの最大値は、UInt16.MaxValue- 1 です。Metadata restricts the major, minor, build, and revision components for an assembly to a maximum value of UInt16.MaxValue - 1. コンポーネントがこの値を超えている場合、コンパイル エラーが発生します。If a component exceeds this value, a compilation error occurs.

すべての値を指定するか、アスタリスク (*) を使用して、既定のビルド番号、リビジョン番号を受け入れることができます。You can specify all the values or you can accept the default build number, revision number, or both by using an asterisk (*). たとえば、[assembly:AssemblyVersion("2.3.25.1")] はメジャー バージョン 2、マイナー バージョン 3、ビルド番号は 25、およびリビジョン番号として 1 を示します。For example, [assembly:AssemblyVersion("2.3.25.1")] indicates 2 as the major version, 3 as the minor version, 25 as the build number, and 1 as the revision number. バージョン番号が [assembly:AssemblyVersion("1.2.*")] の場合は、メジャー バージョンとして 1、マイナー バージョンとして 2 を指定し、既定のビルドおよびリビジョン番号を受け入れます。A version number such as [assembly:AssemblyVersion("1.2.*")] specifies 1 as the major version, 2 as the minor version, and accepts the default build and revision numbers. バージョン番号が [assembly:AssemblyVersion("1.2.15.*")] の場合は、メジャー バージョンとして 1、マイナー バージョンとして 2、ビルド番号として 15 を指定し、既定のリビジョン番号を受け入れます。A version number such as [assembly:AssemblyVersion("1.2.15.*")] specifies 1 as the major version, 2 as the minor version, 15 as the build number, and accepts the default revision number. 既定のビルド番号は、日ごとにインクリメントします。The default build number increments daily. 既定のリビジョン番号は、(サマータイムによる調整を考慮せずに)現地時間の午前 0 時からの経過秒を 2 で割った値です。The default revision number is the number of seconds since midnight local time (without taking into account time zone adjustments for daylight saving time), divided by 2.

注意

ビルド番号のにアスタリスクを指定すると、リビジョン番号を指定することはできません。If you specify an asterisk for the build number, you cannot specify a revision number.

アセンブリのメジャーおよびマイナー バージョンは、アセンブリをエクスポートするときに、タイプ ライブラリのバージョン番号として使用されます。The assembly major and minor versions are used as the type library version number when the assembly is exported. 一部の COM ホストは、0.0 のバージョン番号を持つタイプ ライブラリを使用することはできません。Some COM hosts do not accept type libraries with the version number 0.0. そのため、COM クライアントにアセンブリを公開する場合は、アセンブリのバージョンに明示的に 1.0 を設定、AssemblyVersionAttributeページ プロジェクトの外部で作成されたVisual Studio 2005Visual Studio 2005がありませんAssemblyVersionAttribute指定します。Therefore, if you want to expose an assembly to COM clients, set the assembly version explicitly to 1.0 in the AssemblyVersionAttribute page for projects created outside Visual Studio 2005Visual Studio 2005 and with no AssemblyVersionAttribute specified. アセンブリのバージョンが 0.0 の場合でも、この操作を行います。Do this even when the assembly version is 0.0. Visual Studio で作成されたすべてのプロジェクトは、既定で Visual Studio 2005Visual Studio 20051.0.* のアセンブリ バージョンがあります。All projects created in Visual Studio 2005Visual Studio 2005 have a default assembly version of 1.0.*.

読み込まれたアセンブリの名前を取得するには、 GetNameアセンブリでを呼び出してをAssemblyName取得し、 Versionプロパティを取得します。To get the name of an assembly you have loaded, call GetName on the assembly to get an AssemblyName, and then get the Version property. 読み込まれていないアセンブリの名前を取得するにはGetAssemblyName 、クライアントアプリケーションからを呼び出して、アプリケーションが使用するアセンブリのバージョンを確認します。To get the name of an assembly you have not loaded, call GetAssemblyName from your client application to check the assembly version that your application uses.

AssemblyVersionAttribute属性は、1 回のみ適用できます。The AssemblyVersionAttribute attribute can only be applied once. 一部の Visual Studio プロジェクト テンプレートには、属性が既に含まれています。Some Visual Studio project templates already include the attribute. これらのプロジェクトの場合、コードで属性を追加すると、コンパイラ エラーが発生します。In those projects, adding the attribute in code causes a compiler error.

コンストラクター

AssemblyVersionAttribute(String)

属性を付けるアセンブリのバージョン番号を指定して、AssemblyVersionAttribute クラスの新しいインスタンスを初期化します。Initializes a new instance of the AssemblyVersionAttribute class with the version number of the assembly being attributed.

プロパティ

TypeId

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

(継承元 Attribute)
Version

属性付きアセンブリのバージョン番号を取得します。Gets the version number of the attributed assembly.

メソッド

Equals(Object)

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

(継承元 Attribute)
GetHashCode()

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

(継承元 Attribute)
GetType()

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

(継承元 Object)
IsDefaultAttribute()

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

(継承元 Attribute)
Match(Object)

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

(継承元 Attribute)
MemberwiseClone()

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

(継承元 Object)
ToString()

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

(継承元 Object)

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

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

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

(継承元 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

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

(継承元 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

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

(継承元 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

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

(継承元 Attribute)

適用対象

こちらもご覧ください