/keyfile

アセンブリに厳密な名前を付けるキーおよびキー ペアを含むファイルを指定します。

/keyfile:file

引数

  • file
    必ず指定します。 キーを含むファイル。 ファイル名に空白が含まれる場合、ファイル名を引用符 (" ") で囲みます。

解説

コンパイラが、アセンブリ マニフェストに公開キーを挿入し、秘密キーを使用して最後のアセンブリに署名します。 キー ファイルを生成するには、コマンド ラインで「sn -k file」と入力します。 詳細については、「Sn.exe (厳密名ツール)」を参照してください。

/target:module を使用してコンパイルすると、キー ファイル名はモジュールに保持され、/addmodule でアセンブリをコンパイルするときに作成されるアセンブリに組み込まれます。

/keycontainer を使用して、暗号に関する情報をコンパイラに渡すこともできます。 部分署名されたアセンブリを作成する場合は、/delaysign を使用します。

このオプションは、任意の Microsoft Intermediate Language (MSIL) モジュールのソース コードでカスタム属性 (AssemblyKeyFileAttribute) として指定することもできます。

コマンド ライン オプションまたはカスタム属性によって、コンパイル時に /keyfile と /keycontainer の両方が同時に指定されると、コンパイラは先にキー コンテナーを処理します。 コンテナーが検出された場合、アセンブリはキー コンテナーの情報で署名されます。 キー コンテナーを検出できなかった場合、コンパイラは /keyfile で指定されたファイルを検索します。 キー ファイルが見つかった場合は、そのファイル内の情報を使用してアセンブリに署名され、次のコンパイル時にキー コンテナーが有効になるように、キー情報がキー コンテナーに組み込まれます (sn -i と同様)。

キー ファイルには、公開キーだけが含まれていることがあります。

アセンブリに対する署名の詳細については、「厳密な名前付きアセンブリの作成と使用」を参照してください。

注意

/keyfile オプションは Visual Studio 開発環境内では利用できません。このオプションを利用できるのは、コマンド ラインからコンパイルするときだけです。

使用例

ソース ファイル Input.vb をコンパイルし、キー ファイルを指定する場合のコード例です。

vbc /keyfile:myfile.sn input.vb

参照

関連項目

/reference (Visual Basic)

コンパイル コマンド ラインのサンプル (Visual Basic)

概念

アセンブリとグローバル アセンブリ キャッシュ (C# および Visual Basic)

その他の技術情報

Visual Basic のコマンド ライン コンパイラ