background image

 

  1 

SECTION 1.  OVERVIEW 

 
The sections of this manual are as follows: 
 
Section 1. 

Overview 

Section 2. 

Architecture and Operation 

Section 3. 

Functions – describes ExpressCard 1000 API functions and return codes. 

 

REQUIREMENTS

 

 
The following item is required for software installation:   

P/N 33090060 ExpressCard Software Development Kit (This CD installs ExpressCard 1000 Demo 

Program and MTECSDK.dll) 
 

INTRODUCTION

 

 
The ExpressCard 1000 (EC1000) is a desktop card production/personalization system that has  
the capability to instantly issue financial or ID cards in approximately 2 to 3 minutes per card. 
 
The primary functions and features of the EC1000 are as follows: 

 

Dual card-input hoppers (100 cards per hopper) 

 

Manual Insertion Slot (Single card entry) 

 

Encoder module (Magstripe/smartcard/contactless-card/MagnePrint) 

 

Thermal/Dye-Sublimation Printer (Print on dual sides of card) 

 

Embosser/Rear-Indent module (Mechanically embosses/indents characters on card surface) 

 

Exit module (Exits completed card, or stores rejected card in internal hopper) 

 

Secure enclosure that can logically detect/permit access to the device 

 

Touchscreen LCD display that provides for primary user interface. 

 

Ethernet interface 

 

XML protocol, using MagTek defined key-value pairs. 

 
This manual is intended for use by Application Programmers who want to develop custom application 
code to directly control and interface to the EC1000 device. 
In regard to interface options, programmers can choose from 2 approaches to facilitate an interface to the 
device: 
1. Directly utilize XML protocol and MagTek defined key-value pairs. 
2. Utilize a MagTek API DLL. 
 
Both options are effective in facilitating an interface to the device.  
However, there is probably an advantage in utilizing the MagTek API, as it will ensure that if any changes 
occur to the underlying hardware interface of the device (e.g. USB, RS-232, Firewire, etc…), the 
Application layer will be abstracted from these changes, and will not have to make any code changes. 
 

Summary of Contents for EXPRESSCARD 1000

Page 1: ...RENCE MANUAL WINDOWS API SPECIFICATIONS MANUAL PART NUMBER 99875367 1 SEPTEMBER 2007 REGISTERED TO ISO 9001 2000 1710 Apollo Court Seal Beach CA 90740 Phone 562 546 6400 FAX 562 546 6301 Technical Sup...

Page 2: ...nt may be reproduced or transmitted in any form or by any means electronic or mechanical for any purpose without the express written permission of MagTek Inc MagTek is a registered trademark of MagTek...

Page 3: ...ditions or restrictions contained herein Should Licensor terminate this Agreement due to Licensee s failure to comply Licensee agrees to return the Software to Licensor Receipt of returned Software by...

Page 4: ...Error Reporting 12 Debugging API 12 SECTION 3 EXPRESSCARD 1000 API 13 MTECSDK_GetDevice 13 Parameters 13 Return Values 13 Remarks 13 Example 13 MTECSDK_OpenDevice 14 Parameters 14 Return Values 14 Re...

Page 5: ...Example 23 MTECSDK_GetAttribute 24 Parameters 24 Return Values 24 Remarks 24 Example 25 MTECSDK_LogEnable 26 Parameters 26 Return Values 26 Remarks 26 Example 26 MTECSDK_SetLogFileHandle 27 Parameter...

Page 6: ......

Page 7: ...module Mechanically embosses indents characters on card surface Exit module Exits completed card or stores rejected card in internal hopper Secure enclosure that can logically detect permit access to...

Page 8: ...nd status and functional aspects the device interface Of primary importance is to review the code samples contained in the appendices of this document The code samples provide clear instructions regar...

Page 9: ...tions used follow the illustration Application Figure 2 1 ExpressCard 1000 Software Architecture COMPUTER EXPRESSCARD 1000 DEVICE Wininet dll C API to xfer data to a web XML to Key Value and vice vers...

Page 10: ...to XML format using msxml4 dll and then send it to the device using wininet dll It also provides functions to convert the response from the device XML format to key value pairs msxml4 dll Microsoft XM...

Page 11: ...s of the ExpressCard 1000 device to obtain device capabilities information is followed Assuming the ExpressCard 1000 device has IP address 192 168 10 100 type the following line in the address box of...

Page 12: ...in device status information Assuming the ExpressCard 1000 device has IP address 192 168 10 100 type the following line in the address box of the Web browser Internet Explorer is used in this example...

Page 13: ...e usage information Assuming the ExpressCard 1000 device has IP address 192 168 10 100 type the following line in the address box of the Web browser Internet Explorer is used in this example https 192...

Page 14: ...r This file contains a list of default ExpressCard 1000 connections and IP addresses This file is required by the MTECSDK dll MTECSDK dll Windows System32 folder ExpressCard 1000 API wininet dll Windo...

