30.12.2001
IT
Здравствуйте serginio, Вы писали:

S>Необходимо реализовать печать на матричный принтер с использованием его ПЗУ-шных шрифтов (иначе он слишком медленно печатает) из-под WinNT WS.


void OnPrintText (LPTSTR PrnName)
{
    HANDLE  prn = NULL;

    DOC_INFO_1  docInfo;
    docInfo.pDocName    = "Text Mode";
    docInfo.pOutputFile = NULL;
    docInfo.pDatatype   = NULL;

    if (::OpenPrinter(PrnName,&prn,NULL)) {
        if (::StartDocPrinter(prn,1,LPBYTE(&docInfo))) {
            if (::StartPagePrinter(prn)) {
                DWORD cw;

                // начало вывода данных
                ::WritePrinter(prn,"123456",sizeof("123456")-1,&cw);
                ::WritePrinter(prn,"\r\n",2,&cw);
                // окончание вывода данных

                ::EndPagePrinter(prn);
            }
            ::EndDocPrinter(prn);
        }
        ::ClosePrinter(prn);
    }
}
08.08.2001
IT
Функция GetLastError позволяет получать код последней ошибки. При этом, сам код ошибки может сказать Вам о многом, но иногда нужно ещё и сказать об этом пользователю, выдав вразумительное сообщение. И конечно же лучший вариант - получить текст сообщения об ошибке от самой операционной системы.
<  1  …  25  26  27  28  29  30  31   rss