» Форум Oni https://forum.onimia.net/index.php » Oni https://forum.onimia.net/viewforum.php?id=2 » Описание vtuneapi.dll https://forum.onimia.net/viewtopic.php?id=237 |
deniskamu » 21-03-2009 01:44:21 |
Где можно найти интерфейс интегрирования в игру vtuneapi.dll . |
Sfeli » 22-03-2009 06:16:41 |
deniskamu, нет интерфейса. Делаешь DLL с двумя экспортами void VtPauseSampling(void) и void VtResumeSampling(void). В DllMain по DLL_PROCESS_ATTACH патчишь код и данные в движке (не забывая про VirtualProtect). Без ассемблера, имхо, у тебя вряд ли что получится. Что делать-то собираешься? Пни меня в аську (в профиле), если хочешь. |
deniskamu » 22-03-2009 12:48:09 |
Да так, хотел на Delphi или Си поиграться. |
Sfeli » 22-03-2009 15:16:51 |
Функции нужны, чтобы EXE загрузил DLL-ку, ничего полезно в них писать не нужно, хотя exe-шник дёргает их по нажатию того, что забиндено на profile_toggle (см. у меня VtXSampling). А даодан при загрузке заменяет куски кода своими + умеет регистрировать скриптовые функции (особенно Си-вариант, который так и не дожил до паблика). Без ассемблера можно. Дельфи не катит ? нужен Си-компилятор, понимающий соглашение MS-fastcall (GCC, Pelles C, MSVC). Идея та же: при загрузке хукать всё, что нужно, но чтобы похукать, минимум асма знать надо (хотя можно просто выдрать DDrPatch* из последнего асм-даодана). |