Гайд Как выгружать DLL / Unload

bibitka
Пользователь
Статус
Оффлайн
Регистрация
26 Июн 2020
Сообщения
133
Реакции[?]
66
Поинты[?]
0
Определенно, я тут не гуру языка, но разве освободить всю память и анхункуть != выгрузить длл ? Так как физически длл в процессе больше нет и всё работает так же, будто её и не было. Я перечислил основные "правила", как произвести анлоад для новичков ( тех, кто хоть слегка шарит в плюсах и умеет думать головой, им то это вполне моет быть полез ).

Про остальное я промолчу, потому что ясное дело я тут не хвх биг бой кодер с 2013. Но единственный момент не очень понятен. По поводу кастования в HMODULE. Аргумент для основного потока - LPVOID lpReserved, а при создании потока через CreateThread(0, 0, main, hModule, 0, 0) В качестве аргумента для функции main идёт тот HMODULE hModule из DllMain'а. Порывшись в интернете можно найти объяснение этого самого типа LPVOID - указатель на любой тип. Соответственно передавая в качестве аргумента HMODULE и потом кастуя его обрано в него же мы не получим хлопка вселенной и всё будет нормально
1637527371348.png
 
Сверху Снизу