Commands – MagTek 99875125 User Manual
Page 12

MagTek Device Driver for Windows
COMMANDS
Like properties, commands are identified by a string name and have string arguments. All
commands are terminated by line feed
application simply writes it to the driver in the same manner as writing to a file or serial port. If
the command has a response defined for it, the application reads it from the driver using the same
I/O handle as in the write.
Four types of commands are defined by the device control language:
•
•
•
•
Non-interactive – These commands manipulate the device without requiring any
interaction with the user. The property commands
get
,
set
,
reset
, and
ver
are
examples of this type.
Interactive – These commands interact with the user. They do not necessarily require the
user to do anything but may only prompt the user to do something.
display
is an
example of such a command. Others, such as
read
or
write
, however, require user
interaction to complete. For example, the user must either swipe a card or cancel the
operation in order to complete a read command.
Device-specific – These commands give access to device-specific features. For example,
the
load_key
command is available for MagTek devices that use keys to encrypt data
before sending it to the host.
Raw – These are effectively escape commands. They allow the application to bypass the
driver to perform device-specific operations that are not included in the driver syntax and
not supported elsewhere. With these commands, an application has no limitations on the
amount of control it has over a device. The raw commands can be formatted exactly as
specified in the device documentation. The command bracketing will be inserted by the
driver if required (e.g.,
commands are defined for this type:
rawsend
and
rawrecv
, used to send and receive
data directly to the device, and
rawxact
, a transactional version that is a combination of
the first two.
A small set of interactive and non-interactive commands is all that is required for an application
to perform the most common tasks with these devices. Device-specific or raw commands should
rarely be needed.
4