RequestPrinterStatus

Рендиране и печат

Описание

Използвайте тази функция, за да активирате алтернативна система за печат, която позволява връщане на статуса на принтера. Много от върнатите кодове за статус се подават от драйвера на принтера и няма гаранция, че стойностите ще съдържат смислена информация за всички принтери

Първата стъпка е да извикате тази функция с StatusCommand=101, за да включите наблюдението на статуса на принтера. По желание печатното задание може да бъде стартирано в паузирано състояние, като извикате тази функция отново със StatusCommand=103. Това може да е необходимо за малки печатни задания, които иначе биха завършили, преди статусът да може да бъде прочетен

След това печатното задание може да бъде стартирано по обичайния начин с една от функциите за печат: PrintDocument, PrintDocumentToFile или

PrintDocumentToPrinterObject

След като печатното задание е стартирано, тази функция може да бъде извиквана отново многократно, за да се получава статусът на принтера за печатното задание с течение на времето. Ако заданието е стартирано в паузирано състояние, самото печатане ще започне едва когато тази функция бъде извикана със StatusCommand=402

Синтаксис

Delphi

Function TPDFlib.RequestPrinterStatus(StatusCommand: Integer): Integer;

ActiveX

Function PDFlib::RequestPrinterStatus(StatusCommand As Long) As Long

DLL

int DLRequestPrinterStatus(int InstanceID, int StatusCommand);

Параметри

StatusCommand100 = Изключва наблюдението на статуса на принтера 101 = Включва наблюдението на статуса на принтера 102 = Връща 1, ако наблюдението на статуса на принтера е активно 103 = Стартира печатното задание в паузирано състояние 104 = Стартира печатането незабавно 105 = Връща 1, ако печатното задание ще бъде стартирано в паузирано състояние 200 = Връща 1, ако съществуват данни за печатното задание 201 = Връща JobID на Windows Spooler 202 = Връща приоритета на заданието, от 1 до 99 203 = Връща позицията на заданието в опашката за печат 204 = Връща общия брой страници 205 = Връща броя на страниците, които са отпечатани. Обикновено това е нула, ако типът данни е "RAW" 206 = Връща броя на милисекундите, изминали от стартирането на печатното задание 207 = Връща типа данни на печатното задание Връща 1, ако типът данни съдържа "RAW" Връща 2, ако типът данни съдържа "EMF" Връща 3, ако типът данни съдържа "TEXT" Връща 4, ако типът данни съдържа "XPS" 300 = Връща кодиран статус на заданието 301 = Връща 1, ако заданието е паузирано 302 = Връща 1, ако има грешка 303 = Връща 1, ако заданието се изтрива 304 = Връща 1, ако заданието се спулва 305 = Връща 1, ако заданието се печата 306 = Връща 1, ако принтерът е офлайн 307 = Връща 1, ако в принтера няма хартия 308 = Връща 1, ако заданието е отпечатано 309 = Връща 1, ако заданието е изтрито 310 = Връща 1, ако драйверът не може да отпечата печатното задание 311 = Връща 1, ако принтерът има грешка, която изисква потребителят да направи нещо 312 = Връща 1, ако заданието е стартирано отново 313 = За Windows XP и по-нови, връща 1, ако заданието е изпратено до принтера, като то може още да не е отпечатано 314 = За Windows Vista и по-нови, връща 1, ако заданието е задържано в опашката за печат и не може да бъде изтрито 401 = Пауза на печатното задание 402 = Продължаване на паузирано печатно задание 403 = Изтриване на печатното задание