2

我们从另一家公司购买了一个带有源代码的软件。但是当我构建它时,发生了两个错误。我对此进行了很多研究。但找不到解决办法。通常.snk文件用于 DLL(将其添加到 GAC 全局程序集缓存中)我无法PublicPrivateKeyFile.snk在 app 文件夹或任何地方找到。应用程序引用 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

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

4

1 回答 1

1

你不能。没有他们的.snk(强名称密钥文件),您无法以他们的身份签名。AssemblyInfo.cs在类内部查找指令[assembly: ReferenceKeyFile]并将其注释掉以删除签名。然后,您将能够在本地使用它。

第二种选择是为.dll. 然后通过各种方法确保对该公钥的所有引用都是相同的,并弄清楚该密钥是什么。

于 2012-10-19T06:45:39.920 回答