Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Послать *.doc на печать.Подскажите пожалуйста! [D7, WinXP]


Maggot ©   (2006-06-24 04:32:00) 

Как напечатать документ word одним нажатием на батон?


Maggot   (2006-06-27 01:17:00) [1]

Спасибо всем за советы.


Palladin   (2006-06-26 13:46:00) [2]

можно и через COM (или OLEAutomation, или.... названий много)...
Var
w:OleVariant;
Begin
w:=CreateOLEObject('Word.Application');
w.PrintOut(FileName:=<имя файла>);
w.Quit;
w:=Unassigned;
End;

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


  (2006-06-26 13:38:00) [3]

Удалено модератором


C@N   (2006-06-26 13:24:00) [4]

в догонку... печатает на деафультный принтер в системе)))
печатает все, что можно напечатать )))
короче эксперементируйте )))


C@N   (2006-06-26 13:22:00) [5]

Для доковских...shellExecute - то что доктор прописал, токо в uses не забудь прописать ShellApi

а в кнопе пиши типа этого
ShellExecute(application.handle, 'print', 'c:\1.txt', '', '', SW_SHOWNORMAL);


Maggot   (2006-06-26 01:20:00) [6]

А можно через CОМ?Дайте пожалуйста пример.


Virgo_Style   (2006-06-25 13:12:00) [7]

Экспериментатор   (25.06.06 12:56) [4]

Достаточно ShellExecute с параметром 'print' и именем файла-документа


Экспериментатор   (2006-06-25 12:56:00) [8]

попробуй поэкспериментировать с командной строкой, что-то типа winword.exe "имя файла" print - по крайней мере Word что-то подобное может делать
ну а вызов такой сделай при помощи ShellExecute


Пусик   (2006-06-25 03:31:00) [9]

> Maggot   (24.06.06 21:50) [2]
> Дело в том что принтера нету.Так что проверить код нет возможности.Все
> еще нуждаюсь в помощи с печатью вордовских документов.


Приходите еще. Когда принтер будет.


Maggot   (2006-06-24 21:50:00) [10]

Дело в том что принтера нету.Так что проверить код нет возможности.Все еще нуждаюсь в помощи с печатью вордовских документов.


sava18   (2006-06-24 19:32:00) [11]

делал лабы в кансоли.Там есть вывод на печать.короче сам разберешься.

program Project1;

{$APPTYPE CONSOLE}

uses
 SysUtils,Printers;

var
 x,y:array[1..30]of integer;
 a,i,b,c,j:integer;
 p:string;
 St:string;
 f:text;
Label s,s1;
begin
randomize;
i:=0;
AssignFile(f,'file.txt');
Rewrite(f);

for a:=1 to 30 do
begin
i:=i+1;

x[i]:=random(10);
y[i]:=random(10);

if x[i]<5 then if y[i]<3 then
begin
writeln('(x',i,':y',i,')    ',x[i],':',y[i]);

p:=inttostr(x[i])+':'+inttostr(y[i]);

writeln(f,p);
end;

end;
CloseFIle(f);

AssignFile(f,'file.txt');
Reset(f);

with Printer do begin

              BeginDoc;
                Canvas.Font.Color := 10;
j:=0;
s:
j:=j+100;
ReadLn(f,St);
if St='' then goto s1;
                Canvas.TextOut(100,j, St);

goto s;
s1:
                EndDoc;
              end;

readln;
CloseFile(f);
end.


Наверх

Титульная страница Поиск, карта сайта Написать письмо