Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
1403 / 1260 / 262
Регистрация: 10.11.2013
Сообщений: 3,763
1

Получения сигнала о завершении печати

24.06.2014, 17:42. Показов 1047. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Суть проблемы проста - нужно получить сигнал что принтер закончил печать всех страниц.
Проблема в том, что QPrinter завершает свою работу намного раньше, зависит от принтера.
И в итоге получаем что функция печати уже завершилась, а принтер только начинает печать.
Нужно узнать когда принтер будет опять свободен. Для начала хотя бы для Win.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.06.2014, 17:42
Ответы с готовыми решениями:

Получения спектра сигнала
Вообщем есть функция сигнала (допустим синус на синус с разными частотами) и теперь мне надо...

Неоднозначность получения сигнала при добавлении класса
Здравствуйте. Добавил в класс наследование от QThread: class MainWindow : public QMainWindow,...

Схема алгоритма получения (печати) всех перестановок из n чисел
Помогите пожалуйста, нужна блок схема и код алгоритма получения (печати) всех перестановок из n...

Проверить, сколько микросекунд прошло с момента установки таймера функцией alarm() до получения сигнала
Помогите пожалуйста посчитать, вот задание Проверить, сколько микросекунд прошло с момента...

2
327 / 230 / 55
Регистрация: 30.05.2014
Сообщений: 682
24.06.2014, 17:59 2
Смотреть количество заданий в очереди спулера:

http://msdn.microsoft.com/en-u... 85%29.aspx
0
1403 / 1260 / 262
Регистрация: 10.11.2013
Сообщений: 3,763
03.07.2014, 18:17  [ТС] 3
Не помогло. Возвращает нули, а принтер печатает.
Пример (нашел в инете):
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
    HANDLE hPrinter;
    LPWSTR str;
    QString printerName = m_printer->printerName();
    str = (wchar_t*) malloc (sizeof(wchar_t)*printerName.length()+1);
    printerName.toWCharArray(str);
    str[printerName.length()]=0;
 
    if (OpenPrinter(str, &hPrinter, 0) == 0 )
    {
        qDebug() << "OpenPrinter call failed";
    } else {
        DWORD dwBufsize=0;
 
        //Getting some info from printer - particularly how many jobs
        GetPrinter(hPrinter, 2, NULL, 0, &dwBufsize);
 
        PRINTER_INFO_2* pinfo = (PRINTER_INFO_2*)malloc(dwBufsize);
        GetPrinter(hPrinter, 2,(LPBYTE)pinfo, dwBufsize, &dwBufsize);
        DWORD numJobs = pinfo->cJobs;
 
        qDebug() << "printer jobs left:" << numJobs << ", printer:" << m_printer->printerName();
        qDebug() << "status:" << pinfo->Status;
        qDebug() << "start time:" << pinfo->StartTime;
        qDebug() << "until time:" << pinfo->UntilTime;
        wprintf(pinfo->pPrinterName);
        free(pinfo);//free now
    }
В итоге получаю:
C++ (Qt)
1
2
3
4
5
printer jobs left: 0 , printer: "Samsung CLP-410 Series" 
status: 0 
start time: 0 
until time: 0 
Samsung CLP-410 Series
Судя по выхлопу - принтер оно нашло верно, так как структура верное имя содержит, но все остальные значения по нулям.
Данные берутся конкретно во время работы принтера.
0
03.07.2014, 18:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.07.2014, 18:17
Помогаю со студенческими работами здесь

Рассчитать, какое количество лет в среднем необходимо ожидать получения квартиры, и вывести на экран весь список с указанием ожидаемого года получения
Имеется список учета нуждающихся в улучшении жилищных условий. Каждая запись этого списка содержит...

Контроль печати: время печати, количество распечатанных страниц, название файла
Здравствуйте. К компьютеру на Windows XP подключено 2 принтера (хотя драйверов стоит на 4...

Обрезание текста и отключение границ при печати(ошибка во время печати)
Есть несколько excel документов с заголовками и таблицей. Есть 2 проблемы, при переходе в режим...

Как при печати отчета программно установить параметры печати?
как при печати отчета ( VBA ) программно установить параметры печати ( ширину полей )

Фабрика печати Epson или лазерный принтер для ч/б печати
Здравствуйте! Нужен практичный принтер с (!)дешёвой стоимостью печати. Печатаю в основном...

Попытке печати создается очередь печати и пропадает. принтер молчит. подключен по сети
конкретно проблема с принтером mfp_m132a. он подключен напрямую к виндовс хп через усб и печать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru