c# - 无法在类库应用程序中找到 security.dll 库

标签 c# .net sockets ssl class-library

我尝试在类库应用程序上使用 ssl 连接,但我尝试进行身份验证 作为服务器的客户端,我收到以下错误消息。

“无法在 DLL“security.dll”中找到名为“EnumerateSecurityPackagesW”的入口点。”

有这方面的 body 经验吗?

最佳答案

Security.dll 与包含用于身份验证的 SSPI 实现的 Windows DLL 同名。加载 DLL 时,将先检查本地 bin 目录,然后再检查 Windows 目录。因此,正在加载您的 System.dll 而不是 SSPI System.dll。

因此,如果在某些情况下您的自定义 Security.dll 之前加载 c:\winnt\system32\security.dll 然后 LoadLibrary 认为它有 dll 已经加载(因为它只是一个 Win32 Dll,只有名称很重要,与版本无关 信息)。但正如我们所知,这不是正确的 dll,因此 问题。

解决方法是更改​​ dll 名称。

关于c# - 无法在类库应用程序中找到 security.dll 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9289715/

相关文章:

c# - Xamarin Forms 向左滑动/向右滑动手势

c# - 在 IIS 中运行的 C# 网站中添加新的 .cs 文件

c# - 覆盖具有 'dibs' 的类型的 Equals 和 GetHashCode?

c++ - libsigc++ 并将一个函数作为信号连接到另一个函数作为槽

c++ - IOCP 关键部分设计

c# - 在 C# 中动态创建和公开 SOAP 服务及其 WSDL(使用自定义 TCP 监听器!)

c# - 选项卡上的文本框 SelectAll 但不是鼠标单击

c# - 使用ajax显示odata信息的调用查询

c# - 如何从字符串创建可读的日期和时间?

java - 当 ServerSocket 在 accept() 上阻塞时通知另一个线程