Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 2 360

/ вопрос открыт /

Приветствую, уважаемые эксперты!
Какого типа должен быть последний параметр в функции FindNextPrinterChangeNotification? Мне нужно получить JobId задания, которое нарисовалось в очереди печати, но эта функция у меня почему-то в последний параметр всегда выдает nil.
Если у кого есть рабочий пример, буду очень благодарен!

Iskatel Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Iskatel (статус: Посетитель)
Вопрос отправлен: 28 января 2009, 16:13
Состояние вопроса: открыт, ответов: 1.

Ответ #1. Отвечает эксперт: Вадим К

Здравствуйте, Iskatel!
Так как это функция оси, то там и надо искать её поведение. Открываем MSDN на странице http://msdn.microsoft.com/en-us/library/dd162723(VS.85).aspx. Там же и читаем об этом параметре.
Например там написано, что это Pointer to a pointer variable. Паскальным языком это значит, что это массив указателей. Хотя мало чего они там могут придумать.
Также там написано This parameter can be NULL if no information is required. то есть, если нет никакой информации, то может быть nil.
Тип этого параметра - двойной указатель на PRINTER_NOTIFY_INFO. Эта структура должна по идеи быть обявлена в Windows.pas.
для юзанья наверно надо будет обявить где то так param:array[0..0] of ^PRINTER_NOTIFY_INFO; Хотя могу и ошибаться...
Начните с МСДН, а там дальше будет видно.

Ответ отправил: Вадим К (статус: Академик)
Время отправки: 28 января 2009, 16:50


Мини-форум вопроса

Всего сообщений: 3; последнее сообщение — 28 января 2009, 23:39; участников в обсуждении: 2.
Iskatel

Iskatel (статус: Посетитель), 28 января 2009, 17:14 [#1]:

required переводится как "требуется". Этот параметр программер может поставить в nil, если ему инфа не нужна. В MSDN есть пример использования этой функции, но там они этот параметр ставят как раз в nil.
В Делфе этот параметр функции объявлен как Pointer. Я пытался передать туда просто указатель, пытался указатель на структуру PRINTER_NOTIFY_INFO, пробовал и указатель на массив этих структур, всё равно возвращается nil.
Вадим К

Вадим К (статус: Академик), 28 января 2009, 17:18 [#2]:

чуточку описался.
Может он возвращает только тогда, когда эта информация есть? то есть надо "правильно спросить"?
Галочка "подтверждения прочтения" - вселенское зло.
Iskatel

Iskatel (статус: Посетитель), 28 января 2009, 23:39 [#3]:

Учитывая, что второй параметр возвращает PRINTER_CHANGE_ADD_JOB, информация быть должна. Вот я и спрашиваю, КАК её получить? Может, кто сталкивался?

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:47
Выполнено за 0.03 сек.