📄 eastriver.pas
字号:
fiChangeBlock = $0000001F; //支持更改IC卡使用块号
fiCustomCardLen = $00000020; //支持自定义卡号长度
fiBrushSpace = $00000021; //支持自由刷卡间隔
fiRepeatSpace = $00000022; //支持重复刷卡间隔
fiSerialNo = $00000023; //支持机具序列号
fiClockTime = $00000024; //机具有时钟
fiPriceList = $00000025; //支持消费价格表
fiFixPrice = $00000026; //支持设置定值消费额
fiDayMaxExpend = $00000027; //支持设置日最大消费额
fiDayMaxTimes = $00000028; //支持设置日最大消费次数
fiCardForegift = $00000029; //支持卡上最低限制金额(押金)
MAXSUPPORTINDEX = $00000029; //功能索引最大值(需同步更新)
//说明此函数为将来机具规划一个可扩展的空间,
//加强软件和机具之间的联系,有些功能也许现在并不可靠,
//以备将来支持,请用户谅解
//返回值:
// True : 支持此功能
// False : 不支持此功能
// 取得函数库DLL版本号
function GetDLLVersion: Double; stdcall; external EASTRIVER_API
//返回值:
// 非零的小数 : 库版本号
// 其它值 : 失败
// 返回机具是依时利第几代产品
function GetClockVersionOrd(hPort: THandle; fastGet: Boolean=True): Integer; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// fastGet : 是否快速调用(从缓冲区取得), 否则需要读取卡钟(慢)
//返回值:
// 0 : 失败
// 1 : 第一代(ER-210--ER-830)
// 2 : 第二代(ER-880)
// 3 : 第三代(ER-980)
// 返回指定型是依时利第几代产品
function ClockVerOrd(Model: Integer): Integer;stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// fastGet : 是否快速调用(从缓冲区取得), 否则需要读取卡钟(慢)
//返回值:
// 0 : 失败
// 1 : 第一代(ER-210--ER-830)
// 2 : 第二代(ER-880)
// 3 : 第三代(ER-980)
// 取得机具版本字符串
function GetClockVersion(hPort: THandle; Version: PChar): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// Version : 返回版本缓冲区, 长度至少要大于30个字符
//返回值:
// True : 成功
// False : 失败
// 读取设备序列号
function ReadClockSerialNo(hPort: THandle; SerialNo: PChar): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// Version : 返回序号号缓冲区, 长度至少要大于30个字符
//返回值:
// True : 成功
// False : 失败
{版本控制类}
{设备管理普通类}
// 修改机号
function SetClockID(hPort: THandle; new_id: Integer): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, ER-880系列需要联机, ER-210--ER-830不需要联机
// new_id : 新机号,字符显示屏的机型不可以使用A--F的字符作机号, 即只可以使用
// 0x00-0x09, 0x10-0x19, 0x20-0x29, 0x30-0x39, 0x40-0x49
// 0x50-0x59, 0x60-0x69, 0x70-0x79, 0x80-0x89, 0x90-0x99
//返回值:
// True : 成功
// False : 失败
// 返回指定端口上的唯一机号
function GetClockID(Port, BaudRate: Integer): Byte; stdcall; external EASTRIVER_API
//参数说明:
// Port : 端口号
// BaudRate : 波特率
//返回值:
// True : 成功
// False : 失败
// 读取机具标识字符(mark)
function ReadClockMark(hPort: THandle; var Mark: Char): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// Mark : 返回的机具标识字符
//返回值:
// True : 成功
// False : 失败
// 修改机具标识字符(mark)
function SetClockMark(hPort: THandle; Mark: Char): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// Mark : 新的机具标识字符
//返回值:
// True : 成功
// False : 失败
//说明: 数字显示屏的机型只可以使用 0-9 的数字
// 读取机具上卡号长度变量
function ReadCardLength(hPort: THandle; var dispLen: Integer; var dataLen: Integer): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// dispLen : 机具显示卡号位数, 同时黑白名单检查时也以该值为准
// dataLen : 机具存储卡号位数, 存储刷卡数据时使用
//返回值:
// True : 成功
// False : 失败
// 修改机具上卡号长度变量
function SetCardLength(hPort: THandle; dispLen: Integer; dataLen: Integer): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// dispLen : 新的机具显示卡号位数
// dataLen : 新的机具存储卡号位数
//返回值:
// True : 成功
// False : 失败
//备注:
// ID机型默认: dispLen=10, dataLen=10;
// IC机型默认: dispLen=10, dataLen=16;
// 读机具当前管理卡号码
function ReadManagerCard(hPort: THandle; CardNo: PChar): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// CardNo : 返回管理卡号码, 缓冲区需大於20字节长度
//返回值:
// True : 成功
// False : 失败
// 修改机具管理卡(ALL)
function SetManagerCard(hPort: THandle; CardNo: PChar): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// CardNo :
//返回值:
// True : 成功
// False : 失败
// 读取机具工作模式(^2G)
function ReadClockMode(hPort: THandle; var Mode: Integer; var ExtraMode: Integer; var SystemMode: Integer): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// mode : 设备的工作模式
// extraMode : 设备的扩展工作模式
// systemMode : 系统工作模式
// systemMode.7=1 : 考勤机分时段打卡
// systemMode.7=0 : 考勤机全天打卡
// systemMode.4=1 : 门禁机开门报警使能
// systemMode.4=0 : 门禁机开门报警禁止
// systemMode.6,5,3,2,1,0 : 保留
//返回值:
// True : 成功
// False : 失败
// 设置设备工作模式(^2G)
function SetClockMode(hPort: THandle; Mode: Integer; ExtraMode: Integer; SystemMode: Integer): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// Mode : 设备的工作模式(低八位)
// mode.0=1 : 设备工作於考勤机 mode.0=0 : 无考勤机功能
// mode.1=1 : 设备工作於门禁机 mode.1=0 : 无门禁机功能
// mode.2=1 : 设备工作於消费机或加油机 mode.2=0 : 无消费机功能
// mode.3 : 保留
// mode.5, mode.4 =00B : 设备无铃声输出
// mode.5, mode.4 =01B : 设备电铃由外接继电器 1 输出
// mode.5, mode.4 =10B : 设备电铃由外接继电器 2 输出
// mode.5, mode.4 =11B : 设备铃声由蜂鸣器输出
// mode.6=0 : 可以无限制的重复刷卡
// mode.6=1 : 重复刷卡受 SetRepeatClockerTime 设置的时间限制
// mode.7=0 : 打卡记录数据存储器满时停止打卡
// mode.7=1 : 打卡记录数据存储器满时循环覆盖原数据继续打卡
// ExtraMode : 设备的扩展工作模式(低八位)
// extraMode.0=0 : 考勤机不检查设置的允许考勤卡(白名单)
// extraMode.0=1 : 考勤机检查设置的允许考勤卡(白名单)
// extraMode.1=0 : 考勤机不检查设置的黑名单卡
// extraMode.1=1 : 考勤机检查设置的黑名单卡
// extraMode.2=0 : 门禁机不检查设置的黑名单卡
// extraMode.2=1 : 门禁机检查设置的黑名单卡
// extraMode.3 : 保留
// extraMode.4=0 : 非允许卡打卡不反应
// extraMode.4=1 : 非允许卡打卡报警
// extraMode.7,6,5=000B : 电锁外接继电器1, 报警外接继电器2
// extraMode.7,6,5=011B : 电锁外接继电器2, 报警外接继电器1
// extraMode.7,6,5=100B : 正确指示灯外接继电器1, 错误指示灯外接继电器2
// extraMode.7,6,5=其他 : 保留
//返回值:
// True : 成功
// False : 失败
// 在机具屏幕上显示字符串
function ShowClockMessage(hPort: THandle; Msg: PChar; bClearScreen: Boolean; Line: Integer; Duration: Double): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// Msg : 一行消息字符串,最多8个中文字符或是16个英文字符,自动对中
// bClearScreen : 是否先清屏
// Line : 显示行号,允许值: 1-4
// Duration : 持续时间,单位秒
//返回值:
// True : 成功
// False : 失败
// 设置机具常态显示内容
function SetClockNormalMessage(hPort: THandle; msg: PChar): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// msg : 机具常态消息,最多8个中文字或是16个英文字,自动对中
//返回值:
// True : 成功
// False : 失败
// 读取机具常态显示内容
function ReadClockNormalMessage(hPort: THandle; msg: PChar): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// msg : 返回机具常态消息,长度至少要大于20个字符
//返回值:
// True : 成功
// False : 失败
// 设置刷卡成功显示内容
function SetClockWelcomeMessage(hPort: THandle; msg: PChar): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// msg : 刷卡欢迎消息,最多8个中文字或是16个英文字,自动对中
//返回值:
// True : 成功
// False : 失败
// 读取刷卡成功显示内容
function ReadClockWelcomeMessage(hPort: THandle; msg: PChar): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// msg : 返回刷卡欢迎消息,长度至少要大于20个字符
//返回值:
// True : 成功
// False : 失败
// 读取设备时间
function ReadClockTime(hPort: THandle; var CurTime: Double): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// CurTime : 返回机具当前时间, Delphi的DateTime格式,VB的Date格式
//返回值:
// True : 成功
// False : 失败
// 修改机具时间
function SetClockTime(hPort: THandle; SetTime: Double): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// SetTime : 新的时间, Delphi的DateTime格式,VB的Date格式
//返回值:
// True : 成功
// False : 失败
// 读取机具时间, 以字符串格式返回
function ReadClockTimeString(hPort: THandle; TimeString: PChar): Boolean;stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// TimeString : 返回机具当前时间,格式:yyMMddhhnnss(yy年MM月dd日hh时nn分ss秒)
//返回值:
// True : 成功
// False : 失败
// 以字符串形式修改机具时间
function SetClockTimeString(hPort: THandle; TimeString: PChar): Boolean;stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// TimeString : 返回机具当前时间,格式:yyyyMMddhhnnss(^2G+w)(yyyy年MM月dd日hh时nn分ss秒)
// ER-880以上需要增加一个星期值, w为星期值, 星期天为0, 星期一为1, 星期六为6
//返回值:
// True : 成功
// False : 失败
// 设置端口上的所有机具的时间(不联机广播式)
function SetPortAllClockTime(hPort: THandle; SetTime: Double): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 不联机
// SetTime : 新的时间, Delphi的DateTime格式,VB的Date格式
//返回值:
// True : 成功
// False : 失败
// 设置通告消息(3G)
function SetNotification(hPort: THandle; msg: PChar; nDay: Integer; WordWrap: Boolean=True): Boolean; stdcall; external EASTRIVER_API
//参数说明:
// hPort : 端口句柄, 需要联机
// msg : 消息文本, 可以带回车换行符, 最多允许255*16个英文字符
// nDay : 表示本通知消息的保留时间, 单位(天)
// WordWrap : 当每行超出屏幕宽度时是否自动换行,否则将截断显示
//返回值:
// True : 成功
// False : 失败
{设备管理普通类}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -