APNs-sharp库无法在Windows Server 2008上运行,CryptographicException

时间:2011-06-08 19:12:08

标签: asp.net visual-studio-2010 windows-server-2008-r2 apns-sharp

我有一个使用APNs-Sharp库发送推送通知的asp.net应用程序。它在我的本地机器上工作正常但是当我发布到Windows 2008 r2服务器机器时,我收到以下错误:

System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr)
   at System.Security.Cryptography.X509Certificates.X509Utils._LoadCertFromBlob(Byte[] rawData, IntPtr password, UInt32 dwFlags, Boolean persistKeySet, SafeCertContextHandle& pCertCtx)
   at System.Security.Cryptography.X509Certificates.X509Certificate.LoadCertificateFromBlob(Byte[] rawData, Object password, X509KeyStorageFlags keyStorageFlags)
   at System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(Byte[] rawData, String password)
   at JdSoft.Apple.Apns.Notifications.NotificationConnection.start(String p12File, String p12FilePassword)
   at JdSoft.Apple.Apns.Notifications.NotificationService.set_Connections(Int32 value)
   at JdSoft.Apple.Apns.Notifications.NotificationService..ctor(Boolean sandbox, String p12File, String p12FilePassword, Int32 connections)

我不确定为什么它只在服务器机器上出现此错误..有没有人对问题可能有任何想法?

我在代码中添加了一个检查,以查看证书文件是否可以在服务器上找到。密码是正确的。所以我唯一想到的就是它与windows server 2008 r2有关。

1 个答案:

答案 0 :(得分:2)

找到了解决方案。在iis管理控制台中,您必须将默认应用程序池标识设置为本地系统。