The eDocPrintPro SDK is based on the eDocPort COM object. It is a 32-bit component on 32-bit OS and a 64 bit component on 64-bit OS.
The SDK documentation is similar for 32/64 bits, and most samples are similar: .NET samples works on both platforms, C++ samples must be compiled for the correct target platform and work. The Visual Basic samples are unusable on 64-bit os, because the vb framework does not recognize 64-bit com objects.
The wrapper was a bridge between 32-bits appplications running on 64-bit platform to allow them using the eDocPrintPro SDK. Because it uses remote objects, it ban be used to control a remote eDocPrintPro printer too.
The idea behind is to run an executable – the server – which connects the local eDocPrintPro COM interface, able to call all the SDK functions and to receive events. This server has a TCP communication interface for a maximum configurable number of clients, on the same workstation or on different workstations. The server maintains a list of connected clients with a hand-shake protocol. This means, each client sends “I’m life” messages to the server, so the server will disconnect the dead clients after a configured time-out. The server itself can be configured to run forever or to stop after the last client is disconnected and an additional time-out is spent.
Each client expose a dual interface to the host application: a .NET class collection and a COM objects collection – both with strong similarities with the regular SDK. So the application can perform all SDK functions using this wrapper.
What are the benefits of the wrapper?
- The TCP communication breaks the barriers of the platforms and local workstation. A 32 bit applicaiton can exchange information with a 64-bit one, on the same computer or on different computers.
- eDocPrintPro can be handled from a remote location: reading / writing settings or receiving events.
- A multi client application can connect to different workstation and monitor what’s printing.
- The client interface is more friendly for a developer, specially for a .NET developer.
What are the drawbacks ?
- The application using the wrapper is more complicate to handle: there is a basic TCP port for SDK calls and subsequent ports for events, one for each connected client, as written in the documentation. The configuration must keep track of the existing port conflicts. The application cannot check it, if the communication port fails, the communication will terminate.
- Firewalls and anti virus software must be configured to allow access to the needed ports for the server and clients. Not quite easy in a complex network.
- The calls are a little slower than the direct SDK accesses, but nothing wrong here, because not big data is handled.
The server (eDocSdkWrapper.exe) is PAM protected. It will work full 30 days. After the expiration, it will display a message box to each client connection.
>>> Documentation eDocPrintPro SDK wrapper – 32 / 64bit .NET based
>>> Download Setup eDocPrintPro SDK wrapper – 32 / 64bit .NET based