Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   PrintDoc - Drucken von Worddokumenten über Konsole (https://www.delphipraxis.net/57630-printdoc-drucken-von-worddokumenten-ueber-konsole.html)

Jelly 24. Nov 2005 12:47


PrintDoc - Drucken von Worddokumenten über Konsole
 
Aus eigenem Bedarf, und nach langem erfolglosem Suchen im Internet, brauchte ich ein Tool um Worddokumente einfach ausdrucken zu können. Winword bietet zwar die Möglichkeit über
Delphi-Quellcode:
shellexecute (application.Handle,'print','MeinDokument.doc',nil,nil,SW_SHOWNORMAL) ;
auszudrucken, jedoch besitzt dieser Aufruf keinerlei Konfigurationsmöglichkeiten. So wird immer der eingestellte Standarddrucker als Ausgabe benutzt. Genausowenig kann der Ausgabeschacht benutzt werden, neben noch weiteren Einschränkungen.

Also wens interessiert, findet hier die Downloadmöglichkeit und kann das Tool nutzen. Es ist eine simple Konsolenanwendung, die durch Übergabe von Parametern konfiguriert wird. Die Optionen, die PrintDoc bietet sind:
  • Ausgabe an beliebigem Drucker
  • Ausgabeschacht
  • Anzahl der Kopien
  • Ausgabe in eine Datei
Geplant ist zumindest noch die Auwahl der zu druckenden Seiten. Wer noch interessante Ideen sieht, kann die ja hier posten.

Download PrintDoc v.1.0

Jelly 25. Nov 2005 14:20

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Also es wundert mich schon dass dieses kleine Tool hier niemanden interessiert. Hat denn noch nie einer das Bedürfnis gehabt, ainfach aus Delphi heraus, oder in der Konsole, ein Word Dokument an einen beliebigen Drucker zu senden? ich bin bei der Suche im Internet schier verzweifelt, weil ich nichts Vergleichbares gefunden habe :gruebel:

Keldorn 25. Nov 2005 19:50

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Hallo,

nee, ich hab sowas noch nicht gebraucht. Ich lasse Worddocs drucken, da der Bearebiter die Docs aber auch teilweise ändern muß, geht alles übers Word. Ein extra tool brauch ich nicht.

Was mich interessieren würde: wie verhält sich dein Prog, wenn der eingestellte Standarddrucker ein Drucker im Netz ist? Weil ich habe beim zurückstellen immer das Problem, das dann der Standarddrucker nicht mehr gesetzt ist. Und zu Hause kann ich das Tool nicht ausprobieren, habe nur einen Drucker, da hats keinen Sinn.

Mfg Frank

neuronet 25. Nov 2005 19:58

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Bezüglich Druckerauswahl darf ich auf folgenden Thread verweisen:

Standardprogramm bei shellexecute (...,'print'...)

mschaefer 25. Nov 2005 20:54

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Hallo Jelly,

interessant ist Dein Tool sicherlich. Batchprogrammierung ist wahrscheinlich etwas aus der Mode. Kann mir aber gut vorstellen, dass es überall dort interessant ist, wo zuvor Worddockumente generiert werden oder wo Worddokumente in einer Datenabank verwaltet werden. Schauen wir mal..

Grüße // Martin

Keldorn 25. Nov 2005 21:05

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
@neuronet

Danke, aber das ist nicht mein Problem. Ich habe dazu einen extra thread aufgemacht:
http://www.delphipraxis.net/internal...=462612#462612

Daniel Schuhmann 25. Nov 2005 22:58

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Hallo Jelly,

ich finde das Tool ganz klasse. Wäre sowas auch für Excel möglich? Etwas, was in Excel (Zumindest in 2003) nicht geht, ist die Auswahl der Seiten. Und da hätte ich gerne eine Option "Seiten 3-67, aber nur die ungeraden, danach kurz Pause (zum Umdrehen des Stapels) und dann nochmal die geraden. Oder, was ich auch oft brauchen könnte, wäre die Auswahl, erst 1, dann 4, dann 2 und 3 und so weiter (5, 8, 6, 7). Wenn Du zuviel Zeit und Lust hast... ^^

Grüßle,
Daniel

mschaefer 26. Nov 2005 06:22

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Moin, moin,

das scheint in Word zumindest das Problem vieler Diplomanden zu sein. Der zweiseitige Ausdruck der Abschlußarbeit auf einem Einseitendrucker macht immer wieder Freude. Also Jelly, das gäbe auch ein gutes Sharewaretool.

Grüße // Martin

Jelly 26. Nov 2005 09:23

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Das mit der Auswahl der Seiten sollte kein Problem sein, muss da nur noch bischen was testen. Hatte auch schon mal so eine Funktion drin, hat aber irgendwie nicht auf Anhieb geklappt. Und da ich selbst diese Funktion noch nict gebraucht hab, habe ich auch keine weitere Zeit darin investiert... Aber wenns jemand braucht, so aufwendig stell ich mir das nicht vor.

Zum Excel Problem: Ich denke prinzipiell sollte das auch gehen, da Excel ja auch eine OLE Schnittstelle hat. Muss ich mal kucken.

Aber was die beidseitigen Drucker angeht: holt Euch doch für 100 € einen neuen. Meiner kann über Treiber gesteuert, beidseitig drucken. Echt praktisch.

Daniel Schuhmann 26. Nov 2005 09:55

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Zitat:

Zitat von Jelly
Aber was die beidseitigen Drucker angeht: holt Euch doch für 100 € einen neuen.

Wenn Du nen Farblaser zu Hause stehen hast, denkst Du anders darüber :)

