Форум Oni

Русскоязычный форум поклонников игры «Они» от Bungie

  • Здравствуйте, Гость

#1 21-03-2009 01:44:21

deniskamu (муж.)
Цивил
Регистрация: 24-08-2007
Сообщений: 6
Профиль

Описание vtuneapi.dll

Где можно найти интерфейс интегрирования в игру vtuneapi.dll .
Исходник basic.asm на ассемблере, ничего не понятно.


Апдейт.

Оффлайн

 

#2 22-03-2009 06:16:41

Sfeli (муж.)
 
Регистрация: 31-12-2006
Сообщений: 212
Профиль

Re: Описание vtuneapi.dll

deniskamu, нет интерфейса. Делаешь DLL с двумя экспортами void VtPauseSampling(void) и void VtResumeSampling(void). В DllMain по DLL_PROCESS_ATTACH патчишь код и данные в движке (не забывая про VirtualProtect). Без ассемблера, имхо, у тебя вряд ли что получится. Что делать-то собираешься? Пни меня в аську (в профиле), если хочешь.


Died. Completely.

Оффлайн

 

#3 22-03-2009 12:48:09

deniskamu (муж.)
Цивил
Регистрация: 24-08-2007
Сообщений: 6
Профиль

Re: Описание vtuneapi.dll

Да так, хотел на Delphi или Си поиграться.
Обе процедуры void, без параметров,
как они с екзешником общаются ?
Но если без ассемблера никак, то туда не подъехать.


Апдейт.

Оффлайн

 

#4 22-03-2009 15:16:51

Sfeli (муж.)
 
Регистрация: 31-12-2006
Сообщений: 212
Профиль

Re: Описание vtuneapi.dll

Функции нужны, чтобы EXE загрузил DLL-ку, ничего полезно в них писать не нужно, хотя exe-шник дёргает их по нажатию того, что забиндено на profile_toggle (см. у меня VtXSampling). А даодан при загрузке заменяет куски кода своими + умеет регистрировать скриптовые функции (особенно Си-вариант, который так и не дожил до паблика). Без ассемблера можно. Дельфи не катит ? нужен Си-компилятор, понимающий соглашение MS-fastcall (GCC, Pelles C, MSVC). Идея та же: при загрузке хукать всё, что нужно, но чтобы похукать, минимум асма знать надо (хотя можно просто выдрать DDrPatch* из последнего асм-даодана).

Отредактировал(а) Sfeli (22-03-2009 15:19:55)


Died. Completely.

Оффлайн

 

Board footer

© 2006-2024 Амэ & Mih@
ОНИмия – фан-сайт игры Oni
Движок форума - модифицированный PunBB