powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как программно сменить принтер по умолчанию?
8 сообщений из 8, страница 1 из 1
Как программно сменить принтер по умолчанию?
    #32372855
NewJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как программно сменить принтер по умолчанию? Желательно, чтобы это работало как под Win2k так и под Win 9x
...
Рейтинг: 0 / 0
Как программно сменить принтер по умолчанию?
    #32372905
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://community.borland.com/article/0,1410,28936,00.html
...
Рейтинг: 0 / 0
Как программно сменить принтер по умолчанию?
    #32372938
NewJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообщем то, под 2000 виндой у меня и написано что-то похожее. Под 2000 работает, а вот под 98 уже нет. (То есть допустим word запускаем - там принтер сменился, а если посмотреть через настройки -то нет) Хотя им win.ini изменился и соотв. ключи в реестре (для 98 HKCC\System\CurrentControlSet\Control\Print\Printers, Default = "AnyPrinter")
...
Рейтинг: 0 / 0
Как программно сменить принтер по умолчанию?
    #32372940
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
винде надо мессагу послать что конфиги поменялись.
SendMessage (HWND_BROADCAST, WM_SETTINGCHANGE, 0, ???);
в деме все ето есть.
...
Рейтинг: 0 / 0
Как программно сменить принтер по умолчанию?
    #32372947
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
погляди еще на delphi3000 - там тоже есть исходники.
...
Рейтинг: 0 / 0
Как программно сменить принтер по умолчанию?
    #32373088
NewJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое спасибо KirillovA!
Вообщем-то проблема была в последнем параметре sendmessage. У меня он был равен нулю. В 2000 так прокатывало, а в 98 - нет. Сейчас = longint(pchar('windows')). Что хорошо в 2000, так это то, что дельфийское приложение, в частности TQuickreport, понимает, что я сменил принтер и без send messag'a - в результате, сменил принтер, послал на печать, вернул принтер на место и это без всякого мельтешения(HWND_BROADCAST) на экране, а вот 98 без sendmessage никак.
...
Рейтинг: 0 / 0
Как программно сменить принтер по умолчанию?
    #32373091
NewJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотя надо попробовать Application.Handle в sendmessage
...
Рейтинг: 0 / 0
Как программно сменить принтер по умолчанию?
    #32373120
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2000е вешают хук модификацию реестра
- поетому они автоматом цепляют ченджи в реестре.
- поетому они блокируют от модификации системно критичные ключи в реестре.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как программно сменить принтер по умолчанию?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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