多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# /keyfile (C# Compiler Options) 指定包含加密密钥的文件名。 ## 语法 ``` /keyfile:file ``` ## 参数 | 术语 | 定义 | | --- | --- | | _file_ | 包含强名称密钥的文件的名称。 | ## 备注 使用此选项时,编译器将从指定的文件将公钥插入程序集清单中,然后使用私钥对最终程序集进行签名。若要生成密钥文件,请在命令行上键入 sn -k _file_。 如果使用 **/target:module** 进行编译,则将密钥文件的名称保存在模块中,并在使用 [/addmodule](https://msdn.microsoft.com/zh-CN/library/1s46f83c.aspx) 编译程序集时将其包含到创建的程序集中。 也可以使用 [/keycontainer](https://msdn.microsoft.com/zh-CN/library/5b92wy0h.aspx) 将加密信息传递给编译器。如果需要部分签名的程序集,则使用 [/delaysign](https://msdn.microsoft.com/zh-CN/library/ta1sxwy8.aspx)。 如果在相同的编译中指定了 /keyfile 和 /keycontainer(通过命令行选项或自定义特性),编译器将首先尝试密钥容器。如果成功,则使用密钥容器中的信息对程序集进行签名。如果编译器没有找到密钥容器,则将尝试用 /keyfile 指定的文件。如果成功,则使用密钥文件中的信息对程序集进行签名,并且将把密钥信息安装到密钥容器中(类似 sn -i),这样,下次编译时密钥容器将是有效的。 请注意,密钥文件可能只包含公钥。 有关更多信息,请参见[创建和使用具有强名称的程序集](https://msdn.microsoft.com/zh-CN/library/xwb8f617.aspx)和[延迟为程序集签名](https://msdn.microsoft.com/zh-CN/library/t07a3dye.aspx)。 ## 在 Visual Studio 开发环境中设置此编译器选项 1. 打开项目的**“属性”**页。 2. 单击**“签名”**属性页。 3. 修改**“选择强名称密钥文件”**属性。 可以使用 [AssemblyOriginatorKeyFile](https://msdn.microsoft.com/zh-CN/library/vslangproj.projectproperties.assemblyoriginatorkeyfile.aspx) 以编程方式访问此编译器选项。 ## 请参阅 [C# Compiler Options](https://msdn.microsoft.com/zh-CN/library/2fdbz5xd.aspx) [如何:修改项目属性和配置设置](https://msdn.microsoft.com/zh-CN/library/z15yzzew.aspx)