2012-02-15 79 views
1

我有一個類庫應用程序,我嘗試使用SSL連接。 但是當我試圖獲得身份驗證作爲客戶端,服務器,我得到了以下錯誤消息:當使用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 2012-02-15 07:11:58

+0

我有同樣的問題 – 2012-02-15 07:27:57

回答

2

你能否使用你的類庫檢查security.dll庫文件是否可用於應用程序?

你的第一個應用程序似乎需要這個本地庫。檢查它是否包含在應用程序可執行文件中。

第二個應用程序引用您的自定義類庫,這顯然無法加載Security.dll的本地DLL

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

你應該比較包含兩個應用程序的目錄,並可能包括在第二應用缺席的DLL 。

+0

我在哪裏可以找到它? – 2012-02-15 07:34:50

+0

我更新了我的帖子。 – Eilistraee 2012-02-15 07:54:03

相關問題