Drucken von Batchdateien

8

Ich habe einen Benutzer, der ungefähr 220 Dokumente mit durchschnittlich 2-3 Seiten ausdrucken muss. Beim Drucken mit der Windows-Standardmethode Alle auswählen - Rechtsklick - Drucken wird entweder der Druckserver oder der Drucker selbst überlastet. Ich suche nach einem Dienstprogramm, mit dem ich beispielsweise 5 Dokumente gleichzeitig verarbeiten kann, die alle Dokumente in einem bestimmten Verzeichnis ausführen. Ich hoffe, dass dies den Druckserver entlastet und es dem Benutzer auch ermöglicht, seine Druckaufträge nicht zu babysitten. Ich habe einen gefunden, mit dem Sie einen Druckauftrag für eine bestimmte Zeit planen können, aber (und vielleicht ist dies kein Deal Breaker) die Schreibweise im Programm ist grausam.

chrispt
quelle

Antworten:

4

Sie können DarkStorms Batch-Print-Handler Its Free ausprobieren ! :-)

Der Batch-Druck-Handler von DarkStorm ist eine .NET-Anwendung, mit der Dokumente stapelweise gedruckt werden. Der Batch-Print-Handler von DarkStorm automatisiert Word / Excel und Adobe Reader, um den Batch-Druckprozess zu unterstützen. Außerdem werden einige gängige Bildformate unterstützt.
Ich konnte es allerdings nicht testen

Alternative:

Sie können ein einfaches Skript schreiben, das Namen aus einer Textdatei entnimmt und diese in bestimmten Intervallen druckt. Sie können den Inhalt des Druckordners abfragen, um die Dokumentnamen abzurufen, sie in eine Textdatei einzufügen und dann die Textdatei mit einer Wartezeit dazwischen zu durchlaufen, bis alle Dokumente gedruckt sind.

Pseudocode würde ungefähr so ​​aussehen.

Populate Text File Function ()  
{  
  Set Folder Path  
  Get Document Names in folder  
  Write Document Names to Text File  
}  
Print Function  
{  
  While Not End of File{  
  Get Document Name  
  Print Document Name  
  Move down 1 line  
      Wait a timed interval  
 }  
}

Meine Codierung ist nicht mehr so ​​wie früher, daher habe ich vielleicht ein paar Kleinigkeiten übersehen, aber ich denke, sie ist vernünftigerweise da. Ich würde Guys Scripting Enzine empfehlen, nach Codebeispielen zu suchen. Sie sollten in der Lage sein, den größten Teil des benötigten Codes auszuschneiden und einzufügen.

Joe Taylor
quelle
wow - DarkStorm's batch print handlerist schön
Sathyajith Bhat
Jetzt herunterladen. Das ganze Scripting ist nett, aber ich würde diesen Weg lieber nicht gehen. Ich werde DarkStorm testen.
Chrispt
Ich denke, dass die DarkStorm-App gut sein wird. Das einzige, was süß wäre, wenn sie die Funktionalität hinzufügen würden, ist die Möglichkeit, die Ausführung des Stapels zu einem bestimmten Zeitpunkt so zu planen, dass er automatisch gestartet wird, wenn Sie für den Tag weg sind.
Chrispt
3

Dies ist ein Job für die Befehlszeile.

Mit Cygwin druckt das folgende Skript (das Sie über eine Bash-Befehlszeile eingeben können) alle 5 Sekunden alle PDF-Dateien im aktuellen Verzeichnis.

for x in *.pdf; do cygstart -p -- "$x"; sleep 5; done

Wenn Sie Cygwin nicht installieren möchten (was für viele andere Dinge nützlich ist), lesen Sie Sathyas Antwort für einen cmd-Weg (es ist etwas weniger einfach). Das Auswahlwerkzeug wäre Powershell, das sicherlich alle erforderlichen Bausteine ​​enthält (aber ich spreche kein Powershell).

Gilles 'SO - hör auf böse zu sein'
quelle
cmd has an equivalent of sleep-> roher Ersatz wäre `ping localhost -n 6> NUL
Sathyajith Bhat
Außerdem startstartet eine neue Anwendung - es keine Druckfunktionen hat.
Sathyajith Bhat
@Sathya: Danke. Ich bin nicht überrascht, dass dies cygstartmehr Funktionen als Start bietet, aber ich dachte, es gibt eine Möglichkeit, eine Druckaktion von cmd aus auszulösen (die Druckaktion ruft die in der Registrierung registrierte Anwendung auf und weist sie an, zu drucken, anstatt sie zur Bearbeitung zu öffnen). Wissen Sie zufällig, ob es eine Möglichkeit gibt, in cmd zu drucken ( printscheint es auch nicht zu sein)?
Gilles 'SO - hör auf böse zu sein'
@ Gilles - Eine Möglichkeit besteht darin, die PDF-Dateien auf den Drucker zu kopieren, wenn dieser als (Netzwerk-) Freigabe konfiguriert ist copy *.pdf \\printer\name. Für die Stapelverarbeitung hat cmd einen forBefehl, aber ich bin nicht
sicher,
@Sathya: Ich denke so etwas wie for %x in (*.pdf) do ( ; command1 ; command2 ; )mit Zeilenumbrüchen, in denen ich geschrieben habe ;. Wenn Sie es zum Laufen bringen können, geben Sie ihm bitte eine Antwort.
Gilles 'SO - hör auf böse zu sein'
2

Wenn Sie wirklich die Befehlszeile verwenden möchten, kopieren Sie diese, fügen Sie sie in eine Batchdatei ein, ändern Sie den Pfad und fügen Sie den vollständigen Pfad hinzu AcroRd32.exe

cd\path\to\pdf\files
for %%f in ("*.pdf") do AcroRd32.exe /t %%f "\\servername\printername" & ping localhost -n 6 >NUL

Dadurch wird das Verzeichnis in das Verzeichnis mit den PDF-Dateien geändert, Acrobat Reader im unbeaufsichtigten Modus gestartet, gedruckt und 5 Sekunden gewartet. Eine andere Alternative, wenn der Drucker freigegeben ist, ist

cd\path\to\pdf\files
for %%f in ("*.pdf") do copy %%f "\\servername\printername" & ping localhost -n 6 >NUL

Das gleiche gilt, aber in meiner Vergangenheit habe ich mit diesem Ansatz keine guten Ergebnisse erzielt - aber es liegt daran, dass in den PDF-Dateien keine Schriftarten eingebettet sind.

Sathyajith Bhat
quelle
0

Eine großartige Batch-Druckanwendung, die ich ständig benutze, ist SilentPrint. Weitere Informationen finden Sie unter http://www.silentprint.com . Ich hoffe, Sie finden es genauso nützlich wie ich.

Jimmi Kin
quelle
1
Wenn Sie mit diesem Produkt verbunden sind, geben Sie bitte Ihre Zugehörigkeit in den FAQ an , andernfalls werden Ihre Beiträge möglicherweise als Werbeartikel entfernt
slhck