Kategorie: eDocPrintPro SDK

eDocPrintPro – Tool um die Druckertreiber-Events zu testen

Für Softwareentwickler die unser eDoc SDK verwenden ist es wichtig die Events des Treibers richtig zu erkennen und an die Anwendung weiterzugeben. Ein Event wird beim Start des Druckvorgangs ausgelöst und der 2. Event sobald die PDF Datei fertig erstellt und weggeschrieben wurde. Beim 2. Event wird auch der Pfad und der Name der erzeugten PDF Datei zurückgeliefert.

Um auf den verschiedenen Plattformen – von Windows XP bis zu den aktuellen MS-Windows 2008 Server 64bit und Terminalserver testen zu können  ob die Events richtig ausgelöst und geschickt werden, stellen wir einen einfachen Tester zur Verfügung.

Warten auf die Events Events erhalten - für Start und Ende der PDF Erstellung

Download – Event Test für eDocPrintPro >>>

Kombinierte 32/64bit Programmierschnittstelle ab eDocPrintPro 3.17.0

Bereits jetzt und in nächster Zukunft werden immer mehr Rechner – nicht nur Server sondern auch Desktop Recher mit 64bit Betriebsystemen z.b. Windows 7 – 64bit ausgerüstet. An sich kein grosses Problem für viele bestehenden Anwendungen da auch 32bit Programme unter 64bit Betriebsystemen verwendet werden können.

Für Druckertreiber sieht das anders aus – für ein 64bit Betriebsystem ist auch ein 64bit Druckertreiber erforderlich. Nun ist es technisch nicht möglich aus 32bit Anwendungen heraus eine 64bit Programmierschnittstelle anzusprechen und zu nutzen – das funktioniert nur bei „gleicher Bit-Breite“. Viele 32bit Anwendungen lassen sich jedoch auf Grund der verwendeten Programmierumgebung nicht so einfach auf 64bit „umstellen“. Softwareentwickler wünschen sich daher dass ihre 32bit Anwendung ohne grosse Anpassung und ohne verschiedene EXE Versionen erstellen zu müssen – sowohl mit der 32bit als auch mit der 64bit Version zusammenarbeiten.

Aus diesem Grund haben wir das eDocPrintPro Programmier-Interface entsprechend erweitert und bieten nun auch eine einheitliche 32/64bit Programmierschnittstelle an. Entwickler können nun 32bit Anwendungen erstellen die mit einer einzigen 32bit EXE sowohl mit dem 32bit als auch mit dem 64bit edocPrintPro Druckertreiber zusammenarbeiten.

Wir liefern dazu eine 32bit Visual Basic Anwendung im Source Code als auch eine 32bit EXE um zu zeigen welche Funktionen zur Verfügung stehen und wie diese in eigene Anwendungen eingebunden werden können. Weiters kann damit auch die Funktionalität unter den verschiedenen Betriebssystemversionen (32/64bit) getestet werden.

32bit VB sample application - demo to show 32bit and 64bit printer driver support

Bei der „alten“ 32bit Version des eDocPrintPro SDK unter Verwendung der eDocPort.dll – wird ein COM Objekt eDocPort.Port zur Verfügung gestellt. Um dieses nun auf die neue 32/64bit kompatible eDocPort32.dll mit dem Objekt eDocPort32.Port umzustellen sind folgende Schritte erforderlich:

  1. Entfernen der Referenz auf die „alte“ eDocPort.dll (falls für „early binding“ Anwendungen vorhanden )
  2. Hinzufügen der neuen Referenz für die eDocPort32.dll (falls für „early binding“ Anwendungen notwending )
  3. Ändern der Haupt COM Objekt ID (falls verwendet) von „eDocPort.Port“ auf  „eDocPort32.Port“
  4. Ändern aller Instanzen des eDocPrintPro SDK COM Object Namespace von eDocPort  auf eDocPort32 – üblicherweise mit einem einzigen „Ersetzen“ Befehl.

Diese zusätzliche kombinierte 32/64bit Schnittstelle steht ab der Version 3.17.0 zur Verfügung.

iPaper 2 – Drucker per SDK als „normaler“ PDF Drucker verwendbar

