Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.10.06;
Скачать: [xml.tar.bz2];

Вниз

Параметры печати, установки принтера, свойства документа?   Найти похожие ветки 

 
DAT   (2003-07-22 16:11) [0]

Приветствую мастеров.
Пишу прогу, следящую за печатью(прога висит в памяти и отлавливает нотификации принтера). Столкнулся с проблемой чтения текущих установок принтера. При попытке считать текущие установки получаю установки по умолчанию, но никак не текущие :(( Помогите разобраться.
Код:
...
hDeviceMode:=GlobalAlloc( GHND , DocumentProperties(0, hPrinter, PChar(PrinterName), CurrDevMode^, CurrDevMode^, 0));
CurrDevMode:= GlobalLock(hDeviceMode);
if DocumentProperties( 0, hPrinter, PChar(PrinterName), CurrDevMode^, StubDevMode, DM_UPDATE or DM_OUT_BUFFER)>0 then
begin
//здесь манипуляции с установками (только чтение!)
//CurrDevMode^.dmPaperSize
//CurrDevMode^.dmCopies
//CurrDevMode^.dmColor
//и т.д
end;


 
DAT   (2003-07-22 16:15) [1]

код на самом деле :))

hDeviceMode:=GlobalAlloc( GHND , DocumentProperties(0, hPrinter, PChar(PrinterName), CurrDevMode^, CurrDevMode^, 0));
CurrDevMode:= GlobalLock(hDeviceMode);
if DocumentProperties( 0, hPrinter, PChar(PrinterName), CurrDevMode^, CurrDevMode^, DM_OUT_BUFFER)>0 then
begin
//здесь манипуляции с установками (только чтение!)
//CurrDevMode^.dmPaperSize
//CurrDevMode^.dmCopies
//CurrDevMode^.dmColor
//и т.д
end;
GlobalUnlock(hDeviceMode);


 
N169   (2003-07-22 17:27) [2]

Всё верно. Текущие уставки действуют только в контексте процесса, который их модифицировал.
Иное поведение противоречило бы принципу разделения данных процессов в многозадачной системе.


 
DAT   (2003-07-22 18:37) [3]

2 N169
Видимо о чем-то таком я и догадывался :)))
Есть ли способ получить установки, модифицированные в контексте произвольного процесса? Иными словами получить параметры печати, но не работы как таковой, а именно установки принтера для произвольной работы (ориентация страницы, формат, кол-во копий и т.п.)?

Спасибо


 
DAT   (2003-07-22 19:03) [4]

Проблема была успешно разрешена. Ключевым моментом как раз и были параметры работы, извлекаемые в момент нотификации. Если кому интересно, могу выложить код :))



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.10.06;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.007 c
14-18542
A_n_d_y!!!
2003-08-29 11:33
2003.10.06
Ищю толкового програмиста


3-18249
muzzzy
2003-09-16 11:07
2003.10.06
dbf создать...


1-18309
ah
2003-09-23 23:03
2003.10.06
почему так происходит - открываю файл при закрывании дает ошибку


3-18262
McSimm2
2003-09-17 15:31
2003.10.06
Кодирование данных


6-18526
Кодер
2003-08-01 16:00
2003.10.06
Проблема повторного коннекта





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский