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

Вниз

Печать документа через Word   Найти похожие ветки 

 
silversmith   (2006-09-18 10:39) [0]

Добрый день уважаемые коллеги.

Подскажите как решить следующую проблему:
Я печатаю из своего приложения доковский документ методом PrintOut
Как бы мне узнать, что документ уже распечатался и от него можно отцепиться
W:=CreateOleObject("Word.Application");
W.Documents.Open(FileName);
W.ActiveDocument.PrintOut;
Вот здесь бы я хотел подождать момента, когда он весь уйдет на печать и сделать;
W.Quit;
W:=Unasigned;

Delphi 7, MS Windows XP SP2, Word2000


 
umbra ©   (2006-09-18 10:56) [1]


> Вот здесь бы я хотел подождать момента, когда он весь уйдет
> на печать и сделать;

в ворде такого способа нет, судя по всему. Надо просто сделать паузу, длительность которой подобрать эмпирически.


 
silversmith   (2006-09-18 11:02) [2]

Спасибо за ответ.
Жаль, но это не вариант. Печатается большое количество документов - в районе нескольких сотен в цикле и ждать у заказчика никаких сил не хватит если у меня к примеру средний документ уходит на печать 5-7 секунд.

Может можно как-то у винды спросить состояние принтера? Правда это уже оффтоп в Corba и COM.


 
Машихин Алексей   (2006-09-19 13:14) [3]

Я сделал так :

try
 w:=createoleobject("Word.application");
 w.Documents.Open(s_out);
 w.Application.PrintOut(false);
                                ^^^
                                  вот это означает что надо печатать не в фоновом режиме!
 w.quit;
except
 w.quit;
end;


 
Virgo_Style ©   (2006-09-19 14:09) [4]

BackgroundPrintingStatus ?



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

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

Наверх




Память: 0.45 MB
Время: 0.008 c
15-1240584679
Кто б сомневался
2009-04-24 18:51
2009.06.28
Даже и не думайте пользоваться функцией Wow64DisableWow64FsRedire


2-1241894486
NaRuTo
2009-05-09 22:41
2009.06.28
Drag and Drop внутри листа.


15-1240547895
123-ий
2009-04-24 08:38
2009.06.28
Клиент для IP-телефонии


15-1240382718
Mulber
2009-04-22 10:45
2009.06.28
Минимизация формы без возможности восстановления


15-1240397060
12
2009-04-22 14:44
2009.06.28
Мулдашев Эрнст. Книги





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский