2012-10-19 47 views
2

我们从另一家公司购买了一款带有源代码的软件。但是当我构建它时,发生了两个错误。我研究了很多。但不能找到解决方案。通常.snk文件用于DLL(将其添加到GAC全局程序集缓存中)我无法在应用程序文件夹或任何位置找到PublicPrivateKeyFile.snk。应用程序引用了dll的数量,因此每个DLL都显示相同的错误。我该怎么做才能解决这个错误。DLL错误的加密失败错误和元数据文件

Error Cryptographic failure while signing assembly ...\obj\Debug\xyz.dll' -- 'Error reading key file 'c:\Users\Administrator\Desktop\NewCode\abc\Libs\PublicPrivateKeyFile.snk' -- The system cannot find the file specified.` 

Error metadata file 'C:\Users\Administrator\Desktop\NewCode\abc\bin\Debug\xyz.dll' could not be found 

什么是元数据文件? 如何解决这两个错误?

回答

1

你不能。没有他们的.snk(强名密钥文件),您不能签名。请查看AssemblyInfo.cs类的内部[assembly: ReferenceKeyFile]指令,并注释删除签名。您将可以在本地使用它。

第二个选择是让自己的签名为.dll。然后通过各种方式确保所有对该公钥的引用都是相同的,并找出这个密钥是什么。

+0

所以,如果我创造我自己的.SNK file..then每个组件都有其自己的.snk文件或将常见的其他dlls.Beacause,在其应用中,具有多个子工程,每个项目引用相同的文件PublicPrivateKeyFile他们.SNK – user1758412

相关问题