Mit der Version 2.1.21 von iPaper 2.0 ist es jetzt auch möglich den iPaper PDF Treiber wie den eDocPrintPro Drucker per SDK zusteuern und aus eigenen Programmen heraus zu verwenden. Damit ist es bei iPaper Installationen nicht mehr erforderlich zusätzlich noch den eDocPrintPro Treiber zu installieren. Die Basis dafür ist das eDocPrintPro SDK sowie ein zusätzliches Beispiel in Form eines MS-Word Macros der zeigt wie iPaper temporär deaktiviert, ein PDF per Druckvorgang erzeugt und danach iPaper wieder aktiviert wird.

Einsatzbereich wäre z.b. dass per Macrosteuerung über MS-Word die iPaper PDF Briefpapiere und Vorlagen direkt erzeugt werden wobei die aktuellen Informationen für die Vorlagen und die Briefpapiere über eine Datenbank abgefragt werden.

iPaper PDF - SDK Beispiel zur Ansteuerung des Treibers iPaper PDF - SDK Beispiel zur Ansteuerung des Treibers_1

Das Beispiel zeigt per VBA folgenden Ablauf:

  • Deaktivieren der iPaper.NET Überwachung damit das erzeugte PDF nicht sofort mittels iPaper verarbeitet wird
  • Wegspeichern der Einstellungen für den iPaper PDF Drucker (Ordner und Dateiname)
  • Setzen des Zielpfads und Dateinamens auf c:\temp\ipaper\test.pdf
  • Ausdruck über den iPaper PDF Treiber
  • Warten auf den Event für Ende des Druckjobs
  • Wiederherstellen der ursprünglichen Einstellungen
  • Re-Aktivieren der Überwachung für die automatisierte iPaper Verarbeitung

Weitere Informationen zum eDocPrintPro SDK finden Sie hier >>>

eDocPrintPro SDK – VB Beispielprogramme als EXE zum Testen

Das eDocPrintPro SDK ermöglicht Softwareentwicklern alle Parameter des Treibers aus der eigenen Anwendung heraus zu kontrollieren, sowie die Events für den Beginn und das Ende der Dateierstellung zu bekommen. Das SDK ist sowohl für den 32bit als auch für den 64bit eDocPrintPro Treiber verwendbar. Für den 64bit Treiber ist jedoch auch eine 64bit Programmiersprache erforderlich.

Um sich ein Bild über die verfügbaren Funktionen des eDocPrintPro SDK zu machen, können Sie zwei kompilierte EXE VB Beispiel-Anwendungen testen. Im SDK selbst ist dann auch der Source Code für diese Anwendungen enthalten und zeigt wie der Druckertreiber aus einer Programmiersprache heraus verwendet und gesteuert werden kann.

eDocPrintPro Visual Basic 32bit Beispiele als EXE >>>

eDocPrintPro - VB Sample Print Dokument - konvertiert DOC nach PDF

Bitte beachten Sie dass für diese 32bit Beispiele die 32bit Version des eDocPrintPro Druckertreibers erforderlich ist.

Bei Erwerb des SDK erhalten Sie sowohl eine Dokumentation der Funktionen sowie Beispielanwendungen im Source Code.

eDocPrintPro Plugin SDK inkl. Beispiele, Source Code, Setup für C++, VB, C# als COM, DLL, EXE

eDocPrintPro verfügt über eine Plugin Schnittstelle die es ermöglicht den Druckertreiber modular zu erweitern ohne das Basisprodukt selbst verändern oder anpassen zu müssen. Mit Hilfe der Plugins können nach dem Druckvorgang ein oder mehrere nachgelagerte Verarbeitungsschritte interaktiv oder silent ablaufen. Es gibt bereits für die verschiedensten Anwendungsbereiche eine ganze Reihe an Plugins die teilweise aus Projekten heraus entstanden sind.

Das Plugin SDK ist frei und kostenlos verfügbar.

