2009-08-10 5 views
0

私はiPhoneを使って正常に完了した通知をプッシュしようとしています。しかし、私はC#を使用してAppleのプッシュサーバーへのソケット接続を開くことができません。私が正常にPHPでこのコードを使用してプッシュ通知をすることができるよので、私は、証明書自体に問題はないと思う:.NETでのiPhoneへの通知をプッシュできません - .PEM証明書の問題?

$ctx = stream_context_create(); 

stream_context_set_option($ctx, 'ssl', 'local_cert', 'cert.pem'); 

$fp = stream_socket_client('ssl://gateway.push.apple.com:2195', $err, $errstr, 60, STREAM_CLIENT_CONNECT, $ctx); 

fwrite($fp, $msg); 

を、私は以下のコードを使用してC#で認証しようとすると、Appleが閉じすぐに接続。この例外が発生します。「トランスポート接続からデータを読み取ることができません:既存の接続はリモートホストによって強制的に閉じられました」

sslStream.AuthenticateAsClient(hostname, certificatesCollection, SslProtocols.Default, false); 

私は基本的に、この質問からすべての私のコードを取った:C# iPhone push server?

を私はC#はあなただけのプログラムでファイルを.PEM読み込むことができないと思うので、それは証明書に問題があるかもしれないと思いました。私はOpenSSLを.PFXファイルに変換するために使用しましたが、私はまだ同じ問題を抱えています。

この(証明書の)問題のトラブルシューティング方法を知りたい場合は、

答えて

0

これは、.NET 2.0では実際問題であることが判明しました。それが何であるかはっきりしていませんが、私はVisual Studio 2008でコンパイルしました。

関連する問題