Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Printer - количество принтеров в системе? / 7 сообщений из 7, страница 1 из 1
17.10.2003, 11:28
    #32296333
surovi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Printer - количество принтеров в системе?
Каким образом можно узнать количество принтеров в системе?

Следующий код не помогает так как приходится перезапускать программу, если принтер был установлен во время выполнения программы

var
sys_printer: TPrinter; // uses Printers;
count_printers: Integer;
begin
sys_printer:= Printer(); // uses Printers;
count_printers:= sys_printer.Printers.Count;

Спасибо
...
Рейтинг: 0 / 0
17.10.2003, 19:20
    #32297174
drbond
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Printer - количество принтеров в системе?
По моему задача из серии "Виртуальная реальность" :-) Скажите пожалуйста для чего Вам так срочно знать кол-во принтеров в системе сразу после установки ещё одного? Или Вы только и занимаетесь установкой удалением принтеров? В таком случае почему бы Вам или Вашим пользователям не запомнить (в уме, в крайнем случае записать (на лист бумаги, в файл - куда угодно)) предыдущее значение и прибавить к нему единицу самостоятельно не прибегая к помощи программных средств?
...
Рейтинг: 0 / 0
18.10.2003, 18:17
    #32297520
Наблюдатель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Printer - количество принтеров в системе?
Для drbond :

не стоит на просьбу о помощи в ответ нести полную чушь. Приведу реальный пример: на Delphi написан ActiveX, который встроен в приложение, которое работает месяцами и перезагрузка этого приложения не допускается - например в системах АСУТП! А установить новый принтер без перезагрузки ОС - надеюсь, вопросов не вызывает?

Для surovi :

К сожалению, класс TPrinter зачитывает список принтеров в системе всего один раз (см. метод TPrinter.GetPrinters).

Для получения достоверного списка принтеров можно динамически создавать экземпляр класса TPrinter, получать через него список (и количество) принтеров, а потом уничтожить этот созданный экземпляр.

Либо можно повторить код метода TPrinter.GetPrinters в своем коде...
...
Рейтинг: 0 / 0
20.10.2003, 04:30
    #32297871
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Printer - количество принтеров в системе?
есть чуднеая функция в WinApi EnumPrinters...
рассказывает очень много интересной информации... Посмотри так же сопутствующие ей функции, я думаю понравятся некоторые...
...
Рейтинг: 0 / 0
20.10.2003, 14:14
    #32298412
Наблюдатель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Printer - количество принтеров в системе?
EnumPrinters - штука нужная, и именно она используется в выше указанном TPrinter.GetPrinters. Вот только параметры вызова зависят от версии операционки, что кстати и у Borland сделано...
...
Рейтинг: 0 / 0
21.10.2003, 03:17
    #32299214
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Printer - количество принтеров в системе?
Я думаю это не сложно написать.... равно как и не сложно проверить версию операционки функцией GetVersion. Если уж нужно универсально под все версии винды, в чем я сомневаюсь
...
Рейтинг: 0 / 0
03.11.2003, 15:55
    #32313707
surovi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Printer - количество принтеров в системе?
Огромное всем Вам спасибо за ответы

Они очень помогли !!!

Спасибо за сотрудничество
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Printer - количество принтеров в системе? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]