2012-02-15 10 views
1

私はSSL接続を使用しようとしているクラスライブラリアプリケーションを持っているを使用しては何ですか。私は、サーバーへのクライアントとして認証を取得しようとしたときに は、しかし、私は、次のエラーメッセージが表示されました:勝利フォームアプリケーションやクラスライブラリアプリ間のdiffrence SSL接続

ssl.AuthenticateAsClient("TargetHost"); 

「DLL 『security.dll』に 『EnumerateSecurityPackagesW』という名前のエントリポイントを見つけることができません。」

私は、Windowsアプリケーションでこのシナリオを行っている、それが正常に動作します。 これについて体の経験がありますか?

  SslStream ssl = null; 
      TcpClient client = new TcpClient(); 
      client.Connect("127.0.0.1", 9988); 

      NetworkStream _NetworkStream = client.GetStream(); 

      IPAddress ipAdd = IPAddress.Parse("127.0.0.1"); 
      IPEndPoint remoteEP = new IPEndPoint(ipAdd, 9988); 

      ssl = new SslStream(_NetworkStream, 
        false,new RemoteCertificateValidationCallback(CertificateValidationCallback)); 

       ssl.AuthenticateAsClient("TargetHost"); 
+0

あなたは完全なコードを投稿することができますか? – ASetty

+0

私は同じ問題を抱えています –

答えて

2

セキュリティライブラリファイルがクラスライブラリを使用してアプリケーションで使用できることを確認できますか?

あなたの最初のアプリは、このネイティブライブラリを必要としているようです。アプリケーション実行ファイルに含まれているかどうかを確認します。

二アプリは明らかに

"Unable to find an entry point named 'EnumerateSecurityPackagesW' in DLL 'security.dll'." 

security.dllネイティブDLLをロードできないカスタムクラスライブラリを、参照する次の2つのアプリを含むディレクトリを比較し、多分二アプリで不在のdllを含める必要があります。

+0

どこですか? –

+0

私の投稿を更新しました。 – Eilistraee