COM Automation mit VB Script / PDF Drucker
Dieses Beispiel zeigt Ihnen wie Sie den PDF Drucker über ein einfaches VBScript steuern können. Das Script erzeugt eine runonce.ini Konfigurationsdatei und erzeugt einen Druckjob welches die runonce.ini Konfiguration zur PDF-Erzeugung verwendet.
Ein Dokument mit der Bezeichnung example.rtf wird im Beispiel gedruckt. Dieses Beispiel arbeitet aber auch mit jeder anderen Datei bzw. Dokumententyp zusammen für den eine Standardanwendung zum Öffnen und Drucken auf dem PC-System definiert ist. Meistens können diese Dateien mit der Option drucken im Kontextmenü erkennen werden, wenn Sie mit der rechten Maustaste auf die Datei im Windows-Datei-Explorer klicken.
-
Rem -- This example will show you how to create a very simple runonce configuration.
-
Option Explicit
-
-
Dim printername
-
Dim output, statusfile, fso, currentdir, documentfile, util, settings
-
-
Rem -- Create the COM helper object.
-
set util = CreateObject("Pdf7.PdfUtil")
-
-
Rem -- Create the COM settings object to control the printer.
-
set settings = CreateObject("Pdf7.PdfSettings")
-
-
Rem -- Get current path of this script.
-
Set fso = CreateObject("Scripting.FileSystemObject")
-
currentdir = fso.GetAbsolutePathName(".")
-
-
output = currentdir & "\out\example.pdf"
-
statusfile = currentdir & "\out\status.ini"
-
documentfile = currentdir & "\in\example.rtf"
-
-
Rem -- Change the value of printer name if you want to use another PDF printer
-
printername = util.DefaultPrinterName
-
-
settings.PrinterName = printername
-
settings.SetValue "Output", output
-
settings.SetValue "WatermarkText", Now
-
settings.SetValue "WatermarkColor", "#FF9900"
-
settings.SetValue "ShowSettings", "never"
-
settings.SetValue "ShowPDF", "no"
-
settings.SetValue "ShowProgress", "no"
-
settings.SetValue "ShowProgressFinished", "no"
-
settings.SetValue "ConfirmOverwrite", "no"
-
settings.SetValue "StatusFile", statusfile
-
settings.SetValue "StatusFileEncoding", "unicode"
-
-
Rem -- Write settings to the runonce.ini.
-
settings.WriteSettings True
-
-
Rem -- Remove old output and status files
-
if fso.FileExists(output) then fso.DeleteFile(output)
-
if fso.FileExists(statusfile) then fso.DeleteFile(statusfile)
-
-
Rem -- Print the file
-
util.PrintFile documentfile, printername
-
-
Rem -- Wait for the status file.
-
Rem -- The printing has finished when the status file is written.
-
if util.WaitForFile(statusfile, 10000) then
-
wscript.echo "Print job finished."
-
else
-
wscript.echo "Print job timed out."
-
end if
-
Downloads
Anhang | Größe |
---|---|
Codebeispiel herunterladen | 7.87 KB |