/KEYFILE (アセンブリに署名するためのキーまたはキー ペアの指定)/KEYFILE (Specify Key or Key Pair to Sign an Assembly)



キーを含むファイルです。File that contains the key. 二重引用符で区切る文字列を配置 ("")、スペースが含まれている場合。Place the string in double quotation marks (" ") if it contains a space.


リンカーはアセンブリ マニフェストに公開キーを挿入し、秘密キーで最終アセンブリに署名します。The linker inserts the public key into the assembly manifest and then signs the final assembly with the private key. キー ファイルを生成する入力sn-k filenameコマンドライン。To generate a key file, type sn -k filename at the command line. 署名されたアセンブリは、厳密な名前と呼ばれます。A signed assembly is said to have a strong name.

使用してコンパイルする場合/LN、キー ファイルの名前がモジュールに保持されを使用して、モジュールを明示的に参照を含むアセンブリをコンパイルするときに作成されるアセンブリに組み込む#usingとをリンクするときまたは/ASSEMBLYMODULEします。If you compile with /LN, the name of the key file is held in the module and incorporated into the assembly that is created when you compile an assembly that includes an explicit reference to the module, via #using, or when linking with /ASSEMBLYMODULE.

リンカーに、暗号化情報を渡すことができますも/KEYCONTAINERします。You can also pass your encryption information to the linker with /KEYCONTAINER. 使用/DELAYSIGN部分的に署名されたアセンブリを作成する場合。Use /DELAYSIGN if you want a partially signed assembly. 参照してください厳密な名前のアセンブリ (アセンブリ署名) (C +/cli CLI)アセンブリへの署名の詳細についてはします。See Strong Name Assemblies (Assembly Signing) (C++/CLI) for more information on signing an assembly.

場合両方 /KEYFILE/KEYCONTAINERが指定されて、リンカーは、キー コンテナーをまず (コマンド ライン オプションまたはカスタム属性によって)、します。In case both /KEYFILE and /KEYCONTAINER are specified (either by command line option or by custom attribute), the linker will first try the key container. それが成功すると、アセンブリはキー コンテナーの情報で署名されます。If that succeeds, then the assembly is signed with the information in the key container. リンカーがキー コンテナーを見つけられない場合/KEYFILE で指定されたファイルが試みられます。If the linker does not find the key container, it will try the file specified with /KEYFILE. ファイルが検出された場合、アセンブリはキー ファイルの情報で署名され、キー情報はキー コンテナーにインストールされるため (sn -i と同様)、次のコンパイル時にはキー コンテナーが有効になります。If that succeeds, the assembly is signed with the information in the key file and the key information will be installed in the key container (similar to sn -i) so that on the next compilation, the key container will be valid.

キー ファイルには公開キーだけが含まれる場合があることに注意してください。Note that a key file might contain only the public key.

参照してくださいの作成と using strong-named Assembliesアセンブリへの署名の詳細についてはします。See Creating and Using Strong-Named Assemblies for more information on signing an assembly.

アセンブリの生成に影響するその他のリンカー オプションがあります。Other linker options that affect assembly generation are:

Visual Studio 開発環境でこのリンカー オプションを設定するにはTo set this linker option in the Visual Studio development environment

  1. プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。Open the project's Property Pages dialog box. 詳細については、次を参照してください。 Visual Studio での設定の C++ コンパイラとビルド プロパティします。For details, see Set C++ compiler and build properties in Visual Studio.

  2. をクリックして、リンカーフォルダー。Click the Linker folder.

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

  4. オプションを入力、追加オプションボックス。Type the option into the Additional Options box.

このリンカーをコードから設定するにはTo set this linker option programmatically

関連項目See also

MSVC リンカーのリファレンスMSVC linker reference
MSVC リンカー オプションMSVC Linker Options