• No se han encontrado resultados

HASH SHA1 : 985973DD32581E5510624B82436D9274A2E57849 Código CSV : 234531386022568043704095

4.1.3. INFORMACIÓN ACADÉMICA

This info. should be used by developers other than VC++, (like VBasic, Delphi, ...) who need to write the translation of rsi_cmd.h into valid statements and data types of the chosen programming language.

Module rsidll32.bas is provided for Visual Basic. Note that some padding is required for proper struct member alignment.

Datalog structures:

RSI_DATA_LOG_ELEMENT offset, size: 28 addr 0, 1

time 1, 6 format 8, 4 data1 12, 6 data1.id 0, 5 data1.data 0, 5 data1.threshold 0, 2 data2 20, 8

data2.dlf17 0, 8 data2.dlf19 0, 8 data2.dlf30 0, 8 data2.dlf48 0, 8 data2.score 0, 2 data2.ta_7 0, 8

N O T E S

data2.ta_15_1 0, 8 data2.ta_15_2 0, 8 data2.ta_15_3 0, 8 data2.id 0, 5

data2.flag 0, 4 data2.data 0, 5 RSI_TA_7 offset, size: 8 type 0, 4

department 4, 4

RSI_TA_15_1 offset, size: 8 type 0, 4

category 4, 4

RSI_TA_15_2 offset, size: 8 type 0, 4

data.department 4, 4 data.bulkHours 4, 4 data.bulkDollars 4, 4 RSI_TA_15_3 offset, size: 8 type 0, 4

department 4, 4

RSI_BULK_DOLLARS offset, size: 4 dollars 0, 2

cents 2, 1 deduct 3, 1

RSI_BULK_HOURS offset, size: 4 hours 0, 2

minutes 2, 1 deduct 3, 1

RSI_DLF_19 offset, size: 8 ta 0, 4

data 4, 4

RSI_DLF_30 offset, size: 8 ta 0, 4

data 4, 4

RSI_DLF_48 offset, size: 8 ta 0, 4

data 4, 4

Old readers structures:

RSI_BELL_SCHEDULE_ELEMENT offset, size: 4 min 0, 1

hour 1, 1 dur 2, 1

dowMask 3, 1

RSI_BELL_SCHEDULE offset, size: 400 bells 0, 400

RSI_CALIBRATION_DATA offset, size: 6 exposure 0, 2

row 2, 2 col 4, 2

RSI_DATA_BANK offset, size: 4096 data 0, 4096

RSI_DISPLAY_MESSAGE offset, size: 44 userSpecific 0, 4

halfsecs 4, 1 id 4, 5

msg 9, 32

RSI_LAST_TEMPLATE offset, size: 12 score 0, 2

templateVector 2, 9

RSI_RESPONSE offset, size: 20 type 0, 4

data 4, 4 dataSize 8, 2 buffer 12, 4 buflen 16, 2

RSI_RESULTS offset, size: 8 id 0, 5

score 6, 2

RSI_SETUP_DATA offset, size: 144 passwords 0, 50

threshold 50, 2

auxFlag 52, 4 auxTimeout 56, 2 printFlag 60, 4 statusFlag 64, 4 auxAlarmFlagD 68, 4 auxAlarmFlagA 72, 4 auxAlarmFlagI 76, 4 auxAlarmFlagT 80, 4 auxAlarmFlagP 84, 4 lockTime 88, 2

shuntTime 90, 2

networkBaudIndex 92, 4 printerBaudIndex 96, 4 readerAddress 100, 1 facilityCode 102, 2 operatingMode 104, 4 outputMode 108, 4 beeperFlag 112, 4 idLength 116, 1

accountingMode 117, 1 unlockTimeZone 118, 1 auxTimeZone 119, 1 auxDuressFlag 120, 4 duressCharacter 124, 1

numberOfTries 125, 1 dlsOn 126, 6

dlsOff 132, 6

display12Hour 140, 4 RSI_STATUS offset, size: 96 h_read 0, 4

