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

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

Проверка готовности принтера [Win2k]


xmapa ©   (2003-04-17 16:34:00) 

При попытке проверить готовность принтера с помощью
нижеприведенной функции PrinterReady возникает
Access Violation на инструкции int 17h.
В чем причина? Каким образом это можно обойти?



function PrinterReady : Boolean; assembler;
asm
xor eax,eax
xor edx,edx
mov ah,2
int 17h
cmp ah,090h
jz @Ready
xor eax,eax
ret
@Ready:
mov eax,1
end;


DC-AC   (2003-04-18 07:52:00) [1]

1. uses winspool - универсальный способ, но причины ошибки (неготовности) почти не детализируются.
2. открыть LPT при помощи WinAPI и запросить статус принтера (как - зависит от конкретного принтера)


Fiend   (2003-04-17 17:00:00) [2]

Проще открыть ком порт и проверить состояние сигналов.
Так вернее и работать будет везде


MBo   (2003-04-17 16:43:00) [3]

>int 17h
не стоит в 2K вызывать прерывание.
Наверняка есть высокоуровневые функции


Наверх

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