SymLoadModuleEx возвращает ERROR_INVALID_ADDRESS

я использую SymLoadModuleEx от Dbghelp.h поставляется с VS2015. Функция работает только один раз и возвращает ERROR_INVALID_ADDRESS для следующих звонков. Когда я изменяю порядок вызовов, чтобы он вызывался для другой DLL (совершенно другой, даже находящейся в другом месте), он работает один раз и возвращает ERROR_INVALID_ADDRESS для других.

Это означает, что это не проблема загруженной DLL, потому что она не работает независимо от первой DLL.

Его инициализируется как:

SymSetOptions(SYMOPT_UNDNAME | SYMOPT_LOAD_LINES);
SymInitialize(CurrentProcessHandle = GetCurrentProcess(), nullptr, true);

И называется как:

SymLoadModuleEx(CurrentProcessHandle, nullptr, DllName.c_str(), nullptr, dwBaseAddr, 0, nullptr, 0);

DllName является правильным, а dwBaseAddr равен 0.

В соответствии с Функция MSDN SymLoadModuleEx все должно работать просто отлично.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector