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

Дельфийский ассемблер   Найти похожие ветки 

 
microcomp ©   (2005-05-19 15:14) [0]

Ув. Как из дельфийского асма корректно вызвать виндовую функцию (покажите пример) в частности - вот код для чистого ассемблера:

.loopbegin:
;... делаем какието операции ...
memcall _GetAsyncKeyState,VK_ESCAPE
test eax,eax
jz .loopbegin
;... делаем выход....

Делает этот кусок кода простую вещь - проверяет нажата ли клавиша "Esc". Если да, выходим из цикла.


 
Marser ©   (2005-05-19 15:24) [1]

Толкаем (push) в стек все параметры в соответствии с stdcall-соглашением и вызываем подпрограмму с помощью call ptr


 
begin...end ©   (2005-05-19 17:19) [2]

> microcomp ©   (19.05.05 15:14)

asm
   PUSH  VK_ESCAPE
   CALL  GetAsyncKeyState
   TEST  EAX, EAX
   JZ    @@up
   // клавиша нажата
   ...
@@up:
   // клавиша не нажата
   ...
end.


 
microcomp ©   (2005-05-19 17:33) [3]

begin...end >
CALL  GetAsyncKeyState - Ошибка
Что-то где-то нужно объявить.
Вот собственно и спрашиваю...


 
begin...end ©   (2005-05-19 17:36) [4]

> microcomp ©   (19.05.05 17:33) [3]

Добавить в список uses модуль Windows?


 
Digitman ©   (2005-05-19 18:04) [5]


> CALL  GetAsyncKeyState - Ошибка


CALL  Windows.GetAsyncKeyState



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

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



Память: 0.46 MB
Время: 0.023 c
1-1116526602
Tolyaka
2005-05-19 22:16
2005.06.06
своя форма поверх полноэкранного приложения


6-1111410897
redlord
2005-03-21 16:14
2005.06.06
работа в блокированном режиме


4-1113558922
Serr
2005-04-15 13:55
2005.06.06
связь


3-1114659400
Sergo
2005-04-28 07:36
2005.06.06
Confirm Delete


14-1116396012
Kerk
2005-05-18 10:00
2005.06.06
С днем рожденья! 18 мая




   Наверх