You are not logged in.
Как вызвать функцию в GTA SA, используя окошко, созданное на Delphi, при этом зная её адрес, количество и тип параметров? Знаю, что это делается в SB одним опкодом, но меня интересует именно такая реализация.
Offline
Какую функцию ты так хочешь вызвать? Покажи хоть код скрипта, который ты хочешь привязать к кнопке.
Offline
Если "окошко" это программа, то чтобы вызвать функцию из другого процесса, они должны находится в одном адресном пространстве. Проще всего написать .asi библиотеку, которая будет загружаться игрой и через которую можно делать все, что хочешь.
Offline
На gtabuilder.ru есть урок на спавн транспорта через asi. Код ниже. Мне нужно сделать, чтобы это выполнялось по нажатию кнопки на форме, а не как asi
#include "stdafx.h" //Объявляем прототип спавна auto _spawnCarAtPlayerLocation = (void (__cdecl*)(signed int modelIndex))0x04AE8F0; //Для клавиши bool isPress = false; //Код обработки нажатия M void Update() { if (!GetKeyState(0x4D) > 0 ) isPress = false; if ( (GetKeyState(0x4D) > 0 ) && (isPress == false) ) { isPress = true; _spawnCarAtPlayerLocation(162); } }; BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: //Тут установим таймер SetTimer(0,0, 16, (TIMERPROC)Update); break; case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; }
Offline