- Код: Выделить всё
function PlayerConnect(id:integer):integer; export;
...
function PlayerConnect(id:integer):integer;
begin
Showmessage(inttostr(id));
end;
Импортирую эту-же функцию в си:
- Код: Выделить всё
int (*PlayerConnect)(int);
...
(FARPROC &)PlayerConnect = GetProcAddress(hLib, "PlayerConnect");
Вызываю:
PlayerConnect(12);
В результате ShowMessage выписывает 0
Так происходит с любым значением в функции. Насколько я понимаю, тут имеет место несовместимость типов... Но до этого подобный код идеально работал.

В чем проблема?