Всем привет. Буду краток.
Подскажите, если подложить самописный dll в архив mpq, то можно ли как-то использовать его функции внутри war3map.j?
И запустится ли вообще карта?
Подскажите, если подложить самописный dll в архив mpq, то можно ли как-то использовать его функции внутри war3map.j?
И запустится ли вообще карта?
Версия игры 1.27b.
Принятый ответ
Нужна функция ExportAndInjectDLL (название примерное), она есть в первом и втором мемхаке расчитанным на 126, не осведомлён о возможностях 127b, если там только чтение памяти без записи, то ничего не получится.
Так что если вы думаете, что мемхаки одинаковые то это не так. Хотя могу использовать одну и ту же библиотеку
Так что если вы думаете, что мемхаки одинаковые то это не так. Хотя могу использовать одну и ту же библиотеку
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован Rejuvenation
Анрайз же выкатил свой мемхак 1.5 версии, там добавил поддержку для 1.27b и 1.28f и ушел в закат. У меня не получилось все это сделать для своей карты, а помочь пока что никто не может.
Думал может как-то можно без мемхака обойтись и через самописный dll это проверять с WinAPI. Но если без мемхака никак не подружить dll с jass, то понятно.
Спасибо за советы, я нашел и ExportAndInjectDLL, и LoadLibraryA
Но у меня не получается его засэтапить для 27 версии.
Отредактирован Rejuvenation
call Init_APIMemory() API for general memory read/write management, everything else depends on this!
call Init_APIMemoryCalls() API for tapping into std/this/cdecl calls and much more, pretty much core of everything.
call Init_APIMemoryBitwise() API for bitwise operations many other functions use this.
call Init_APIMemoryKernel() API for accessing some of the WinAPI functions, mostly needed for VirtualProtect.
call Init_APIMemoryRestorer() API that is responsible for cleaning up all memory modifications after exiting the map.
call Init_APIMemoryString() API for getting/setting strings from/into memory, most functions use this!
call Init_AntiHack() Not required, this only works on 1.26a and a bit on 1.27b, as it states it counters hacks.