// FKAttend.h // Jeff.Create at 2014.07.12 // #ifndef __FKATTEND_DLL_HEAD__ #define __FKATTEND_DLL_HEAD__ // ************************************************数据结构************************************************************ // // 1. #define MAX_BELLCOUNT_DAY 24 // 响铃 信息 ; typedef struct tagBELLINFO { BYTE mValid[MAX_BELLCOUNT_DAY]; // 响铃设置有效标志 ; BYTE mHour[MAX_BELLCOUNT_DAY]; // 响铃时间(时) ; BYTE mMinute[MAX_BELLCOUNT_DAY]; // 响铃时间(分) ; } BELLINFO; //2. #define MAX_PASSCTRLGROUP_COUNT 50 #define MAX_PASSCTRL_COUNT 7 // Pass Count Max Value ; typedef struct tagPASSTIME { BYTE StartMinute; // 开门时间(时) ; BYTE EndHour; // 开门时间(分) ; BYTE EndMinute; // 关门时间(时) ; BYTE StartHour; // 关门时间(分) ; } PASSTIME; // 一天的时间段信息(TimeZone) ; typedef struct tagPASSCTRLTIME { PASSTIME mPassCtrlTime[MAX_PASSCTRL_COUNT]; // 每天的时间段信息 ; } PASSCTRLTIME; // 一周的时间段信息(TimeZone) ; // 3. #define MAX_USERPASSINFO_COUNT 3 typedef struct tagUSERPASSINFO { BYTE UserPassID[MAX_USERPASSINFO_COUNT]; // 时间段信息识别号码 ; } USERPASSINFO; // 给用户设置的时间段信息识别号码; // 4. #define MAX_GROUPPASSKIND_COUNT 5 #define MAX_GROUPPASSINFO_COUNT 3 typedef struct tagGROUPPASSINFO { BYTE GroupPassID[MAX_GROUPPASSINFO_COUNT]; // 时间段信息识别号码 ; } GROUPPASSINFO; // 时间段信息组合 ; // 5. #define MAX_GROUPMATCHINFO_COUNT 10 typedef struct tagGroupMatchInfo { BYTE GroupMatch[MAX_GROUPMATCHINFO_COUNT];// 时间段信息组合的识别号码 ; } GROUPMATCHINFO; // 时间段信息组合的组合 ; // ************************************************数据结构************************************************************ // ///******************************************************************/ ///* Constant */ ///******************************************************************/ ////=============== Protocol Type ===============// const int PROTOCOL_TCPIP = 0; // TCP/IP const int PROTOCOL_UDP = 1; // UDP ////=============== Backup Number Constant ===============// const int BACKUP_FP_0 = 0; // Finger 1 const int BACKUP_FP_1 = 1; // Finger 2 const int BACKUP_FP_2 = 2; // Finger 3 const int BACKUP_PSW = 10; // Password const int BACKUP_CARD = 11; // Card ////=============== Manipulation of SuperLogData ===============// const int LOG_ENROLL_USER = 3 ; // Enroll-User const int LOG_ENROLL_MANAGER = 4 ; // Enroll-Manager const int LOG_ENROLL_DELFP = 5 ; // FP Delete const int LOG_ENROLL_DELPASS = 6 ; // Pass Delete const int LOG_ENROLL_DELCARD = 7 ; // Card Delete const int LOG_LOG_ALLDEL = 8 ; // LogAll Delete const int LOG_SETUP_SYS = 9 ; // Setup Sys const int LOG_SETUP_TIME = 10 ; // Setup Time const int LOG_SETUP_LOG = 11 ; // Setup Log const int LOG_SETUP_COMM = 12; // Setup Comm const int LOG_PASSTIME = 13 ; // Pass Time Set const int LOG_SETUP_DOOR = 14; // Door Set Log ////=============== VerifyMode of GeneralLogData ===============// const int LOG_FPVERIFY = 1 ; // Fp Verify const int LOG_PASSVERIFY = 2 ; // Pass Verify const int LOG_CARDVERIFY = 3; // Card Verify const int LOG_FPPASS_VERIFY = 4 ; // Pass+Fp Verify const int LOG_FPCARD_VERIFY = 5; // Card+Fp Verify const int LOG_PASSFP_VERIFY = 6 ; // Pass+Fp Verify const int LOG_CARDFP_VERIFY = 7; // Card+Fp Verify const int LOG_OPEN_DOOR = 10 ; // Door Open const int LOG_CLOSE_DOOR = 11; // Door Close const int LOG_OPEN_HAND = 12 ; // Hand Open const int LOG_OPEN_THREAT = 13 ; // Door Open threat const int LOG_PROG_OPEN = 14 ; // PC Open const int LOG_PROG_CLOSE = 15 ; // PC Close const int LOG_OPEN_IREGAL = 16 ; // Iregal Open const int LOG_CLOSE_IREGAL = 17 ; // Iregal Close const int LOG_OPEN_COVER = 18 ; // Cover Open const int LOG_CLOSE_COVER = 19; // Cover Close ////=============== IOMode of GeneralLogData ===============// const int LOG_IOMODE_IN = 0; const int LOG_IOMODE_OUT = 1; const int LOG_IOMODE_OVER_IN = 2; // = LOG_IOMODE_IO const int LOG_IOMODE_OVER_OUT = 3; ////=============== Machine Privilege ===============// const int MP_NONE = 0; // General user const int MP_ALL = 1; // Manager ////=============== Index of GetDeviceStatus ===============// const int GET_MANAGERS = 1; const int GET_USERS = 2; const int GET_FPS = 3; const int GET_PSWS = 4; const int GET_SLOGS = 5; const int GET_GLOGS = 6; const int GET_ASLOGS = 7; const int GET_AGLOGS = 8; const int GET_CARDS = 9; ////=============== Index of GetDeviceInfo ===============// const int DI_MANAGERS = 1; // Numbers of Manager const int DI_MACHINENUM = 2 ; // Device ID const int DI_LANGAUGE = 3 ; // Language const int DI_POWEROFF_TIME = 4 ; // Auto-PowerOff Time const int DI_LOCK_CTRL = 5 ; // Lock Control const int DI_GLOG_WARNING = 6 ; // General-Log Warning const int DI_SLOG_WARNING = 7 ; // Super-Log Warning const int DI_VERIFY_INTERVALS = 8 ; // Verify Interval Time const int DI_RSCOM_BPS = 9 ; // Comm Buadrate const int DI_DATE_SEPARATE = 10; // Date Separate Symbol //=============== Baudrate = value of DI_RSCOM_BPS ===============// const int BPS_9600 = 3; const int BPS_19200 = 4; const int BPS_38400 = 5; const int BPS_57600 = 6; const int BPS_115200 = 7; //=============== Product Data Index ===============// const int PRODUCT_SERIALNUMBER = 1; // Serial Number const int PRODUCT_BACKUPNUMBER = 2; // Backup Number const int PRODUCT_CODE = 3 ; // Product code const int PRODUCT_NAME = 4 ; // Product name const int PRODUCT_WEB = 5; // Product web const int PRODUCT_DATE = 6; // Product date const int PRODUCT_SENDTO = 7 ; // Product sendto //=============== Door Status ===============// const int DOOR_OPEND = 1; const int DOOR_CLOSED = 2; const int DOOR_COMMNAD = 3; //=============== Error code ===============// // ************************************************ 错误码 ************************************************************ // const int RUN_SUCCESS = 1; // 表示指令成功; const int RUNERR_NOSUPPORT = 0; // 表示机器不支持对应指令的错误代码; const int RUNERR_UNKNOWERROR = -1; // 表示不明错误代码; const int RUNERR_NO_OPEN_COMM = -2; // 表示机器没有连接的错误代码; const int RUNERR_WRITE_FAIL = -3; // 表示机器上不能传送数据的错误代码; const int RUNERR_READ_FAIL = -4; // 表示从机器上不能读数据; const int RUNERR_INVALID_PARAM = -5; // 表示读的参数不正确; const int RUNERR_NON_CARRYOUT = -6; // 表示指令失败; const int RUNERR_DATAARRAY_END = -7; // 表示读完数据的通知; const int RUNERR_DATAARRAY_NONE = -8; // 表示数据不存在; const int RUNERR_MEMORY = -9; // 表示PC的内存不足; const int RUNERR_MIS_PASSWORD = -10; // 表示连接机器许可号码是不正确; const int RUNERR_MEMORYOVER = -11; // 表示指纹机内存不足; const int RUNERR_DATADOUBLE = -12; // 表示要登记的号码已经在机器数据里存在; const int RUNERR_MANAGEROVER = -14; // 表示机器里没有内存空间,未能登记管理者数据; const int RUNERR_FPDATAVERSION = -15; // 表示要用的指纹数据的版本不正确; // ************************************************ 错误码 ************************************************************ // // 1.机器连接与断开--------------------------------------------------------------------------; typedef long (__stdcall *FK_ConnectComm)(long nMachineNumber, long nComPort, long nBaudRate, char *pstrTelNumber, long nWaitDialTime, long nLicense); typedef long (__stdcall *FK_ConnectNet)(long nMachineNumber, char * strIpAddress, long nPort, long nTimeOut, long nProtocolType, long nNetPassword, long nLicense); typedef long (__stdcall *FK_ConnectUSB)(long nMachineNumber, long nLicense); typedef void (__stdcall *FK_DisConnect)(long nHandIndex); // 2.登记数据管理(暂时不做,未用到)--------------------------------------------------------------- typedef long (__stdcall *FK_GetEnrollData)(long nHandleIndex, long nEnrollNumber,long nBackupNumber,long *pnMachinePrivilege,void *pnEnrollData,long *pnPassWord ); typedef long (__stdcall *FK_GetEnrollDataWithString)( long nHandleIndex,long nEnrollNumber,long nBackupNumber,long *pnMachinePrivilege,LPSTR *apstrEnrollData ); typedef long (__stdcall *FK_PutEnrollData)( long nHandleIndex, long nEnrollNumber, long nBackupNumber, long nMachinePrivilege,void *pnEnrollData,long nPassWord ); typedef long (__stdcall *FK_PutEnrollDataWithString)( long nHandleIndex,long nEnrollNumber,long nBackupNumber,long nMachinePrivilege, char *apstrEnrollData); typedef long (__stdcall *FK_SaveEnrollData)( long nHandleIndex); typedef long (__stdcall *FK_DeleteEnrollData)( long nHandleIndex, long nEnrollNumber, long nBackupNumber ); typedef long (__stdcall *FK_USBReadAllEnrollDataFromFile)( long nHandleIndex,char *pstrFilePath ); typedef long (__stdcall *FK_USBReadAllEnrollDataCount)( long nHandleIndex, long *pnValue ); typedef long (__stdcall *FK_USBGetOneEnrollData)( long nHandleIndex, long *pnEnrollNumber,long *pnBackupNumber,long *pnMachinePrivilege,void *pnEnrollData, long *pnPassWord, long *pnEnableFlag ); typedef long (__stdcall *FK_USBGetOneEnrollDataWithString)( long nHandleIndex, long * pnEnrollNumber,long *pnBackupNumber,long *pnMachinePrivilege,LPSTR *apstrEnrollData,long* pnEnableFlag ); typedef long (__stdcall *FK_USBSetOneEnrollData)( long nHandleIndex, long nEnrollNumber, long nBackupNumber, long nMachinePrivilege, void * pnEnrollData, long nPassWord, long nEnableFlag ); typedef long (__stdcall *FK_USBSetOneEnrollDataWithString)( long nHandleIndex, long nEnrollNumber,long nBackupNumber,long nMachinePrivilege, char *apstrEnrollData, long nEnableFlag ); typedef long (__stdcall *FK_USBWriteAllEnrollDataToFile)( long nHandleIndex,char *pstrFilePath ); typedef long (__stdcall *FK_ReadAllUserID)( long nHandleIndex ); typedef long (__stdcall *FK_GetAllUserID)( long nHandleIndex, long *pnEnrollNumber,long *pnBackupNumber,long *pnMachinePrivilege,long *pnEnableFlag ); typedef long (__stdcall *FK_EmptyEnrollData)( long nHandleIndex ); typedef long (__stdcall *FK_ClearKeeperData)( long nHandleIndex ); typedef long (__stdcall *FK_BenumbAllManager)(long nHandleIndex); // 3.记录数据管理--------------------------------------------------------------- typedef long (__stdcall *FK_LoadSuperLogData)( long nHandleIndex,long nReadMark ); typedef long (__stdcall *FK_USBLoadSuperLogDataFromFile)(long nHandleIndex, char *astrFilePath); typedef long (__stdcall *FK_GetSuperLogData)(long nHandleIndex, long *pnSEnrollNumber, long *pnGEnrollNumber, long *pnManipulation, long *pnBackupNumber, DATE *pnDateTime) ; typedef long (__stdcall *FK_EmptySuperLogData)(long nHandleIndex) ; typedef long (__stdcall *FK_LoadGeneralLogData)(long nHandleIndex, long nReadMark); typedef long (__stdcall *FK_USBLoadGeneralLogDataFromFile)(long nHandleIndex, char *pstrFilePath); typedef long (__stdcall *FK_GetGeneralLogData)(long nHandleIndex, long *pnEnrollNumber, long *pnVerifyMode, long *pnInOutMode, DATE *pnDateTime) ; typedef long (__stdcall *FK_EmptyGeneralLogData)(long nHandleIndex); // 4.机器管理------------------------------------------------------------------------------ typedef long (__stdcall *FK_EnableUser)(long nHandleIndex, long nEnrollNumber, long nBackupNumber,long nEnableFlag) ; typedef long (__stdcall *FK_ModifyPrivilege)(long nHandleIndex, long nEnrollNumber, long nBackupNumber, long nMachinePrivilege); typedef long (__stdcall *FK_GetUserName)(long nHandleIndex, long nEnrollNumber, LPSTR *pstrUserName); typedef long (__stdcall *FK_SetUserName)(long nHandleIndex, long nEnrollNumber, char *pstrUserName); typedef long (__stdcall *FK_GetNewsMessage)(long nHandleIndex, long nNewsId, LPSTR *pstrNews); typedef long (__stdcall *FK_SetNewsMessage)(long nHandleIndex, long nNewsId, char *pstrNews); typedef long (__stdcall *FK_GetUserNewsID)(long nHandleIndex, long nEnrollNumber, long *pnNewsId); typedef long (__stdcall *FK_SetUserNewsID)(long nHandleIndex, long nEnrollNumber, long nNewsId); typedef long (__stdcall *FK_EnableDevice)(long nHandleIndex, unsigned char nEnableFlag); typedef long (__stdcall *FK_PowerOnAllDevice)(long nHandleIndex); typedef long (__stdcall *FK_PowerOffDevice)(long nHandleIndex); typedef long (__stdcall *FK_GetDeviceTime)(long nHandleIndex, DATE *pnDateTime); typedef long (__stdcall *FK_SetDeviceTime)(long nHandleIndex, DATE nDateTime); typedef long (__stdcall *FK_GetDeviceStatus)(long nHandleIndex, long nStatusIndex, long *pnValue); typedef long (__stdcall *FK_GetDeviceInfo)(long nHandleIndex, long nInfoIndex, long *pnValue); typedef long (__stdcall *FK_SetDeviceInfo)(long nHandleIndex, long nInfoIndex, long nValue) ; typedef long (__stdcall *FK_GetProductData)(long nHandleIndex, long nDataIndex, char *pstrValue); typedef long (__stdcall *FK_GetDeviceVersion)(long nHandleIndex, long *pnVersion); // 5.null----------------------------------------------------------------------------- //---------------------------------------------------------------------------------------------------------------- // 1.机器连接与断开 extern FK_ConnectComm g_ConnectComm; extern FK_ConnectNet g_ConnectNet; extern FK_ConnectUSB g_ConnectUSB; extern FK_DisConnect g_DisConnect; // 2.登记数据管理 extern FK_GetEnrollData g_GetEnrollData; extern FK_GetEnrollDataWithString g_GetEnrollDataWithString; extern FK_PutEnrollData g_PutEnrollData; extern FK_PutEnrollDataWithString g_PutEnrollDataWithString; extern FK_SaveEnrollData g_SaveEnrollData; extern FK_DeleteEnrollData g_DeleteEnrollData; extern FK_USBReadAllEnrollDataFromFile g_USBReadAllEnrollDataFromFile; extern FK_USBReadAllEnrollDataCount g_USBReadAllEnrollDataCount; extern FK_USBGetOneEnrollData g_USBGetOneEnrollData; extern FK_USBGetOneEnrollDataWithString g_USBGetOneEnrollDataWithString ; extern FK_USBSetOneEnrollData g_USBSetOneEnrollData; extern FK_USBSetOneEnrollDataWithString g_USBSetOneEnrollDataWithString ; extern FK_USBWriteAllEnrollDataToFile g_USBWriteAllEnrollDataToFile; extern FK_ReadAllUserID g_ReadAllUserID; extern FK_GetAllUserID g_GetAllUserID; extern FK_EmptyEnrollData g_EmptyEnrollData; extern FK_ClearKeeperData g_ClearKeeperData; extern FK_BenumbAllManager g_BenumbAllManager; // 3.记录数据管理 extern FK_LoadSuperLogData g_LoadSuperLogData; extern FK_USBLoadSuperLogDataFromFile g_USBLoadSuperLogDataFromFile; extern FK_GetSuperLogData g_GetSuperLogData; extern FK_EmptySuperLogData g_EmptySuperLogData; extern FK_LoadGeneralLogData g_LoadGeneralLogData; extern FK_USBLoadGeneralLogDataFromFile g_USBLoadGeneralLogDataFromFile; extern FK_GetGeneralLogData g_GetGeneralLogData; extern FK_EmptyGeneralLogData g_EmptyGeneralLogData; // 4.机器管理 extern FK_EnableUser g_EnableUser; extern FK_ModifyPrivilege g_ModifyPrivilege; extern FK_GetUserName g_GetUserName; extern FK_SetUserName g_SetUserName; extern FK_GetNewsMessage g_GetNewsMessage; extern FK_SetNewsMessage g_SetNewsMessage; extern FK_GetUserNewsID g_GetUserNewsID; extern FK_SetUserNewsID g_SetUserNewsID; extern FK_EnableDevice g_EnableDevice; extern FK_PowerOnAllDevice g_PowerOnAllDevice; extern FK_PowerOffDevice g_PowerOffDevice; extern FK_GetDeviceTime g_GetDeviceTime; extern FK_SetDeviceTime g_SetDeviceTime; extern FK_GetDeviceStatus g_GetDeviceStatus; extern FK_GetDeviceInfo g_GetDeviceInfo; extern FK_SetDeviceInfo g_SetDeviceInfo; extern FK_GetProductData g_GetProductData; extern FK_GetDeviceVersion g_GetDeviceVersion; #endif