led1 4, 4 led2 8, 4 led3 12, 4 led4 16, 4 any_key 20, 4 aux_out1 24, 4 aux_out2 28, 4 res_sys 32, 4 verify_rdy 36, 4 rslts_rdy 40, 4 failed_cmd 44, 4 dlog_rdy 48, 4 id_nim 52, 4 cmd_bsy 56, 4 kp_id 60, 4 tmpr_st 64, 4 aux_in2 68, 4 aux_st 72, 4

aux_in1 76, 4 door_st 80, 4 rex_st 84, 4 lock_st 88, 4 aux0_st 92, 4

RSI_TIME_DATE offset, size: 6 second 0, 1

minute 1, 1 hour 2, 1 day 3, 1 month 4, 1 year 5, 1

RSI_TIME_ZONE_INTERVAL offset, size: 3 start 0, 1

stop 1, 1 dowMask 2, 1

RSI_TIME_ZONE_TABLE offset, size: 2208 holidays 0, 1488

timeZones 1488, 720

RSI_USER_RECORD offset, size: 24 id 0, 5

templateVector 5, 9 authorityLevel 16, 4 rejectThreshold 20, 2

timeZone 22, 1

New readers structures:

RSI_AUX_CLEAR_FLAG offset, size: 4 onverified 0, 4

RSI_AUX_EVENT_FLAG offset, size: 48 tamper 0, 4

tzviol 4, 4 idref 8, 4 duress 12, 4 auxin1 16, 4 auxin2 20, 4 door 24, 4 tryagain 28, 4 f1key 32, 4 f2key 36, 4 power 40, 4

RSI_AUX_OUTPUT_SETUP offset, size: 60 flags 0, 48

time 48, 2 clear 52, 4 tz 56, 1

RSI_COMMAND_STATUS offset, size: 100 incomplete 0, 4

status 4, 96

RSI_EXT_SETUP_DATA offset, size: 195 readyStr 0, 14

serMode 14, 1 flags0 16, 48 aux1 64, 60 aux2 124, 60 hpDlogFlag 184, 4 timeScale 188, 1 auxKpdCtrl 189, 1 langType 190, 1 dateFmt 191, 1 ringCount 192, 1 ringTimeout 193, 1 ringDelay 194, 1 deFKMasks 195, 1

RSI_EXT_TIME_INTERVAL offset, size: 5 hour_beg 0, 1

minute_beg 1, 1 hour_end 2, 1 minute_end 3, 1 dow 4, 1

RSI_EXT_USER_DATA offset, size: 66 ti 0, 15

fkmasks 16, 2 name 18, 16 data 34, 24 amnesty 58, 1 reserved 59, 6

RSI_EXT_USER_DATA_FIELD offset, size: 72 id 0, 5

xud 6, 66

RSI_EXT_USER_RECORD offset, size: 92 bur 0, 24

xud 24, 66

RSI_READER_INFO offset, size: 104 model 0, 1

memory 1, 1 promDate 2, 20 promName 22, 17 sn 40, 4

snp 44, 1 userCap 46, 2 dlogCap 48, 2 usersEnrolled 50, 2 dlogsPresent 52, 2 reserved 54, 50

RSI_USER_DATA offset, size: 29

id 0, 5 data 5, 24

RSI_USER_MESSAGE offset, size: 37 id 0, 5

msg 5, 32

PACKED_TIME_INTERVAL offset, size: 4 be 0, 3

dow 3, 1

RSI_EXT_TIME_INTERVAL_IN_MINUTE offset, size: 6 beg 0, 2

end 2, 2 dow 4, 1

This chapter is applicable to the new hand readers only.

It is an addition to the existing DLL and available from V2.3.

Chapter

10

Note: Any of the new hand reader commands sent to the old readers will result in a timeout.

All models include HP2K, HP3K, HP4K, HKII and HKCR New Commands Overview Available in Models

rsiAddUserMessage HP4K

rsiClearUserMessages HP4K rsiGetExtSetupData All models rsiAllocResponseBuffer All models rsiDeAllocResponseBuffer All models rsiReadResponseBuffer All models