Page 15: ...ends a process request to a given device to process card with given options 16 MTECSDK_QueryInfo Sends a request to a given device name to query for info on a given query parameter 18 MTECSDK_SendComm...

Page 16: ...Figure 2 4 illustrates the sequence of document processing ExpressCard 1000 Present Successful Open Device Select desired options for document processing Yes Yes Send Options to Device Check Completio...

Page 17: ...to send the process options to the ExpressCard 1000 device 5 ExpressCard 1000 processes the document with the given process options and returns the result of the process operation The result is stored...

Page 18: ...and return messages from the ExpressCard 1000 If an error occurs due to the failure of API function the error is returned as the return code of the API provided by MTECSDK dll The Windows XML Specific...

Page 19: ...EC_ST_DEVICE_NOT_FOUND EC_ST_BAD_PARAMETER Remarks If the function succeeds the return value is EC_ST_OK The device name of the device is filled in the buffer pointed by the parameter pcDevName If th...

Page 20: ...E_NAME EC_ST_DEVICE_NOT_FOUND EC_ST_DEVICE_NOT_RESPONDING EC_ST_MSXML_NOT_FOUND Remarks If the pcDevName is NULL the return value is EC_ST_BAD_DEVICE_NAME If no device is found the return value is EC_...

Page 21: ...Return Values EC_ST_OK EC_ST_BAD_DEVICE_NAME EC_ST_DEVICE_NOT_FOUND Remarks If the pcDevName is NULL the return value is EC_ST_BAD_DEVICE_NAME Example define DEVICE_NAME_LEN 128 int i 1 DWORD dwResult...

Page 22: ...ntaining the options to be used in processing the card The options are stored in the buffer by using function MTECSDK_SetValue pcDocInfo Pointer to the buffer containing the information returned from...

Page 23: ...ror results from bad connection with device can be one of the following EC_ST_CONNECT_REQUEST_TIMEDOUT EC_ST_REQUEST_TIMEDOUT EC_ST_DEVICE_NOT_RESPONDING EC_ST_ERR_INTERNET_CONNECT EC_ST_ERR_HTTP_OPEN...

Page 24: ...the section name e g Device Capabilities Device Usage DeviceStatus etc pcSectionData Pointer to the buffer that is used to store the data of the inquiry section pdwLength Specifies the size of the pc...

Page 25: ...from bad connection with device can be one of the following EC_ST_CONNECT_REQUEST_TIMEDOUT EC_ST_REQUEST_TIMEDOUT EC_ST_DEVICE_NOT_RESPONDING EC_ST_ERR_INTERNET_CONNECT EC_ST_ERR_HTTP_OPEN_REQUEST EC_...

Page 26: ...the pcOptions buffer Return Values EC_ST_OK EC_ST_NOT_ENOUGH_MEMORY EC_ST_BAD_DATA EC_ST_BAD_SECTION_NAME EC_ST_BAD_BUFFER_LENGTH Remarks The function returns EC_ST_NOT_ENOUGH_MEMORY if the pcOptions...

Page 27: ...using MTECSDK_SetValue function ULONG MTECSDK_GetValue char pcDocInfo char pcSection char pcKey char pcValue DWORD pdwLength Parameters pcDocInfo Buffer pointer containing all the key value pairs pcS...

Page 28: ...eter EC_ST_KEY_NOT_FOUND is returned Example char Settings 4096 char DocInfo 4096 char device 4096 DWORD SettingsBufferSize DWORD DocInfoSize char cValue 1024 DWORD valueSize DWORD dwStatus Initialize...

Page 29: ...ptions buffer Return Values EC_ST_OK EC_ST_NOT_ENOUGH_MEMORY EC_ST_BAD_DATA EC_ST_BAD_SECTION_NAME EC_ST_BAD_BUFFER_LENGTH Remarks The function returns EC_ST_NOT_ENOUGH_MEMORY if the pcOptions buffer...

Page 30: ...s the retrieved string pdwLength Specifies the size of the pcAttribute buffer Return Values EC_ST_OK EC_ST_NOT_ENOUGH_MEMORY EC_ST_ERR_LOAD_XML EC_ST_ERR_GET_DOM_POINTER EC_ST_BAD_DATA EC_ST_BAD_SECTI...

Page 31: ...tion MTECSDK_GetDevice to get device name for variable device Call MTECSDK_ProcessDoc function to process a document dwStatus MTECSDK_ProcessDoc device Settings DocInfo DocInfoSize if dwStatus MTEC_ST...

Page 32: ...unction MTECSDK_SetLogFileHandle and also a TRUE value is set for parameter of function MTECSDK_LogEnable By default logging is disable void MTECSDK_LogEnable BOOL bEnable Parameters bEnable a Boolean...

Page 33: ...Return Values No value is returned from this function Remarks Example define DEVICE_NAME_LEN 128 int i 1 DWORD dwResult HANDLE fileHandle char cDeviceName DEVICE_NAME_LEN while dwResult MTECSDK_GetDev...

Reviews: