Невозможно найти библиотеку security.dll в приложении библиотеки классов - PullRequest
1 голос
/ 15 февраля 2012

Я пытаюсь использовать ssl-соединение в приложении библиотеки классов, но я пытался аутентифицироваться как клиент на сервер я получил следующее сообщение об ошибке.

"Невозможно найти точку входа с именем 'EnumerateSecurityPackagesW' в DLL 'security.dll'."

Есть ли какие-либо телесные переживания по этому поводу?

1 Ответ

1 голос
/ 15 февраля 2012

Security.dll - это то же имя для Windows DLL, содержащей реализацию SSPI, которая используется для аутентификации. При загрузке DLL, локальный каталог bin будет проверен перед каталогом Windows. В результате ваша System.dll загружается вместо SSPI System.dll.

Так что, если в определенных ситуациях ваш файл Security.dll загружается раньше c: \ winnt \ system32 \ security.dll, тогда LoadLibrary считает, что имеет DLL уже загружен (так как это просто Win32 Dll, только имя имеет значение, а не версия Информация). Но, как мы знаем, это не правильная DLL и, следовательно, проблема.

Обходной путь должен изменить имя DLL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...