Эх, сколько бьюсь, пока все без толку
. Появилось два вопроса:
1. Требуется ли каждый раз пересобирать libCURL после пересборки OpenSSL? (в курле указываю юзать динамический OpenSSL)
2. Посмотрел либы в Dependency Walker. Версии MSVCRT совпадают и других стандартных либ тоже. Затем сделал профилирование (она же насколько понял и отладка) и получил ошибочки при совершении запросов на защищенные ресурсы.
Цитата
...
GetProcAddress(0x00400000 [APP.EXE], "_OPENSSL_isservice") called from "LIBEAY32.DLL" at address 0x004A5D45 and returned NULL. Error: (127).
..
GetProcAddress(0x76910000 [KERNEL32.DLL], "CloseToolhelp32Snapshot") called from "LIBEAY32.DLL" at address 0x00512212 and returned NULL. Error: (127)..
...
MSDN об ошибке:
Цитата
ERROR_PROC_NOT_FOUND 127 (0x7F)
The specified procedure could not be found.
В целом наводит на мысль, что не может он адреса экспортируемых функций из дллки вытащить. Какие меры можно предпринять, чтобы стать еще ближе к причине проблемы? Может, имена экспортируемых функций не совпадают (кривой экспорт?) или еще что-то?
Смотрим
Таблица экспорта libeay32.dll и на строке 4051 видим:
Цитата
OPENSSL_isservice (Ordinal: 4 048, Entry Point RVA: 16c0h (5 824))
Вначале черточки нету. WTF? Не уж то ли прибегнуть придется к
-fno-leading-underscore?
Эх, сколько бьюсь, пока все без толку
. Появилось два вопроса:
1. Требуется ли каждый раз пересобирать libCURL после пересборки OpenSSL? (в курле указываю юзать динамический OpenSSL)
2. Посмотрел либы в Dependency Walker. Версии MSVCRT совпадают и других стандартных либ тоже. Затем сделал профилирование (она же насколько понял и отладка) и получил ошибочки при совершении запросов на защищенные ресурсы.
Цитата
...
GetProcAddress(0x00400000 [APP.EXE], "_OPENSSL_isservice") called from "LIBEAY32.DLL" at address 0x004A5D45 and returned NULL. Error: (127).
..
GetProcAddress(0x76910000 [KERNEL32.DLL], "CloseToolhelp32Snapshot") called from "LIBEAY32.DLL" at address 0x00512212 and returned NULL. Error: (127)..
...
MSDN об ошибке:
Цитата
ERROR_PROC_NOT_FOUND 127 (0x7F)
The specified procedure could not be found.
В целом наводит на мысль, что не может он адреса экспортируемых функций из дллки вытащить. Какие меры можно предпринять, чтобы стать еще ближе к причине проблемы? Может, имена экспортируемых функций не совпадают (кривой экспорт?) или еще что-то?
Смотрим
Таблица экспорта libeay32.dll и на строке 4051 видим:
Цитата
OPENSSL_isservice (Ordinal: 4 048, Entry Point RVA: 16c0h (5 824))
Вначале черточки нету. Мжет ли быть эта черточка виной и почему так могло произойти?