我无法构建具有强名称密钥签名的项目-标题中的消息总是出现。

是的,项目最初是从另一台机器复制过来的。然而,即使我通过“项目属性”中的“签名”选项卡添加了一个新密钥,仍然会显示此错误。

我曾尝试以管理员身份运行Visual Studio,并尝试手动将密钥添加到Windows证书存储区。

的帮助!

编辑:我没有得到这个错误与一个新项目,但我很想让这个现有的项目工作。即使我创建了一个新的证书,它也不能工作!


当前回答

转到visual studio中的项目“属性”。然后进入签名标签。

然后确保“签名单击一次”清单已关闭。


更新说明:

在解决方案资源管理器中:

右键单击您的项目 点击属性 通常在左边,选择“Signing”选项卡 检查“签名点击一次”清单 确保你保存了!

其他回答

为了安全起见,代码中没有包含PFX证书,所以(再次)遇到了这种情况。

对于本地测试,比如调试版本,这个解决方案的首席程序员让我进入属性,签名,点击“创建测试证书”。在我们的设置中,他说只需点击确定,但如果有必要,可以在这里输入强密码。

转到visual studio中的项目“属性”。然后进入签名标签。

然后确保“签名单击一次”清单已关闭。

OR

1.在记事本中打开.csproj文件。

2.删除证书存储中与签名证书相关的如下信息 xxxxx xxxxxx xxxxxxxx.pfx 真正的 假 `

为我工作。

转到visual studio中的项目“属性”。然后进入签名标签。

然后确保“签名单击一次”清单已关闭。


更新说明:

在解决方案资源管理器中:

右键单击您的项目 点击属性 通常在左边,选择“Signing”选项卡 检查“签名点击一次”清单 确保你保存了!

在记事本中打开.csproj文件。 删除证书存储中与签名证书相关的如下信息 < PropertyGroup > < ManifestCertificateThumbprint > xxxxx xxxxxx < / ManifestCertificateThumbprint > < ManifestKeyFile > xxxxxxxx.pfx < / ManifestKeyFile > 真正< GenerateManifests > < / GenerateManifests > 假< / SignManifests < SignManifests > > < / PropertyGroup >

使用属性为具有强名称的程序集签名

打开AssemblyInfo.cs(在$(SolutionDir)\属性中)

AssemblyKeyFileAttribute或AssemblyKeyNameAttribute,指定文件或容器的名称,该文件或容器包含在使用强名称对程序集进行签名时使用的密钥对。

添加如下代码:

[assembly:AssemblyKeyFileAttribute("keyfile.snk")]