Вниз
Скачать: 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.026 c
1-1116508485
-=SSS=-
2005-05-19 17:14
2005.06.06
Диспатч контрола


14-1116400799
DelphiN!
2005-05-18 11:19
2005.06.06
Отправка служебных комманд на чековый принтер Samsung SRP350


9-1110470642
electroowl
2005-03-10 19:04
2005.06.06
Помогите установить glscene!!!


6-1111323428
nes
2005-03-20 15:57
2005.06.06
IdTCPClient и IdTCPServer


4-1113542877
LineSoft
2005-04-15 09:27
2005.06.06
Управление печатью




   Наверх