Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

В чём ошибка?


Шишкин Илья ©   (2003-01-15 17:25:00) 

Создаю dll:

library MyDll;


{$R *.RES}


function Kvadrat(x:integer):integer; Export;
begin
Result:=x*x;
end;

exports
Kvadrat index 1;


begin
end.


Компилирую

Затем в новом проекте объявляю функцию

function Kvadrat(x:integer):integer;external "MyDll" index 1;

И при нажатии кнопки пишу

y:=Kvadrat(x);

Почему при закрытии окна выдаётся RunTime Error?


Skier   (2003-01-15 18:58:00) [1]

>Шишкин Илья


> А какую роль имеет stdcall?

Можно и без него тогда будет использоваться соглашение register
(по умолчанию)

> Что это обозначает?

Способ передачи параметров
(F1 нажми...:) )


Шишкин Илья   (2003-01-15 18:53:00) [2]

2 Skier
А какую роль имеет stdcall? Что это обозначает?
2 Smithson
Ошибка где-то здесь, так как я писал всё это только для ознакомления с dll (это весь код)


Skier   (2003-01-15 17:52:00) [3]

function Kvadrat(x:integer):integer; stdcall;
begin
Result:=x*x;
end;

exports
Kvadrat index 1;


begin
end.

//..................................

function Kvadrat(x:integer):integer; stdcall;
external "MyDll" index 1;

Не поможет ?


Smithson   (2003-01-15 17:45:00) [4]

Видимо, ошибка не в приведенном коде. Покажи все.


D   (2003-01-15 17:30:00) [5]

Может, надо загрузить библ-ку (LoadLibrary)?


Наверх

Титульная страница Поиск, карта сайта Написать письмо