TypeLibVersionAttribute クラス

メモ : この名前空間、クラス、およびメンバは、.NET Framework Version 1.1 だけでサポートされています。

エクスポートされたタイプ ライブラリのバージョン番号を指定します。

この型のすべてのメンバの一覧については、TypeLibVersionAttribute メンバ を参照してください。

System.Object
   System.Attribute
      System.Runtime.InteropServices.TypeLibVersionAttribute

<AttributeUsage(AttributeTargets.Assembly)>
NotInheritable Public Class TypeLibVersionAttribute   Inherits Attribute
[C#]
[AttributeUsage(AttributeTargets.Assembly)]
public sealed class TypeLibVersionAttribute : Attribute
[C++]
[AttributeUsage(AttributeTargets::Assembly)]
public __gc __sealed class TypeLibVersionAttribute : public   Attribute
[JScript]
public
   AttributeUsage(AttributeTargets.Assembly)
class TypeLibVersionAttribute extends Attribute

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

この属性は、アセンブリに適用できます。

タイプ ライブラリ エクスポータ (Tlbexp.exe) は既定で、アセンブリ バージョンの最初の 2 つの番号からタイプ ライブラリのバージョン情報を生成します。たとえばアセンブリのバージョンが 1.2.5000.0 の場合、タイプ ライブラリのバージョンを 1.2 としてエクスポートし、アセンブリのビルド番号とリビジョン番号を除外します。この動作が不都合の場合は、 TypeLibVersionAttribute を適用して明示的にタイプ ライブラリの番号を生成することもできます。

異なるアセンブリをエクスポートしたときに生成されるタイプ ライブラリのバージョン番号が同じになる場合は、タイプ ライブラリのバージョンを明示的に指定できると便利です。たとえばバージョン 1.2.0.0 のアセンブリとバージョン 1.2.500.0 のアセンブリがある場合、どちらもタイプ ライブラリのバージョンは 1.2 になります。この場合、いずれかのアセンブリをアンインストールしたときに問題が発生する可能性があります。タイプ ライブラリ バージョンを区別するには、2 番目のアセンブリ (バージョン 1.2.500.0) について、明示的にバージョンを 1.25 としてタイプ ライブラリを生成できます。

使用例

[Visual Basic, C#] System.Runtime.InteropServices.TypelibVersionAttribute を適用して、タイプ ライブラリのバージョンを明示的に 1.25 に設定する例を次に示します。

 
Imports System
Imports System.Runtime.Interop
<Assembly: AssemblyVersion ("1.2.500.0")>
<Assembly: TypeLibVersionAttribute(1,25)>
Module MyNamespace
  Public Class c
    ' Insert code.
  End Class
   
[C#] 
using System;
using System.Runtime.InteropServices;
[Assembly: AssemblyVersion ("1.2.500.0")>
[Assembly: TypeLibVersion(1,25)]
namespace MyNamespace
{
  class MyClass
  {
    // Insert code.
  }
}
   

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Runtime.InteropServices

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: Mscorlib (Mscorlib.dll 内)

参照

TypeLibVersionAttribute メンバ | System.Runtime.InteropServices 名前空間 | タイプ ライブラリ エクスポータ (Tlbexp.exe)