Вниз
Скачать: CL | DM;

Вызов из DLL   Найти похожие ветки 

← →
Jay1982 ©   (2004-12-27 16:16) [0]

Как не используя юнит вытянуть функцию/процедуру из ДЛЛ, в юните делаю так:

interface

procedure Sleep(ms: LongWord); stdcall;

implementation

procedure Sleep; external "kernel32.dll" name "Sleep";

всё работает, но для этого надо создавать дополнительный юнит


← →
Sandman25 ©   (2004-12-27 16:19) [1]

LoadLibrary


← →
Jay1982 ©   (2004-12-27 16:24) [2]

Об этом я тоже вкурсе, думал может макаром описанным мною выше как-то можно


← →
Sandman25 ©   (2004-12-27 16:26) [3]

Можно написать procedure Sleep; external "kernel32.dll" name "Sleep"; прямо перед вызовом, тогда дополнительный модуль не понадобится


← →
Jay1982 ©   (2004-12-27 16:31) [4]

Но в этом случае процедуре не передаются параметры


← →
Sandman25 ©   (2004-12-27 16:32) [5]

procedure Sleep(ms: LongWord); stdcall; external "kernel32.dll" name "Sleep";

external + F1


← →
Jay1982 ©   (2004-12-27 16:39) [6]

Так вроде писал но вместо задержки указаной в милисекундах получилась вечная задержка


← →
Fay ©   (2004-12-27 16:40) [7]

Ошибка в 17-й строке


← →
Jay1982 ©   (2004-12-27 16:41) [8]

Написал так

procedure Sleep(ms: Cardinal); stdcall; external "kernel32.dll" name "Sleep";

Всё работает, спасибо за советы


← →
Jay1982 ©   (2004-12-27 16:43) [9]

2 Sandman25 - Видимо что-то пропускал;
2 Fay - я писал всего одну, а не 17


← →
Fay ©   (2004-12-27 16:46) [10]

А, понятно.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.022 c
1-1104345661
GuAV
2004-12-29 21:41
2005.01.16
DllEntryPoint( .. DLL_PROCESS_DETACH .. ) => finalization ?


1-1104212175
Mate_ru
2004-12-28 08:36
2005.01.16
параметры


1-1104241599
snake_r
2004-12-28 16:46
2005.01.16
Свой хинт для каждого узла дерева


1-1103885197
ivc_andr
2004-12-24 13:46
2005.01.16
Check в DBGrid


9-1096925934
Jack
2004-10-05 01:38
2005.01.16
опять по GLScene ?




   Наверх