我最近获得了一个新的代码签名证书。我正在使用MSBuild的SignFile任务来签署应用程序清单。由于某种原因,任务正在返回:
MSB3481: The signing certificate could not be located.
Ensure that it is in the current user's personal store.
证书肯定在我的个人商店,我可以在certmgr.msc中看到它。我相信我以相同的用户身份登录,因为我可以使用同一个人商店中的不同证书对清单进行签名。不知道为什么找不到这个新证书。
我甚至可以使用signtool.exe和新证书的SHA1来正常签名文件。但我真的更喜欢使用现有的MSBuild和SignFile任务。任何想法可能会出错?
我也尝试使用和不使用完整的认证路径导入证书。
答案 0 :(得分:15)
我不确定这会有什么帮助,但我记得如果你是从管理单元字段复制指纹,那么就会有一个"隐形"第一个位置的符号。 所以这个不可打印的指纹不能放在你的商店里。尝试从证书指纹的开头删除3-5个符号(包括引号)并手动键入它们。
还要考虑到指纹应全部为大写(尽管该属性以小写形式显示)。