/KEYFILE (アセンブリに署名するためのキーまたはキー ペアの指定)
更新 : 2007 年 11 月
/KEYFILE:filename
解説
指定項目 :
- filename
キーを含むファイル。ファイル名に空白が含まれている場合は、文字列を二重引用符 (" ") で囲みます。
解説
リンカは、アセンブリ マニフェストに公開キーを挿入し、秘密キーを使用して最後のアセンブリに署名します。キー ファイルを生成するには、コマンド ラインで「sn -kfile」と入力します。署名されたアセンブリは、厳密な名前を持つアセンブリとなります。
/LN を指定してコンパイルした場合は、キー ファイルの名前がモジュールに保持され、#using を通じてモジュールへの明示的な参照を含むアセンブリをコンパイルしたとき、または /ASSEMBLYMODULE とリンクしたときに作成されるアセンブリに組み込まれます。
/KEYCONTAINER を使用して、暗号に関する情報をリンカに渡すこともできます。アセンブリに部分署名する場合は、/DELAYSIGN を使用します。アセンブリに対する署名の詳細については、「厳密名アセンブリ (アセンブリ署名)」を参照してください。
コマンド ライン オプションまたはカスタム属性のいずれかを使用して /KEYFILE と /KEYCONTAINER の両方が指定されている場合、リンカはまずキー コンテナを探します。成功すると、キー コンテナ内の情報を使用して、アセンブリが署名されます。キー コンテナが見つからない場合は、/KEYFILE で指定されたファイルを探します。成功すると、キー ファイル内の情報を使用して、アセンブリが署名されます。キー情報はキー コンテナに組み込まれるため (sn -i と同じ)、次回のコンパイルではキー コンテナが有効になります。
キー ファイルには、公開キーだけが含まれていることがあります。
アセンブリの署名の詳細については、「厳密な名前付きアセンブリの作成と使用」を参照してください。
このほかにも、次のようなリンカ オプションがアセンブリの生成に影響します。
Visual Studio 開発環境でこのリンカ オプションを設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。詳細については、「Visual C++ プロジェクトのプロパティの設定」を参照してください。
[リンカ] フォルダをクリックします。
[コマンド ライン] プロパティ ページをクリックします。
[追加のオプション] ボックスにオプションを入力します。
このリンカをコードから設定するには
- AdditionalOptions を参照してください。