/KEYFILE (アセンブリに署名するためのキーまたはキー ペアの指定)

/KEYFILE:filename

解説

それぞれの文字について以下に説明します。

  • filename
    キーを含むファイル。 コンテナー名に空白が含まれている場合は、文字列を二重引用符 (" ") で囲みます。

解説

リンカーは、アセンブリ マニフェストに公開キーを挿入し、秘密キーを使用して最後のアセンブリに署名します。 キー ファイルを生成するには、コマンド ラインで「sn -k file」と入力します。 署名されたアセンブリは、厳密な名前を持つアセンブリとなります。

/LN を指定してコンパイルした場合は、キー ファイルの名前がモジュールに保持され、#using を通じてモジュールへの明示的な参照を含むアセンブリをコンパイルしたとき、または /ASSEMBLYMODULE とリンクしたときに作成されるアセンブリに組み込まれます。

/KEYCONTAINER を使用して、暗号に関する情報をリンカーに渡すこともできます。 アセンブリに部分署名する場合は、/DELAYSIGN を使用します。 アセンブリに対する署名の詳細については、「厳密名アセンブリ (アセンブリ署名) (C++/CLI)」を参照してください。

コマンド ライン オプションまたはカスタム属性のいずれかを使用して /KEYFILE/KEYCONTAINER の両方が指定されている場合、リンカーはまずキー コンテナーを探します。 コンテナーが検出された場合、アセンブリはキー コンテナーの情報で署名されます。 キー コンテナーが見つからない場合は、/KEYFILE で指定されたファイルを探します。 成功すると、キー ファイル内の情報を使用して、アセンブリが署名されます。キー情報はキー コンテナーに組み込まれるため (sn -i と同じ)、次回のコンパイルではキー コンテナーが有効になります。

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

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

このほかにも、次のようなリンカー オプションがアセンブリの生成に影響します。

Visual Studio 開発環境でこのリンカー オプションを設定するには

  1. プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳細については、「Visual C++ プロジェクトのプロパティの設定」を参照してください。

  2. [リンカー] フォルダーをクリックします。

  3. [コマンド ライン] プロパティ ページをクリックします。

  4. [追加のオプション] ボックスにオプションを入力します。

このリンカーをコードから設定するには

参照

参照

リンカー オプションの設定

リンカー オプション