Das Setup für das Plugin SDK umfaßt mehrere Beispiel Plugins für unterschiedliche Programmiersprachen – VB, C++ sowie .NET C# und zeigt auch die verschiedenen Möglichkeiten Plugins zu integrieren – als COM, DLL oder EXE. Die Beispiele umfassen die Dokumentation, den Source Code, den MSI Setup-Skript sowie das fertige Setup. Auf Basis dieser Information ist es für jedem Programmierer sehr einfach möglich eigene Plugins zu schreiben und damit den eDocPrintPro Druckertreiber beliebig zu erweitern und zu integrieren.

eDocPrintPro Plugin SDK – mitgelieferte Beispiele:

  • C++ COM – erzeugt eine E-Mail Nachricht mit dem Dokument als Anhang unter Verwendung von MAPI.
  • C++ DLL – erzeugt eine LOG Datei. Der Zielpfad/Namen kann über das Konfigurations User Interfece festgelegt werden.
  • C++ EXE – erzeugt Thumbnail Bilder von Image Dokumenten  (Ausgabeformat JPEG, TIFF des Treibers – nicht jedoch für PDF).
  • C# .NET EXE – erzeugt eine E-Mail Nachricht mit dem Dokument als Anhang unter Verwendung der Microsoft Outlook API.
  • VB EXE – kopiert das erzeugte Dokument in den konfigurierten Ziel-Ordner.

eDocPrintPro Plugin – Besonderheiten:

  • Modulare Erweiterung des eDocPrintPro Druckertreibers um nachgelagerte Verarbeitungschritte
  • Unabhängigkeit von der Programmiersprache mit der das Plugin entwickelt wird – COM, DLL, EXE
  • Fertige Beispiele für C++, VB, .NET C# inkl. Dokumentation, Source Code, MSI-Setup-Scripts bzw. fertige Setup´s
  • Plugins können über ein Konfigurations User Interface verfügen
  • Plugins können „Silent“ oder mit Userinterface bzw. Dialogen für den Anwender ablaufen
  • Plugins können „Einzeln“ oder mehrere „Verkettet“ nacheinander abgearbeitet werden.
  • Verkettete Plugins können unter einem Set-Namen zusammengefaßt gespeichert und aufgerufen werden.

Eine Übersicht der aktuell verfügbaren Plugins finden sie hier >>>

Download – eDocPrintPro Plugin SDK 32-Bit (ca. 20MB) >>>

Download – eDocPrintPro Plugin SDK 64-Bit (ca. 23 MB) >>>

Wir erstellen Ihnen gerne ein entsprechendes Angebot für die Entwicklung eines individuellen Plugins. Im Rahmen der Erstellung eines „eDocPrintPro Customized Setups“ können wir auch Setup´s erstellen die bereits auch neu und individuell erstellte und fertig konfigurierten Plugin´s beinhalten. Damit erhalten Sie ein „Ready to Run“ Setup für die individelle Integration sowie mit projekt- oder kundenspezifischen Funktionen.

Sollten sie diesbezüglich Ideen und Erweiterungswünsche haben so kontaktieren Sie uns bitte >>>

eDocPrintPro 64bit Version – 32bit Anwendungen

Um auf einem 64bit Microsoft Windows Betriebssystem – z.b. MS-Vista64 , Windows 2003-64 bzw. 2008 Server den  eDocPrintPro Druckertreiber zu installieren ist die 64bit Version des Treibers erforderlich. Will man nun diesen Treiber  über die SDK / API aus eigenen Anwendungen heraus ansteuern so muß man beachten dass dies nur aus 64bit Anwendungen – 64bit COM Schnittstelle – heraus möglich ist. Es ist also nicht einfach möglich den 64bit Treiber aus einer 32bit Anwendung heraus anzusprechen. .NET Anwendungen lassen sich relativ einfach von 32bit auf 64bit umstellen – bei anderen Entwicklungsumgebungen/Programmiersprachen ist eine solche Umstellung meist relative aufwändig bzw. auch eventuell nicht möglich.

Mögliche  Lösung:

Eine .NET Remoting Server Anwendung (EXE) der als x64 Prozess  läuft, wobei 32bit Anwendungen sich über .NET Remoting auf diesen verbinden können. Zur Kommunikation wird ein TCP Kanal oder aber auch HTTP bzw. IPC benutzt. Ein solcher .NET Remoting Server kann von der lokalen Arbeitsstation aber auch von externen Workstations aus „kontrolliert“ und genutzt werden.

