Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.06;
Скачать: 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 вся ветка

Текущий архив: 2005.06.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.047 c
9-1110470642
electroowl
2005-03-10 19:04
2005.06.06
Помогите установить glscene!!!


3-1114505812
MakNik
2005-04-26 12:56
2005.06.06
Сравнение строк


14-1116274252
aga
2005-05-17 00:10
2005.06.06
XP prof vs XP home


1-1116423009
lehich
2005-05-18 17:30
2005.06.06
разбить содержимое StringList на строки


8-1108643274
Shizuku
2005-02-17 15:27
2005.06.06
Проиграть mp3