rsiGetExtUserRecord HP4K

rsiGetOemCode All models

rsiGetReaderInfo All models rsiHereIsExtSetupData All models rsiHereIsExtUserRecord HP4K

rsiHereIsFkeyData All models and HP+

rsiLoadFkeyFromFile All models and HP+

rsiRemoveUserMessage HP4K

rsiSetExtUserData HP4K

rsiSetUserData HP4K

Level 2 API

Hand Reader Commands

rsiAddUserMessage

RSI_RESULT rsiAddUserMessage (RSI_CHANNEL chnl, RSI_USER_MESSAGE FAR* um, RSI_COMMAND_STATUS FAR* cstat);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_USER_MESSAGE FAR* um

A pointer to the structure for the user message.

RSI_COMMAND_STATUS FAR* cstat

P R O T O T Y P E

A R G U M E N T S

A pointer to the structure for the command status.

Sends command RSI_CMD_ADD_USER_MESSAGE to the hand reader.

RSI_SUCCESS if successful.

Any error value returned by rsiUserMessageToData, rsiSendMessage, or rsiGetCommandStatus if unsuccessful.

rsiClearUserMessages

RSI_RESULT rsiClearUserMessages (RSI_CHANNEL chnl);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

Sends command RSI_CMD_CLEAR_USER_MESSAGES to the hand reader.

RSI_SUCCESS if successful.

Any error value returned by rsiSendMessage, or rsiGetResponseStatus if unsuccessful.

The message pool in the hand reader is cleared of all messages.

rsiHereIsExtSetupData

RSI_RESULT rsiHereIsExtSetupData (RSI_CHANNEL chnl, RSI_EXT_SETUP_DATA FAR* setup);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_EXT_SETUP_DATA FAR* setup

A pointer to the structure for the extended setup data.

This function retrieves the existing extended setup data from the reader, updates it with the new extended setup data, and then sends it back to the reader which will save it to its NV-Ram.

RSI_SUCCESS if successful.

rsiGetResponse, and/or rsiParseResponse if unsuccessful.

The setup data structure this function uses is not the format the hand reader uses.

rsiHereIsExtUserRecord

RSI_RESULT rsiHereIsExtUserRecord (RSI_CHANNEL chnl, RSI_EXT_USER_RECORD FAR* ur);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_EXT_USER_RECORD FAR* ur

A pointer to the structure for the extended user record.

Sends command RSI_CMD_HERE_IS_EXT_USER_RECORD to the hand reader.

RSI_SUCCESS if successful.

Any error value returned by rsiExtUserRecordToData, rsiSendMessage, or rsiGetResponseStatus if unsuccessful.

rsiLoadFkeyFromFile

RSI_RESULT rsiLoadFkeyFromFile(RSI_CHANNEL chnl, char

*filename);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

Char *filename

Function key data file generated by FKPARSE.

Sends command RSI_CMD_HERE_IS_FKEY_DATA to the hand reader.

The file is read and validated to ensure its content was generated by FKPARSE before sending it to the hand reader function key data area.

RSI_SUCCESS if successful.

N O T E S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

N O T E S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

Any error value returned by rsiSendMessage, or rsiGetResponseStatus if unsuccessful.

It is recommended to use this function as it can validate the function key data before sending it to the hand reader.

rsiHereIsFkeyData

RSI_RESULT rsiHereIsFkeyData (RSI_CHANNEL chnl, RSI_FKEY_DATA FAR* fkeyData);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_FKEY_DATA FAR* fkeyData

A pointer to the structure for the function key data.

Sends command RSI_CMD_HERE_IS_FKEY_DATA to the hand reader.

The given data is loaded into the hand reader function key data area.

RSI_SUCCESS if successful.

Any error value returned by rsiSendMessage, or rsiGetResponseStatus if unsuccessful.

It is not recommended to use this function as it cannot validate the function key data before sending it to the hand reader.

rsiRemoveUserMessage

