2012-02-15 76 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

相关问题