s.h.a.r.k 26. Jan 2006 12:53

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Ich muss echt sagen: Super Tool!!! :thumb:

Ich arbeite gerade an einem Programm welches mehrere Seiten ausdruckt, teils direkt über Delphi und teils über Word. Nun muss ich leider auf einem anderen Drucker als auf dem Standarddrucker ausdrucken und Word machte das leider bisher nicht mit, bzw. ich habe bisher noch keinen Befehl dafür gefunden den Drucker in Word zu ändern.

Brauche zwar nur ein Teil des Programms, d.h. ein Teil des Source, aber ich muss sagen vielen vielen Dank!!!

PS: Du kennst dich scheins recht gut mit dem Drucken aus und hätte da auch gleich mal ne Frage an dich: Ich habe zwei Drucker an einem PC angeschlossen (über einen Printserver) und der Standarddrucker ist ein Laserdrucker (schwarz/weiß). Der andere Drucker ist ein Wachsdrucker (farbe). Soweit so gut, wenn ich nun per Delphi auf dem Farbdrucker ausdrucke, dann kommt da alles schwarz/weiß raus, wenn ich aber über Word da drauf ausdrucke in Farbe! (Standarddrucker bleibt der schwarz/weiß-Drucker). Weißt du wie ich über Delphi auch farbig drucken kann und es nicht schwarz/weiß raus kommt!?

mischerr 10. Jun 2007 15:51

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Doch, wirklich ein nettes Tool!
Muss Word installiert sein, oder reicht auch der MS Word-Viewer?

[Edit]
Schade, der WordViewer reicht nicht.
Aber wenn das zu druckende DOC mehrere Seiten hat, erscheint noch kurz ein PopUp "Drucke Seite x von y".

Weiss zufällig jemand, ob man den noch unterdrücken kann, so dass auch im Hintergrund gedruckt werden kann?
[/Edit]

[Edit2]
Der o.g. Dialog kann wie folgt unterdrückt werden:

...vor Document.Open...
Delphi-Quellcode:
W.DisplayAlerts:= wdDisplayAlertsNone;
...bei W.PrintOut ändern
Delphi-Quellcode:
Background:= True,
...nach W.PrintOut
Delphi-Quellcode:
while W.Application.BackgroundPrintingStatus<>0 do
      Sleep(100);
[/Edit2]

Jelly 10. Jun 2007 19:08

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Das mit dem
Delphi-Quellcode:
Background := true ;
macht aber Probleme, deshalb hatte ich das mal auf false stehen. Der Grund ist, dass Word eventuell wieder geschlossen wird, bevor alle Seiten aufbereitet sind.

mischerr 10. Jun 2007 19:13

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Ja, deswegen die Überprüfung von "BackgroundPrintingStatus"...

Jelly 10. Jun 2007 21:23

Re: PrintDoc - Drucken von Worddokumenten über Konsole
 
Oh, das hatte ich ganz übersehen. :duck:


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz