V>Так вот, при первом вызове из потока ф-ция TlsGetValue(dwTlsIndex) всегда возвращает NULL. Если снова вызвать TlsSetValue (уже в теле потока), то все начинает работать нормально. Другими словами — куда пропал указатель lpvData, изначально сохраненный в функции DLLMain? Или так и должно быть? Или я где-то туплю? V>Заранее спасибо за ответы.
1) поток, который выделен в тексте, является ли тем потоком, который загрузил dll?
если ответ на вопрос 1) — "нет" — то другой вопрос: 2) поток, который выделен в тексте, запущен ли он после загрузки dll?
если ответ на вопросы 1) и 2) — нет — то так и должно быть, ибо ни DLL_PROCESS_ATTACH ни DLL_THREAD_ATTACH не приходят для других потоков приложения, которые стартовали до загрузки длл.
Как много веселых ребят, и все делают велосипед...