RSI_RESULT rsiRemoveUserMessage (RSI_CHANNEL chnl, RSI_ID id);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_ID id

The id of the target user record.

Sends command RSI_CMD_REMOVE_USER_MESSAGE to the hand reader.

N O T E S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

N O T E S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

RSI_SUCCESS if successful.

Any error value returned by rsiSendMessage, or rsiGetResponseStatus if unsuccessful.

All messages in the message pool with the given ID are removed. The ID does not have to be in the user database.

rsiSendExtSetupData

RSI_RESULT rsiSendExtSetupData (RSI_CHANNEL chnl);

Sends command RSI_CMD_SEND_EXT_SETUP_DATA to the hand reader.

rsiSetExtUserData

RSI_RESULT rsiSetExtUserData (RSI_CHANNEL chnl, RSI_EXT_USER_DATA_FIELD FAR* xud, RSI_COMMAND_STATUS FAR*

cstat);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_EXT_USER_DATA_FIELD FAR* xud

A pointer to the structure for the extended user data field.

RSI_COMMAND_STATUS FAR* cstat

A pointer to the structure for the command status.

Sends command RSI_CMD_SET_EXT_USER_DATA to the hand reader.

RSI_SUCCESS if successful.

Any error value returned by rsiExtUserDataToData, rsiSendMessage, or rsiGetCommandStatus if unsuccessful.

This command is used to set the extended data fields in an extended user record. If a record matching the given ID is found, the incomplete flag in the RSI_COMMAND_STATUS structure is FALSE, meaning the command has been carried out successfully. If the given ID is not in the database, the incomplete flag is set to TRUE, meaning the command cannot be carried out, even though it is received properly.

R E T U R N S

N O T E S

P R O T O T Y P E

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N R E T U R N S

N O T E S

rsiSetUserData

RSI_RESULT rsiSetUserData (RSI_CHANNEL chnl, RSI_USER_DATA FAR* udf, RSI_COMMAND_STATUS FAR* cstat);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_USER_DATA FAR* udf

A pointer to the structure for the user-defined field.

RSI_COMMAND_STATUS FAR* cstat

A pointer to the structure for the command status.

Sends command RSI_CMD_SET_USER_DATA to the hand reader.

RSI_SUCCESS if successful.

Any error value returned by rsiUserDataToData, rsiSendMessage, or rsiGetCommandStatus if unsuccessful.

This command is used to set the user-defined field portion of the given record. If the ID is found, the incomplete flag in the RSI_COMMAND_STATUS structure is FALSE, meaning the record has been updated. If the ID is not in the database, the incomplete flag is set to TRUE, meaning the command cannot be carried out, even though it is received properly.

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N R E T U R N S

N O T E S

Level 3 API

High Level Functions

rsiGetExtSetupData

RSI_RESULT rsiGetExtSetupData (RSI_CHANNEL chnl, RSI_EXT_SETUP_DATA FAR* setup);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_EXT_SETUP_DATA FAR* setup

A pointer to the structure for the setup data.

Retrieves the current setup data for the hand reader.

RSI_SUCCESS if successful.

Any error value returned by rsiSendExtSetupData, rsiGetResponse, and/or rsiParseResponse if unsuccessful.

rsiAllocResponseBuffer

RSI_RESULT rsiAllocResponsebuffer (RSI_CHANNEL chnl);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

Sets up an extra buffer for channel for retrieving response from reader.

RSI_SUCCESS if successful.

rsiDeAllocResponseBuffer

RSI_RESULT rsiDeAllocResponseBuffer (RSI_CHANNEL chnl);

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N R E T U R N S

P R O T O T Y P E A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

Throws away extra buffer for channel for retrieving response from reader.

RSI_SUCCESS if successful.

rsiReadResponseBuffer

RSI_RESULT rsiReadResponseBuffer (RSI_CHANNEL chnl, LPBYTE FAR* buffer, WORD FAR* buflen);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

LPBYTE FAR* buffer

Where to stick pointer to extra buffer for channel for retrieving response from reader.

