10-27-2015 02:49 PM
You have to install SDK's (Software Development Kits) to access the classes. I would recommend installing the SDK's for both version 7 and 8 as I am not sure which one I used back then.
11-11-2015 04:02 PM
Do you happen to know if your example VI only prints to a 450 Twin Turbo or specific printers? It seems unlikely, but so far we can only get that .VI to work with the 450 Twin Turbo. We hooked up a regular 450 and it doesn't work. It keeps putting items in the print queue for the Twin Turbo. If we don't have the Twin Turbo installed, it still doesn't go to the 450. Changing which printer is the default doesn't affect things.
Thanks for any guidance.
11-11-2015 04:24 PM
Do you happen to have any older Dymo driver installation files or discs? I would really like to recreate a system with older drivers, but dymo.com only has the latest.
11-12-2015 11:34 AM
I just want to let you know:
1. We got the newer version of the ActiveX drivers working using very similar class and method names to what was in your example.
2. We got a response from Dymo about older drivers:
~~~~~~~~~~~~~~~~
We keep most DLS versions online for download. Go to the following link and right below the “Like” button are 3 tabs, click on the “Support” tab. This tab contains the archived versions of our software. Next click on “View All”, and you should see all archived versions available for download.
http://www.dymo.com/en-US/dymo-label-software-v8-5-windows#tabContain
~~~~~~~~~~~~~~~~
Thanks.
02-19-2018 09:29 AM
Would it be possible for you to post a higher level overview of how you got all this to work ?
I am trying to replicate exactly your project.
Thanks
02-21-2018 09:21 AM
I have been able to get everything to work except opening a label and changing a field. I am confused as to which structure and function should be used to open a label, the IDymoAddin6 or IDymoLabels3.
The OpenIDymoLabels3 always returns an error, while the IDymoAddin6Open works fine but then there is no IDymoAddin6 SetFiled function nor can the handle be shared.
02-21-2018 09:55 AM - edited 02-21-2018 09:57 AM
For anyone that might be interested, here is what finally worked. ***BIG THANKS TO pvhttz***, without his or her sample I do not think I would have ever figured out this sloppy and badly documented SDK.
Add an Active X Controller for DSL SDK COM Type Library
# include "whatever you called the library.h"
VBOOL result;
CAObjHandle printerHandle,labelHandle;
char* PrinterList;
// open DymoADDIN SDK handle
error = Dymo_NewIDymoAddin6(NULL, 0, LOCALE_NEUTRAL, 0, &printerHandle);
// get Printer List
error = Dymo_IDymoAddin6GetDymoPrinters (printerHandle, NULL, &PrinterList);
// Select Dymo 450 printer
error = Dymo_IDymoAddin6SelectPrinter(printerHandle,NULL,PrinterList,NULL);
// Is Dymo 450 Printer Online ?
error = Dymo_IDymoAddin6IsPrinterOnline (printerHandle, NULL, PrinterList, &result);
// open Label
error = Dymo_IDymoAddin6Open (printerHandle, NULL, "C:\\Label\\MyLabel.label", &result);
// open DymoLabels SDK handle
// label is already loaded at this point
error = Dymo_NewIDymoLabels3(NULL,0,LOCALE_NEUTRAL,0,&labelHandle);
// Set Fields
error = Dymo_IDymoLabels3SetField(labelHandle,NULL,"TEXT1","DymoSDKsucks1",&result);
error = Dymo_IDymoLabels3SetField(labelHandle,NULL,"TEXT2","DymoSDKsucks1",&result);
// Save Label with new fields
error = Dymo_IDymoAddin6Save (printerHandle, NULL, &result);
// Print existing loaded label
error = Dymo_IDymoAddin6Print (printerHandle, NULL, 1, VTRUE, NULL);
// quit Dymo SDK
// not sure if this is needed or not
error = Dymo_IDymoAddin6Quit (printerHandle, NULL);
// discard handle
CA_DiscardObjHandle(printerHandle);
CA_DiscardObjHandle(labelHandle);
CA_FreeMemory (printerHandle);
CA_FreeMemory (labelHandle);