Поддержка / Donate
 

WebMoney

Яндекс.Деньги

SMS.Копилка
Деньги@Mail.ru
Rupay
E-gold
PayPal

 

Благодарю за поддержку!

Лента RSS - Новости сайта Новости сайта
Лента RSS - Новости форума Новости форума
Добавить в закладки и поделиться Bookmark and Share

 

Архив исходников

 


Automatic translation

 
English German French
Italian Spanish Portuguese
Greece Japan Chinese
  Korean  

  

 

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как узнать, какие принтеры установлены в системе

Поместите на форму кнопку (Button1) и ListBox (ListBox1). В uses добавьте registry unit. Следующий код поместите в событие кнопки OnClick:


procedure TForm1.Button1Click(Sender: TObject);
var
  m: TRegistry;
  i: integer;
  l: TstringList;
  s: string;
begin
  m := TRegistry.Create; l := TStringList.Create;
  s := '\System\CurrentControlSet\Control\Print\Printers';
  m.RootKey := HKEY_LOCAL_MACHINE;
  m.OpenKey(s, false);
  m.GetKeyNames(l); // получаем список принтеров
  m.CloseKey;
  ListBox1.Items.Clear;
  for i := 0 to l.Count - 1 do begin
    m.OpenKey(s + '\' + l[i], false);
      // Здесь, ради теста, можно сделать проверку на наличие нужного имени драйвера
      // if m.ReadString('Printer Driver') = 'my printer driver' then ..
      // добавляем имя принтера в список
    ListBox1.Items.Add(m.ReadString('Name'));
    m.CloseKey;
  end;
  m.Free;
  l.Free;
end;




Источник - Проект "Delphi World" © Выпуск 2002 - 2004
Автор проекта: Акулов Николай



   Rambler's Top100             Яндекс цитирования