アセンブリ属性の設定
アセンブリ属性は、アセンブリについての情報を提供する値です。属性は次の情報に分類されます。
アセンブリ ID 属性。
情報属性。
アセンブリ マニフェスト属性。
厳密な名前の属性。
アセンブリ ID 属性
アセンブリは、名前、バージョン、およびカルチャの 3 つの属性と、適用される場合は厳密な名前によって識別されます。これらの属性は、アセンブリの完全な名前を形成し、コード内でアセンブリを参照するときに必要になります。属性を使用して、アセンブリのバージョンとカルチャ設定を設定できます。コンパイラまたはアセンブリ リンカ (Al.exe) は、アセンブリの作成時に、アセンブリ マニフェストを格納するファイルに基づいて名前の値を設定します。
バージョン属性とカルチャ属性の説明を次の表に示します。
アセンブリ ID 属性 | 説明 | ||
---|---|---|---|
アセンブリがサポートするカルチャを示す列挙フィールド。カルチャを依存しないように指定することもできます。その場合、アセンブリは既定のカルチャのリソースを格納することを示します。
|
|||
アセンブリを side-by-side 実行するかどうかなどのアセンブリ属性を設定する値。 |
|||
major.minor.build.revision 形式の数値。たとえば、2.4.0.0 です。共通言語ランタイムは、この値を使用して、厳密な名前付きアセンブリでのバインディング操作を実行します。 |
バージョン属性とカルチャ属性をアセンブリに適用する方法を次のコード例で示します。
'Set version number for the assembly.
<Assembly:AssemblyVersionAttribute("4.3.2.1")>
'Set culture as German.
<Assembly:AssemblyCultureAttribute("de")>
//Set version number for the assembly.
[assembly:AssemblyVersionAttribute("4.3.2.1")]
//Set culture as German.
[assembly:AssemblyCultureAttribute("de")]
情報属性
情報属性を使用して、アセンブリの追加の会社情報または製品情報を指定できます。アセンブリに適用できる情報属性の説明を次の表に示します。
情報属性 | 説明 |
---|---|
会社名を指定する文字列値。 |
|
著作権情報を指定する文字列値。 |
|
Win32 ファイル バージョン番号を指定する文字列値。通常、この属性の既定値はアセンブリ バージョンです。 |
|
完全な製品バージョン番号など、ランタイムが使用しないバージョン情報を指定する文字列値。 |
|
製品情報を指定する文字列値。 |
|
商標情報を指定する文字列値。 |
これらの属性は、アセンブリの [ウィンドウ プロパティ] ページに表示できます。また、独自の Win32 リソース ファイルを指定するために、/win32res コンパイラ オプションを使用してこれらの属性をオーバーライドすることもできます。
アセンブリ マニフェスト属性
アセンブリ マニフェスト属性を使用して、タイトル、説明、既定のエイリアス、構成などの情報をアセンブリ マニフェストに指定できます。アセンブリ マニフェスト属性の説明を、次の表に示します。
アセンブリ マニフェスト属性 | 説明 |
---|---|
Retail や Debug など、アセンブリの構成を示す文字列値。ランタイムはこの値を使用しません。 |
|
アセンブリの参照に使用する既定のエイリアスを指定する文字列値。この値は、アセンブリ自体の名前がフレンドリ名ではない場合 (GUID 値の場合など) に、フレンドリ名を指定します。この値は、完全なアセンブリ名の略称としても使用できます。 |
|
アセンブリの特性と目的を要約した短い説明を指定する文字列値。 |
|
アセンブリのフレンドリ名を指定する文字列値。たとえば、comdlg という名前のアセンブリに Microsoft Common Dialog Control というタイトルを付けることができます。 |
厳密な名前の属性
厳密な名前の属性を使用すると、アセンブリに厳密な名前を設定できます。厳密な名前の属性の説明を、次の表に示します。
厳密な名前の属性 | 説明 |
---|---|
遅延署名が使用されていることを示すブール値。 |
|
この属性のコンストラクタにパラメータとして渡される公開キー (遅延署名を使用する場合)、または公開キーと秘密キーを格納するファイルの名前を示す文字列値。ファイル名は、ソース ファイルのパスではなく出力ファイルのパス (.exe または .dll) と関連しています。 |
|
この属性のコンストラクタにパラメータとして渡されるキー ペアを格納するキー コンテナを示します。 |
次のコード例では、遅延署名を使用して、公開キー ファイル myKey.snk
を使用する厳密な名前付きアセンブリを作成するときに適用する属性を示します。
<Assembly:AssemblyKeyFileAttribute("myKey.snk")>
<Assembly:AssemblyDelaySignAttribute(True)>
[assembly:AssemblyKeyFileAttribute(@"..\..\myKey.snk")]
[assembly:AssemblyDelaySignAttribute(true)]