У меня есть С++ DLL, которая используется для аутентификации, которая загружается службой Windows для каждого входа.
В этой DLL я использую функцию ADSI Windows ADsOpenObject(), чтобы получить объект пользователя из Active Directory.
HRESULT hr = ADsOpenObject(L"LDAP://rootDSE",
L"username",
L"password",
m_dwADSFlags,
IID_IDirectorySearch,
(void**)&m_DSSearch);
Как правило, это работает с годами. Но в настоящее время я получаю код ошибки
-2147024882 (0x8007000E)
который OUT_OF_MEMORY. Когда я перезапускаю службу, использующую мою DLL, она работает отлично в течение нескольких недель, но затем начинают происходить ошибки.
Теперь я не могу найти , что не хватает памяти. Планировщик задач выглядит отлично, а свободной памяти много.
Что я могу сделать, чтобы исправить это?