Geplante Implementierung für die eDocPrintPro API :

Implementierung als „64bit .NET Executable Wrapper“ Anwendung  welche die eDocPrintPro SDK Funktionen den  Remote Clients zur Verfügung stellt, sowie eine 32bit .NET DLL die aus jeder beliebigen 32bit Anwendung heraus verwendet werden kann. Diese DLL stellt sowohl eine .NET als auch eine COM Schnittstelle zur Verfügung. Die DLL startet den Wrapper, führt die Interprozess-Kommunikation durch und stoppt diesen wenn erforderlich wieder. Die  Interprozess Kommunikation stellt damit die Brücke zwischen der 32bit Anwendung – über die 32bit DLL – und der 64bit Wrapper EXE her.  Die Warpper Anwendung kann nun direkt mit der eDocPrintPro API zusammenarbeiten – da  beide auf 64bit basieren.

eDocPrintPro – Speichern / Laden der Einstellungen durch Profile über ESF / XML

Beim eDocPrintPro Druckertreiber gibt es eine Funktion alle Settings des Druckertreibers als Profil unter einem bestimmten Namen zu speichern und wieder zu laden. Alle Einstellungen werden damit in einer einzigen XML Datei mit der Endung ESF (eDocPrintPro Settings Format) abgespeichert.

ESF XML Einstellungen Profile

Bei der Installation des Treibers werden einige Default ESF Dateien mitinstalliert – diese stehen damit sofort zur Auswahl bereit – z.b. JPG, PDF_Min, PNG, TIF_Color, TIF_Mono – weitere eigene Profile können jederzeit angelegt werden.

Es ist auch möglich das gesamte Userinterface des Treibers zu sperren und nur die Auswahl der Profile zuzulassen. Damit werden dem Anwender vorkonfigurierte Einstellungen zur Verfügung gestellt – damit kann er nur Druckerprofile auszuwählen und verwenden – nicht jedoch individuelle Einstellungen vornehmen. Eine wesentliche Erleichterung die den Anwender bei der Vielzahl an möglichen Optionen und Einstellungen unterstützt und einheitliche Richtlinien durchzusetzen hilft.

ESF Profile sind als XML Dateien aufgebaut und werden im Order „C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\eDocPrintPro“ abgelegt.

Die XML Struktur einer ESF Profildatei ist relativ einfach aufgebaut:

  • Der Root Knoten hat einen Standard Namen: eDocPrintPro
  • Unterhalb des Root Knotens baut sich die Struktur aus dem Registry  Tree  – „HKEY_CURRENT_USER\Software\MAY Computer\eDocPrintPro\<printer name>“ – entsprechend auf.
  • Jeder Knoten hat eine Attributs Liste mit den gleichen Namen wie in der Registry. DWORD Werte sind mit dem Prefix „L“ und String Werte mit dem Prefix „T“ gekennzeichnet. Dieser Ansatz wurde gewählt um die Lesbarkeit der Datei zu erleichtern und die Typ Information zu erhalten um die entsprechenden Registry Werte erzeugen zu können. Falls ein Registry Schlüssel ein Leerzeichen enthält <SPACE>, so werden diese durch drei Unterstriche „___“ ersetzt.

eDocPrintPro Registry Key Information

eDocPrintPro ESF XML Information

ESF Dateien können auch auch über die eDocPrintPro API erstellt, geladen und aktiviert werden

Neue Version 3.8.0 – eDocPrintPro, PDF/A Add-On, SDK-API verfügbar

Die verschiedenen Setup´s des eDocPrintPro Druckertreibers wurden auf die Version 3.8.0 aktualisiert. Dies betrifft das EXE, MSI Setup, das Gesamtsetup für die PDF/A Version sowie das SDK-API Setup.

  • SDK Fehler behoben – Ansteuerung des PDF/A Ausgabeformats
  • SDK Dokumentation aktualisiert
  • PDF/A – VB6 Beispielprogramm wurde hinzugefügt.
Webshop