提问人:HansBakn 提问时间:9/21/2022 最后编辑:Adrian MoleHansBakn 更新时间:9/22/2022 访问量:60
.NET 强名称 API 调用中的异常。获取“我的 .snk 文件路径>的密钥信息时出错<:找不到强名称密钥容器
Exception in .NET strong name API invocation. Error while getting key info for '<my .snk file path>': Strong name key container not found
问:
我有一个使用 Postsharp 的 C# 类库项目,它无法构建。我收到以下错误:
.NET 强名称 API 调用中的异常。获取密钥时出错 “<my .snk file path>”的信息:找不到强名称密钥容器。 (HRESULT 异常:0x8013141C)。
此外,该错误指定错误发生在项目所在目录中名为“POSTSHARP”的文件中,但此文件似乎不存在。
从我能够收集到的信息来看,由于属于 Postsharp 的强名称密钥或类似的东西出现错误,我似乎无法对我的项目进行签名。此问题仅发生在我的机器上,而在同一项目上工作的任何其他人都不会发生。此外,我的 .snk 文件用于同一解决方案中的其他项目,这些项目也使用相同版本的 Postsharp 和 .NET Framework。
我正在使用 Visual Studio 2019、Postsharp 版本 4.3.48 和 .NET Framework 4.5.2。
答:
1赞
Gael Fraiteur
9/22/2022
#1
PostSharp 正在尝试加载 SNK 的私钥。密钥容器可以通过程序集中使用的特性、MSBuild 属性或环境变量或 PostSharp 属性进入 PostSharp。[AssemblyKeyName]
KeyContainerName
PrivateKeyContainer
该错误意味着 PostSharp 无法以某种方式从 API 获取私钥。可能有几个原因
另请参阅此票:
评论
0赞
HansBakn
9/23/2022
嗨,盖尔,感谢您的回复。您有什么建议我应该调查以解决我的问题吗?
0赞
Gael Fraiteur
9/23/2022
您应该调查密钥容器是否存在,以及当前用户(或运行 PostSharp 的用户)是否有权访问它。
评论