WORD FAR* buflen

Where to stick length of current contents of extra buffer for channel which was filled in when last command to reader was executed.

Supplies pointer to and length of current contents of extra buffer for channel which was filled in when last command to reader was executed.

RSI_SUCCESS if successful.

RSI_ERROR_DATA if extra buffer does not exist.

rsiGetExtUserRecord

RSI_RESULT rsiGetExtUserRecord (RSI_CHANNEL chnl, RSI_ID id, RSI_EXT_USER_RECORD FAR* ur);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

RSI_ID id

The id of the user record to get.

RSI_EXT_USER_RECORD FAR* ur

A pointer to the structure for the extended user record.

Retrieves the extended user record of the requested id from the hand reader.

RSI_SUCCESS if successful.

Any error value returned by rsiSendExtUserRecord, rsiGetResponse, and/or rsiParseResponse if unsuccessful.

rsiGetOemCode

RSI_RESULT rsiGetOemCode (RSI_CHANNEL chnl, RSI_OEM_CODE FAR* oem);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_OEM_CODE FAR* oem

A pointer to the structure for the OEM code.

Retrieves the OEM code from the hand reader.

RSI_SUCCESS if successful.

Any error value returned by rsiSendOemCode, rsiGetResponse, and/or rsiParseResponse if unsuccessful.

rsiGetReaderInfo

RSI_RESULT rsiGetReaderInfo (RSI_CHANNEL chnl, RSI_READER_INFO FAR* ri);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_READER_INFO FAR* ri

A pointer to the structure for the reader info.

Retrieves the reader info from the hand reader.

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N R E T U R N S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

RSI_SUCCESS if successful.

Any error value returned by rsiSendReaderInfo, rsiGetResponse, and/or rsiParseResponse if unsuccessful.

rsiMemoryIs

RSI_MEMORY_OPTIONS rsiMemoryIs (RSI_CHANNEL chnl, RSI_READER_INFO ri);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_READER_INFO ri

A structure for the reader info.

Returns the memory option based on the given reader info.

Any of the RSI_MEMORY_OPTIONS values.

rsiMemoryIs128K, rsiMemoryIs256K, rsiMemoryIs640K

BOOL rsiMemoryIs128K (RSI_CHANNEL chnl, RSI_READER_INFO ri);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_READER_INFO ri

A structure for the reader info.

TRUE if the memory option in the reader info is the same as the memory options asked.

rsiModelIs

RSI_MODELS rsiModelIs (RSI_CHANNEL chnl, RSI_READER_INFO ri);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_READER_INFO ri

A structure for the reader info.

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N R E T U R N S

P R O T O T Y P E A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E A R G U M E N T S

Returns the model value based on the given reader info.

Any of the RSI_MODELS values.

rsiModelIsHK, rsiModelIsHKCR, rsiModelIsHKII, rsiModelIsHP, rsiModelIsHP2K, rsiModelIsHP3K, rsiModelIsHP4K, rsiModelIsSpecial

BOOL rsiModelIsHK (RSI_CHANNEL chnl, RSI_READER_INFO ri);

RSI_CHANNEL chnl

The handle returned by rsiInstallChannel.

RSI_READER_INFO ri

A structure for the reader info.

TRUE if the model in the reader info is the same as the model asked.

D E S C R I P T I O N R E T U R N S

P R O T O T Y P E A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

Data Conversion API

Raw, Packed Hand Reader Data ⇔ Programmer Friendly Structures

rsiDataToExtSetupData

RSI_DATA_ERROR rsiDataToExtSetupData (LPBYTE data, RSI_EXT_SETUP_DATA FAR* setup);

LPBYTE data

A pointer to the buffer with the setup data in raw, packed hand reader format.

RSI_EXT_SETUP_DATA FAR* setup

A pointer to the structure that will receive the converted setup data.

Converts setup data from raw, packed hand reader format to a setup data structure.

RSI_DATA_OK if successful.

One of the values specified in RSI_DATA_ERROR if unsuccessful.

