Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Пользователь


Сообщения: 57
Благодарности: 1

Профиль | Отправить PM | Цитировать


dll загрузил, пробую общаться с ней, но ничего не получается.
В библиотеке простая функция инкремента:
Код: Выделить весь код
int inc (int *d)
{
   return ++(*d);
}
Прописал библиотеку как было сказано выше:
Код: Выделить весь код
[Files]
Source: testDll.dll; Flags: dontcopy

[*code] // тут без * (как вставить прально незнаю)
function inc(size: integer):integer;
external 'inc@files:testDll.dll stdcall';
обращаюсь к функции
Код: Выделить весь код
FUNCTION NextButtonClick(CurPageID: Integer): Boolean;
VAR
 i: integer;
  
BEGIN
  i := 10;
  i := inc(i);
  MsgBox('getListDevices = '+IntToStr(i), mbInformation, MB_OK);
  Result := True;
END;
при выполнении получаю:
Код: Выделить весь код
Runtime Error (at 4:47):
Access violation at address 631C1205. Write of address 0000000A.

Отправлено: 18:36, 06-10-2011 | #3423