DDE Dynamic Data Exchange is a more flexible way to automate printing than using command line arguments, but it requires knowledge of a programming language that supports DDE, such as Visual Basic or C++. Please refer to the Win32 API documentation to learn how to establish a DDE connection.
Automation features are no longer sold and are being deprecated. You may continue to use the features, however new dongles are not shipped with these features enabled, and no upgrades are possible with this feature enabled. Automation features are now available by combining PrintShop Mail with the power of PlanetPress Workflow Tools, part of PlanetPress Suite.
To connect to the PrintShop Mail DDE Server, make sure PrintShop Mail is running and open a DDE-connection to server "PrintShopMail6".
// include "ddeml.h"
UINT iReturn = DdeInitialize(&idInst, (PFNCALLBACK)DdeCallback,
APPCLASS_STANDARD | APPCMD_CLIENTONLY, 0 );
HSZ hszApp = ::DdeCreateStringHandle(idInst, "PrintShopMail6", 0);
HSZ hszTopic = ::DdeCreateStringHandle(idInst, "C:\\untitled.psmd", 0);
HCONV hConv = ::DdeConnect(idInst, hszApp, hszTopic, NULL);
::DDEExecute(idInst, hConv, "[FileExit]");
TextBox.LinkTopic = "PrintShopMail6|Connect" ' Set link topic.
TextBox.LinkMode = vbLinkManual ' Set link mode.
On Error Resume Next 'TextBox thinks DDE is not executed,
'when actually it is.
TextBox.LinkExecute "[FileExit]"
On Error GoTo 0
Command |
Description |
[FileNew] |
Closes the current document (if any) and creates a new document. |
[FileOpen "filename"] |
Opens the specified document. |
[FileClose] |
Closes the current document. |
[FilePrint] |
Prints the current document to the default printer. |
[FilePrintRange "start", "end"] |
Prints a range or records to the default printer. |
[FileExit] |
Closes PrintShop Mail. |
[DatabaseOpen "filename"] |
Opens the specified database. |
[DatabaseClose] |
Closes the current database. |
[DatabaseOpenODBC "source"] |
Opens the specified ODBC data source. |
Note: This only applies to PrintShop Mail 6.x or later. PrintShop Mail 4.x and 5.x are slightly different. If desired, the text can be adapted for 4.x and 5.x by changing the word “PrintShopMail6” to “PrintShopMail4.x” or PrintShopMail5.x (all 3 occurrences).