rsiDataToExtUserRecord

RSI_DATA_ERROR rsiDataToExtUserRecord (LPBYTE data, RSI_EXT_USER_RECORD FAR* ur);

LPBYTE data

A pointer to the buffer with the user record data in raw, packed hand reader format.

RSI_EXT_USER_RECORD FAR* ur

A pointer to the structure that will receive the converted user record data.

Converts user record data from raw, packed hand reader format to an extended user record data structure.

RSI_DATA_OK if successful.

One of the values specified in RSI_DATA_ERROR if unsuccessful.

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

rsiDataToReaderInfo

RSI_DATA_ERROR rsiDataToReaderInfo (LPBYTE data, RSI_READER_INFO FAR* ri);

LPBYTE data

A pointer to the buffer with the reader info data in raw, packed hand reader format.

RSI_READER_INFO FAR* ri

A pointer to the structure that will receive the converted reader info data.

Converts reader info data from raw, packed hand reader format to an reader info data structure.

RSI_DATA_OK if successful.

One of the values specified in RSI_DATA_ERROR if unsuccessful.

rsiExtSetupDataToData

RSI_DATA_ERROR rsiExtSetupDataToData (RSI_EXT_SETUP_DATA FAR* setup, LPBYTE data);

RSI_EXT_SETUP_DATA FAR* setup

A pointer to the structure with the setup data.

LPBYTE data

A pointer to the buffer that will receive the setup data in raw, packed hand reader format.

Convert a setup data structure to the format used by the hand reader.

RSI_DATA_OK if successful.

One of the values specified in RSI_DATA_ERROR if unsuccessful.

rsiExtUserDataToData

RSI_DATA_ERROR rsiExtUserDataToData

(RSI_EXT_USER_DATA_FIELD FAR* ud, LPBYTE data);

RSI_EXT_USER_DATA_FIELD FAR* ud

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

A pointer to the structure with the extended user data.

LPBYTE data

A pointer to the buffer that will receive the extended user data in raw, packed hand reader format.

Convert an extended user data structure to the format used by the hand reader.

RSI_DATA_OK if successful.

One of the values specified in RSI_DATA_ERROR if unsuccessful.

rsiExtUserRecordToData

RSI_DATA_ERROR rsiExtUserRecordToData

(RSI_EXT_USER_RECORD FAR* ur, LPBYTE data);

RSI_EXT_USER_RECORD FAR* ur

A pointer to the structure with the extended user record.

LPBYTE data

A pointer to the buffer that will receive the extended user record in raw, packed hand reader format.

Convert an extended user record structure to the format used by the hand reader.

RSI_DATA_OK if successful.

One of the values specified in RSI_DATA_ERROR if unsuccessful.

rsiPackTI

RSI_DATA_ERROR rsiPackTI(RSI_EXT_TIME_INTERVAL ti, PACKED_TIME_INTERVAL FAR*pti);

RSI_EXT_TIME_INTERVAL ti

A structure for the extended time interval.

PACKED_TIME_INTERVAL FAR*pti

A pointer to the PACKED_TIME_INTERVAL structure that will be used in hand reader.

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

Converts an extended time interval structure to the format used by the hand reader.

RSI_DATA_OK if successful.

One of the values specified in RSI_DATA_ERROR if unsuccessful.

rsiUnpackTI

RSI_DATA_ERROR rsiUnpackTI(PACKED_TIME_INTERVAL pti, RSI_EXT_TIME_INTERVAL FAR* ti);

PACKED_TIME_INTERVAL pti

A PACKED_TIME_INTERVAL structure that is used in hand reader.

RSI_EXT_TIME_INTERVAL FAR* ti

A pointer to the structure for the extended time interval.

Converts a packed ti used in the hand reader to an extended time interval structure.

RSI_DATA_OK

D E S C R I P T I O N

R E T U R N S

P R O T O T Y P E

A R G U M E N T S

D E S C R I P T I O N

R E T U R N S

DLL Functions and Reader Commands Cross