![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Смена используемого по умолчанию принтера [D4, Win95/98, NT4]
ed © (2003-02-23 12:46:00)Доброго всем дня!
Возник такой вопрос: как программно сменить используемый по умолчанию принтер в Windows? И еще, как узнать - поддерживает ли текущий (используемый по умолчанию) принтер язык Psotscript.
Заранее спасибо за ответ (если можно, с примером)
Nic_B (2003-02-25 10:14:00) [1]Sorry ощибочка вкралась - надо так
SendMessage(HWND_Broadcast, WM_WININICHANGE,0,0);
ed (2003-02-24 22:05:00) [2]To Nic_B! Большое спасибо за ответ!
Nic_B (2003-02-24 20:21:00) [3]Вот нашел как проще поменять принтер:
WriteProfileString("windows","device","New Printer", Epson, lpt1:");
(ДЛЯ NT4 - функция WroteProfileString !!!)
После этого надо послать всем работающим приложениям:
SendMessage(HWND_Broadcast, WM_WINNINCHANGE,0,0);
Nic_B (2003-02-24 20:10:00) [4]Принтер по умолчанию - смотри
buffer: array[0..255] of char;
GetProfileString("windows","device",",,,",buffer,256);
в buffer - текущий принтер
Изменение настроек принтера:
OpenPrinter(Pchar(GetPrintername),hprinter,@PD);
..
GetPrinter..
PPrinterInfo2^.pDevMode^.//а здесь меняются параметры Не помню уже возможно тут и есть флаг использовать по умолчанию
Потом
SetPrinter..
Если надо более полную информацию - покопаюсь когда-то что-то подобное писал
error (2003-02-24 18:52:00) [5]Удалено модератором
error (2003-02-24 18:49:00) [6]Удалено модератором
error (2003-02-24 18:47:00) [7]Удалено модератором
Anatoly Podgoretsky (2003-02-24 11:49:00) [8]Набережных С. (23.02.03 22:37)
Пусть тявкает из за угла.
Anatoly Podgoretsky (2003-02-24 11:48:00) [9]ed (23.02.03 21:59)
Печатай на конкретный принтер, а меня принтер по умолчанию прерогратива пользователя и зря ты надеешься на восстановление произойдет сбой и "А пользователи бывают всякие" ты же их поставишь в безвызодное положение.
Song (2003-02-24 10:52:00) [10]win.ini
ed (2003-02-24 10:24:00) [11]Спасибо всем за конструктивные ответы по теме вопроса. Нверное праздники влияют...
Набережных С. (2003-02-23 22:37:00) [12]>error (23.02.03 21:48)
А можно мы все (и Anatoly Podgoretsky в том числе) как-нибудь сами будем решать, кому, когда и что отвечать? Не спрашивая у тебя разрешения. Можно, да? Спасибо большое. Заранее.
ed (2003-02-23 21:59:00) [13]Все-таки, хотелось бы ближе к телу...
Мне необходимо сделать это изменение на время работы программы, т.к. в ее работе необходимо использовать именно PS принтер. Кроме того, если я смогу менять принтер по умолчанию на свой, то я не забуду сменить его и обратно по окончанию ее работы (если такое возможно). А пользователи бывают всякие (некоторые могут и не знать где можно изменить произвести такие изменения).
error (2003-02-23 21:48:00) [14]Удалено модератором
Примечание: Личная переписка
Anatoly Podgoretsky (2003-02-23 12:52:00) [15]А я не хочу, что бы твой принтер был по умолчанию и как пользователь я прав. Если мне нужно то я сам это решу.