Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.28;
Скачать: CL | DM;

Вниз

TPrintDlg   Найти похожие ветки 

 
Comp ©   (2004-10-13 15:22) [0]

Здравствуйте, уважаемые мастера. Подскажите пожалуйста, как напечатать документ (некоторый), добавив его в очередь для печати. Такой код:


procedure TForm1.Button1Click(Sender: TObject);
var
 Pd: TPrintDlg;
 DocInfo: TDocInfo;
begin
 FillChar(Pd, sizeof(Pd), #0);
 Pd.lStructSize := sizeof(Pd);
 Pd.hWndOwner := Form1.Handle;
 Pd.Flags := PD_RETURNDC;
 if PrintDlg(pd) then
 begin
   FillChar(DocInfo, sizeof(DocInfo), #0);
   DocInfo.cbSize := SizeOf(DocInfo);
   GetMem(DocInfo.lpszDocName, 32);
   GetMem(DocInfo.lpszOutput, MAX_PATH);
   lStrCpy(DocInfo.lpszDocName, "My Document");
   {Add this line to print to a file }
   lStrCpy(DocInfo.lpszOutput, "C:DownloadTest.doc");
   StartDoc(Pd.hDc, DocInfo);
   StartPage(Pd.hDc);
   TextOut(Pd.hDc, 100, 100, "Page 1", 6);
   EndPage(Pd.hDc);
   StartPage(Pd.hDc);
   TextOut(Pd.hDc, 100, 100, "Page 2", 6);
   EndPage(Pd.hDc);
   EndDoc(Pd.hDc);
   FreeMem(DocInfo.lpszDocName, 32);
   FreeMem(DocInfo.lpszOutput, MAX_PATH);
 end;
end;


просто вызывает диалоговое окно и печатает документ (2 стр.) в процессе работы программы. А если закрыть программу? Или принтер не включен? Надо, чтобы печать в очередь стала.

Подскажите пожалуйста. Буду очень благодарен.


 
tesseract   (2004-10-14 12:50) [1]

Вообще ты документ в очередь и отправляешь, т.к. обращаешься к через API к спулеру и мягко просишь напечатать.
Хочешь проверить - выруби принтер и попробуй напечатать. При отключеном  принтера задание всё равно попадёт в очередь. Только в "Принтерах" напртив него появиться пометка "Ошибка"



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

Текущий архив: 2004.11.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
1-1100177008
gonzales
2004-11-11 15:43
2004.11.28
Разложить файл на несколько частей


3-1098770945
Serg-SE
2004-10-26 10:09
2004.11.28
Проблема из-за отсутствие длинного целого в IB


14-1099575334
Григорьев Антон
2004-11-04 16:35
2004.11.28
Теперь и я в шоке. Снова про образование


1-1100587939
Vilux
2004-11-16 09:52
2004.11.28
Почему программа просто исчезает?


1-1100260457
nopox
2004-11-12 14:54
2004.11.28
Господа, как можно из 3 строк с уникаль сгенерировать 4-ю?