我们刚刚将一个 XBAP/WBA 项目添加到我们的构建服务器中。它使用 PFX 文件进行签名。我将 PFX 文件导入到 CruiseControl.NET 服务证书存储中,并且可以在服务的证书存储中看到它。然而,我们仍然看到ResoveKeySource抛出异常:
c:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets (1805,7):errorMSB4018:“ResolveKeySource”任务意外失败。System.InvalidOperationException:当应用程序未在 UserInteractive 模式下运行时显示模式对话框或表单不是有效操作。指定 ServiceNotification 或 DefaultDesktopOnly 样式以显示来自服务应用程序的通知。在 System.Windows.Forms.Form.ShowDialog(IWin32Window 所有者)
我还启用了(希望不仅仅是知识)该服务与桌面交互。
有没有人看到这种行为或可以推荐另一种方法?我知道我可以以用户身份运行 CruiseControl.NET(解决方案是从命令行编译),但如果可能的话,我想避免,因为所有权限都是针对服务帐户配置的,并且更愿意作为服务运行。