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