Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.10.2014, 14:10   #1
Познающий
Форумчанин
 
Аватар для Познающий
 
Регистрация: 09.05.2009
Сообщений: 162
По умолчанию Как получить категорию принтера?

Всем привет.

Использую Spooler-API.
Хочу получить строку которая есть в форме Свойства принтера в поле Категории:

Пробовал через EnumPrinterDrivers, тк там что-то упоминается о категориях в dwPrinterDriverAttributes, но например для факса (в свойствах принтера категория - факс), он возвращает 1, что не соответствует факсу.

Я еще в реестре поковырялся но не нашел указание на категорию.

В общем, как эту информацию достать?
С наилучшими пожеланиями.
Познающий вне форума Ответить с цитированием
Старый 31.10.2014, 14:14   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

может категория в API какраз и обозначена числом?
Человек_Борща вне форума Ответить с цитированием
Старый 31.10.2014, 14:38   #3
Познающий
Форумчанин
 
Аватар для Познающий
 
Регистрация: 09.05.2009
Сообщений: 162
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
может категория в API какраз и обозначена числом?
Не совсем понял. Скорее всего это код, да. В случае с факсом я тут ожидал увидеть

Код:
PRINTER_DRIVER_CATEGORY_FAX
0x00000040
(c) msdn

Просто не пойму где бы мне достать правильное значение, которое однозначно скажет что это факс.
С наилучшими пожеланиями.
Познающий вне форума Ответить с цитированием
Старый 31.10.2014, 15:44   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

а операционка у вас какая?
Человек_Борща вне форума Ответить с цитированием
Старый 31.10.2014, 18:37   #5
Познающий
Форумчанин
 
Аватар для Познающий
 
Регистрация: 09.05.2009
Сообщений: 162
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
а операционка у вас какая?
от XP до восьмерки, включая серверные от 2003 до 2012й
С наилучшими пожеланиями.
Познающий вне форума Ответить с цитированием
Старый 31.10.2014, 19:31   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А через WMI не пробовал? Там много инфы можно поймать, может и та, которая нужна есть.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.11.2014, 12:53   #7
Познающий
Форумчанин
 
Аватар для Познающий
 
Регистрация: 09.05.2009
Сообщений: 162
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А через WMI не пробовал? Там много инфы можно поймать, может и та, которая нужна есть.
Да я уже смотрел в его сторону, только вот приложение уже построено на спулере, лепить кусок на другой апи не хотелось бы.

Мне тут подсказали что факс можно определить по атрибуту принтера в PRINTER_INFO_2, которое можно получить через EnumPrinters.
С наилучшими пожеланиями.

Последний раз редактировалось Познающий; 03.11.2014 в 14:32. Причина: Неправильно понял цитируемое сообщение
Познающий вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить отчёт от принтера? Hugo121 Microsoft Office Excel 8 29.08.2013 22:19
как обнулить счётчик принтера? alex(21) Компьютерное железо 4 07.06.2012 13:14
Даныые с lpt для принтера, получить на комп Loviad Общие вопросы Delphi 4 11.07.2011 14:29
Вывести только одну категорию вместо списка категорий goofman PHP 3 18.05.2010 18:34
Как определить состояние принтера Coryphaeus Общие вопросы Delphi 7 16.02.2010 21:19