如何在Azure Dev Ops上禁用代码签名-仍然得到“文件mssharedlibsn1024.snk中使用公共密钥对签名进行错误签名-找不到文件”

时间:2019-03-05 22:07:26

标签: c# .net azure-devops code-signing

我们已在开发分支构建管道中禁用了代码签名,但失败并出现以下错误:

  

错误CS7027:使用文件中的公共密钥签名输出时出错   '...... \ SigningCertificates \ mssharedlibsn1024.snk'-找不到文件。

即使我们从解决方案以及项目和源代码管理中删除了文件,它仍会一直在寻找文件。

当我尝试启用代码签名来克服此错误时,我得到了一个不同的密码(因为发生了代码签名):

  

错误:进程'C:\ Program Files(x86)\ Microsoft Visual   Studio \ 2017 \ Enterprise \ Common7 \ IDE \ CommonExtensions \ Microsoft \ TestWindow \ vstest.console.exe'   退出代码1初始化方法失败

     

Microsoft.Crm.Sales.ProductivityBot.Test.Cards.EntityCardArgsTests.Setup   抛出异常。 System.IO.FileLoadException:无法加载文件或   程序集'Microsoft.Crm.Sales.ProductivityBot,Version = 0.1.0.0,   文化=中性,PublicKeyToken = 31bf3856ad364e35'或其中之一   依赖性。强名验证失败。 (来自HRESULT的异常:   0x8013141A)---> System.Security.SecurityException:强名称   验证失败。 (来自HRESULT的异常:0x8013141A)。

上述错误来自未签名的测试项目。

因此,它涉及两个问题:

  1. 我们如何摆脱snk文件错误并真正禁用代码签名?
  2. 如果代码签名运行了(例如我们确实想运行测试的情况),我们如何配置测试项目以使用经过签名的已测试“主”项目?

0 个答案:

没有答案