|
0 / 0 / 1
Регистрация: 30.09.2006
Сообщений: 269
|
|
Контроль принтеров. Вот задачка!?03.06.2007, 10:50. Показов 1225. Ответов 5
Метки нет (Все метки)
У нас в конторе три принтера, и боссы очень строго
относятся к расходу бумаги. Ну вот я и решил сделать что-то на подобие проги для контроля спуллинга на принтера. Начал использовать API, опрашиваю принтера, через функцию EnumJobs получаю задания на печать. Делаю это все по таймеру. У кого был опыт по таким делам или по юзанию таких апишных функций? Спасибо за любой совет!
0
|
|
| 03.06.2007, 10:50 | |
|
Ответы с готовыми решениями:
5
Слежение/контроль за работой принтеров Вот такая вот задачка:) вот такая задачка |
|
0 / 1 / 3
Регистрация: 27.03.2012
|
|
| 03.06.2007, 12:24 | |
|
Посмотри вот этот пример, там используется EnumPrinters и PRINTER_INFO_2 для того чтобы получить статус принтера и статус его текущих задач.
http://www.relib.com/code.asp?id=155
0
|
|
|
0 / 0 / 1
Регистрация: 30.09.2006
Сообщений: 269
|
|
| 03.06.2007, 12:46 [ТС] | |
|
Да это мы сделали уже. Проблема в том , что не могу правильно определить формат бумаги из задания, выдает то другие форматы!
retval = EnumJobs(Hprinter, 0, 100, 2, arraybuf(0), needed, needed, numitems) ' ïðîñìî ;òð çàäàí&e grave;é íà ïå÷àò&uu ml;================ lendivfour = Len(jobinfo) / 4 ' íîìåð ýëåìå&iac ute;òîâ äëÿ êàæäî&eacu te; ñòðóê&ogr ave;óðû â ìàññè âå For c = 0 To numitems - 1 ' öèêë jobinfo.JobId = arraybuf(lendivfour * c) ' ïåðâû&eacu te; ýëåìå&iac ute;ò â ìàññè âå jobinfo.pUserName = Space(lstrlen(arraybuf(lendivfour * c + 3))) '÷åòâå&e th;òûé ýëåìå&iac ute;ò retval = lstrcpy(jobinfo.pUserName, arraybuf(lendivfour * c + 3)) CopyMemory jobinfo.pDevMode, arraybuf(lendivfour * c + 10), Len(jobinfo.pDevMode) ' ñòðóê&ogr ave;óðà DevMode ' âîò çäåñü áåðó ôîðìà&ogra ve; òî jobinfo.TotalPages = arraybuf(lendivfour * c + 18) ' nineteenth element CopyMemory jobinfo.Submitted, arraybuf(lendivfour * c + 20), Len(jobinfo.Submitted) ' 21 ýëåìå&iac ute;ò jobinfo.Status = arraybuf(lendivfour * c + 13) ' èíôî ïî çàäàí&e grave;ÿì íà listview íà ôîðìå====== =========== Set itmReport = Form1.lstvReport.ListItems.Add(, , jobinfo.JobId) itmReport.SubItems(1) = jobinfo.pUserName itmReport.SubItems(2) = jobinfo.TotalPages itmReport.SubItems(3) = jobinfo.pDevMode.dmPaperSize itmReport.SubItems(4) = jobinfo.Submitted.wHour & ':' & jobinfo.Submitted.wMinute & _ ':' & jobinfo.Submitted.wSecond & ' GMT' Select Case jobinfo.Status Case JOB_STATUS_SPOOLING itmReport.SubItems(5) = 'èäåò ñïóëë&egrav e;íã...' Case JOB_STATUS_PRINTING itmReport.SubItems(5) = 'èäåò ïå÷àò&uu ml;...' Case JOB_STATUS_PAUSED itmReport.SubItems(5) = 'ïàóçà. ..' Case JOB_STATUS_DELETED itmReport.SubItems(5) = 'çàäàí& egrave;å
0
|
|
|
0 / 1 / 3
Регистрация: 27.03.2012
|
|
| 03.06.2007, 12:53 | |
|
ты чего такое послал?
0
|
|
|
0 / 0 / 1
Регистрация: 30.09.2006
Сообщений: 269
|
|
| 03.06.2007, 13:13 [ТС] | |
|
Пардон! Хотел послать кусок своего кода, да поспешил. Не могу разобраться с типом DEVMODE,
откуда беру формат бумаги
0
|
|
|
0 / 1 / 3
Регистрация: 27.03.2012
|
|
| 03.06.2007, 13:31 | |
|
Посмотри здесь:
http://www.vbapi.com/ref/d/devmode.html
0
|
|
| 03.06.2007, 13:31 | |
|
Помогаю со студенческими работами здесь
6
вот так задачка((( вот так задачка Вот такая задачка Вот так не задачка с SP-2
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|