"编译Outlook 2010加载项时签名时出错:密钥在指定状态下无效"

Nic*_*byn 5 c# signing visual-studio-2010 outlook-addin

我正在构建一个Outlook 2010加载项,它将使用票证系统的API与我们的票证系统绑定.一周前,我能够编译并获得正确执行其功能的上下文/功能区菜单.今天早上我添加了一些函数来加密和解密API密钥,但现在当我尝试编译时,我得到了

"错误1签名时发生错误:密钥无法在指定状态下使用."

没有与错误关联的行号或文件.起初我认为这是我已经包含的System.Security类,但是注释掉与此相关的所有内容并删除对System.Security的引用并没有解决问题.

我已经尝试重新启动所有内容并进行干净的构建而没有运气.在这个论坛帖子的建议我尝试删除我的机器和本地RSA文件,但没有任何区别.我还尝试删除我的解决方案中的_TemporaryKey.pfx文件,希望如果有问题,VS会重新创建一个新的工作,但是甚至没有更改错误消息告诉我文件丢失了.

毕竟,我尝试打开一个不同的加载项目,我没有修改大约一个星期,它也有同样的错误.我不确定此时是否存在Visual Studio或我的计算机的问题,但是一个全新的Outlook加载项项目将成功编译,因此它只影响旧项目.

Nic*_*byn 11

创建新的测试证书似乎已经解决了这个问题. 这篇博客文章指出了我正确的方向.

  • 打开提供错误的项目的属性页面.
  • 单击"签名"选项卡.
  • 单击创建测试证书.
  • 输入密码,然后单击"确定".

这让我的事情再次起作用.