篇一:API函数说明
FR100 IC卡读写器
API
编程说明
版本 1.00
1 概述
4
1.1 API文件说明: 4 1.2 适用操作系统: 4 1.3
适用开发语言:
4
2 API 函数 5
2.1 设备通用函数 5 2.1.1 int _stdcall IFD_GetDLL_Ver(char *rVER) 5 2.1.2 int _stdcall IFD_SetDLL_CommKEY(unsigned char *key) 5 2.1.3 int _stdcall IFD_SetDLL_CommMode(unsigned char mode) 5 2.1.4 int _stdcall IFD_InitComm(char *portname, unsigned long baud) 5 2.1.5 int _stdcall IFD_ExitComm() 6 2.1.6 int _stdcall IFD_GetDevice_Ver(unsigned char *rData, unsigned char *rLen) 6 2.1.7 int _stdcall IFD_ResetDevice() 6
2.1.8 int _stdcall IFD_Control_LED(unsigned char LedCtrlMode, unsigned char LED1, unsigned char LED2) 6
2.1.9 int _stdcall IFD_Control_Buzzer(unsigned char *cBeepData, unsigned char cLen) 7 2.1.10 int _stdcall IFD_SetDevice_Baud(unsigned char baud) 7 2.1.11 int _stdcall IFD_SetDevice_CommKEY(unsigned char *key) 8 2.2 卡座通用函数 8 2.2.1 int _stdcall IFD_Select_ICC(unsigned char IccNumber) 8 2.2.2 int _stdcall IFD_PowerON_ICC() 8 2.2.3 int _stdcall IFD_PowerDown_ICC() 8
2.2.4 int _stdcall IFD_Get_CardStatus(unsigned char *rCardStatus, unsigned char *rLen) 8 2.2.5 int _stdcall IFD_Get_CardStatus(unsigned char *rCardStatus, unsigned char *rLen) 9 2.2.6 int _stdcall IFD_AutoPowerON(unsigned char mode) 9
2.3 CPU卡专用函数 9
2.3.1 int _stdcall IFD_CPUCARD_Reset(unsigned char *rData, unsigned char *rLen) 9
2.3.2 int _stdcall IFD_CPUCARD_ExchangeAPDU(unsigned char *cData, unsigned char cLen, unsigned char *rData, unsigned char *rLen)
9
2.4 AT24Cxx系列卡专用函数 10 2.4.1 int _stdcall IFD_AT24C01_Reset() 10
2.4.2 int _stdcall IFD_AT24C01_Read(unsigned int Address, unsigned char Len, unsigned char *rData) 10 2.4.3 int _stdcall IFD_AT24C01_Write(unsigned int Address, unsigned char Len, unsigned char *cData) 10 2.4.4 int _stdcall IFD_AT24C01_Reset() 11
2.4.5 int _stdcall IFD_AT24C01_Read(unsigned int Address, unsigned char Len, unsigned char *rData) 11 2.4.6 int _stdcall IF(原文来自:wWW.DxF5.com 东 星资源网:api说明书)D_AT24C01_Write(unsigned int Address, unsigned char Len, unsigned char *cData)
11
2.5 SLE4442/4432卡专用函数 12 2.5.1 int _stdcall IFD_SLE4442_Reset(unsigned char *rData, unsigned char *rLen)12
2.5.2 int _stdcall IFD_SLE4442_Read(unsigned int Address, unsigned char Len, unsigned char *rData) 12 2.5.3 int _stdcall IFD_SLE4442_Write(unsigned int Address, unsigned char Len, unsigned char *cData) 12
2.5.4 int _stdcall IFD_SLE4442_Read_ProtectZone (unsigned int Address, unsigned char Len, unsigned char *rData) 2.5.5 int _stdcall IFD_SLE4442_Write_ProtectZone (unsigned int Address, unsigned char Len, unsigned char *cData) 2.5.6 int _stdcall IFD_SLE4442_Verify_PSC(unsigned char psc1, unsigned char psc2, unsigned char psc3) 13 2.5.7 int _stdcall IFD_SLE4442_Update_PSC(unsigned char psc1, unsigned char psc2, unsigned char psc3) 132.5.8 int _stdcall IFD_SLE4442_Read_PSC(unsigned char *rPSC, unsigned char *rLen) 14 2.5.9 int _stdcall IFD_SLE4442_Read_EC(unsigned char *rEC, unsigned char *rLen) 14 2.5.10 int _stdcall IFD_SLE4442_Update_EC(unsigned char EC) 14 2.6 SLE4428/4418卡专用函数 15 2.6.1 int _stdcall IFD_SLE4428_Reset(unsigned char *rData, unsigned char *rLen)15
2.6.2 int _stdcall IFD_SLE4428_Read(unsigned int Address, unsigned char Len, unsigned char *rData) 15 2.6.3 int _stdcall IFD_SLE4428_Write(unsigned int Address, unsigned char Len, unsigned char *cData) 15 2.6.4 int _stdcall IFD_SLE4428_Read_PB(unsigned int Address, unsigned char Len, unsigned char *rData) 152.6.5 int _stdcall IFD_SLE4428_Write_PB(unsigned int Address, unsigned char Len, unsigned char *cData) 162.6.6 int _stdcall IFD_SLE4428_Compare_PB(unsigned int Address, unsigned char Len, unsigned char *cData) 162.6.7 int _stdcall IFD_SLE4428_Verify_PSC(unsigned char psc1, unsigned char psc2) 16 2.6.8 int _stdcall IFD_SLE4428_Update_PSC(unsigned char psc1, unsigned char psc2) 17 2.6.9 int _stdcall IFD_SLE4428_Read_PSC(unsigned char *rPSC, unsigned char *rLen) 17 2.6.10 int _stdcall IFD_SLE4428_Read_EC(unsigned char *rEC, unsigned char *rLen) 17 2.6.11 int _stdcall IFD_SLE4428_Update_EC(unsigned char EC) 17 3
返回状态/错误代码
19 附录:SLE4442卡读流程
20
1313
1 概述
SSSE32.DLL是一个基于Windows的32位动态链接库文件,目的是方便客户进行二次开发。其使用的方法与Windows标准的.DLL文件一样。
1.1
API文件说明:
SSSE32.h SSSE32.dll EasyD12.dll
1.2
API 函数原型定义
API 函数的动态链接库 USB 动态辅助链接库
适用操作系统:
Windows NT: 需要NT 3.1 版或以后版本
Windows: 需要Windows 98、Windows 2000 或以后版本
1.3
适用开发语言:
Visual C++ 5.0 及以后版本 Visual Basic 5.0 及以后版本
Visual C++Builder 5.0 及以后版本 DELPHI 3.0 及以后版本
PowerBuilder 6.0 及以后版本 其它Windowns 32位开发工具
2 2.1
API 函数 设备通用函数
2.1.1 int _stdcall IFD_GetDLL_Ver(char *rVER) 功能: 读函数库版本号
参数: *rVER [OutPut]:存放读出的函数库版本号。
2.1.2 int _stdcall IFD_SetDLL_CommKEY(unsigned char *key) 功能: 读函数库加密通讯密钥
参数: *key [Input]: 存放128字节的加密通讯密钥。
2.1.3 int _stdcall IFD_SetDLL_CommMode(unsigned char mode) 功能: 读函数库与读卡器的通讯方式
参数: mode [Input]: 通讯方式,0表示明码通讯,1表示加密通讯。
注:函数库默认明码通讯方式,如果采用明码通讯,不需调用该函数。
2.1.4 int _stdcall IFD_InitComm(char *portname, unsigned long baud) 功能: 初始化通讯端口 参数:
*portname [Input]: 通讯端口的名称,可选COM1~COM6及USB。
baud [Input]: 通讯波特率选择,可选9600,19200,38400,57600及115200.当端口为USB时,该参数无效。
例:
篇二:设计器API说明书
花生米AJAX-UI系列之:
基于JQUERY的WEB在线流程图设计器GOOFLOW
0.8版
(2014-08-24)
[特点]
? 跨浏览器,可兼容IE7--IE10, FireFox, Chrome, Opera等几大内核的浏览器,且不需要浏览器再加装任何控件。
? 多系统兼容性、可移植性:由于只包括前台UI,因此二次开发者可很方便将本插件用在任何一种需要流程图的B/S系统应用上,流程图的详细实现逻辑完全交于后台程序开发者自己实现;对于后台,只要能返回/接收能被本插件解析的JSON格式数据即可.所以本插件可用于不同的服务器语言建立的后台上. ? 跨领域:流程图设计器不止用在电信领域,在其它需要IT进行技术支持的领域中都有重大作用. ?
以下从纯技术实现层面具体描述:
? 页面顶部栏、左边侧边栏均可自定义;
? 当左边的侧边栏设为不显示时,为只读状态,此时的视图区可当作是一个查看器而非编辑器。 ? 侧边工具栏除了基本和一些流程节点按钮外,还自定义新的节点按钮,自定义节点都可以有自有的图标、类型名称,定义后在使用可可在工作区内增加这些自定义节点。
? 顶部栏可显示流程图数据组的标题,也可提供一些常用操作按钮。
? 顶部栏的按钮,除了撤销、重做按钮外,其余按钮均可自定义点击事件。
? 可画直线、折线;折线还可以左右/上下移动其中段。
? 具有区域划分功能,能让用户更直观地了解哪些节点及其相互间的转换,是属于何种自定义区域内的。 ? 具有标注功能,用橙红色标注某个结点或者转换线,一般用在展示流程进度时。
? 能直接双击结点、连线、分组区域中的文字进行编辑
? 在对结点、连线、分组区域的各种编辑操作,如新增/删除/修改名称/重设样式或大小/移动/标注时,均可捕捉到事件,并触发自定义事件,如果自定义事件执行的方法返回FALSE,则会阻止操作。 ? 具有操作事务序列控制功能,在工作区内的各种有效操作都能记录到一个栈中,然后可以进行撤销(undo())或重做(redo()),像典型的C/S软件一样。
? 0.4版中,加入了只导出在初始载入后被编辑的流程图中,只作了增删改等变更的元素,这样可用于用户快速存储,只保存本次变更过的内容,不用重新保存整个流程。
? 0.5版中,结点的样式不再受到原有程序的限制,所有样式均默认为淡蓝色长方形;如果要指定为圆形,可在初始化时定义结点类型为”原有类型”+” round”;如果要指定为复合结点,则可在初始化时定义结点类型为”原有类型”+” mix”。”原有类型”+” myType”:myType可为自己写的一种特殊样式类. ? 0.6版中,修正了一些BUG,改善了用户操作体验,并增加在可编辑状态下时,能用键盘上DELETE按键对元素进行删除功能。
? 0.7版中,修正了一些BUG,增加了连线变更要连的起始结点或结束结点的功能。
? 0.8版,取消原来的拟物化页面,变成如今的扁平化页面,并且支持主要位置的颜色自定义功能(如果想沿用原来老版本中的拟物化页面,只需保留原来的GooFlow.css文件即可);修正0.7版中的画线BUG。
[一、GooFlow设计器的界面]
X Y
如上图所示:工作区宽度高度均为可见区的2倍,X,Y轴的方向如图所示,于CSS样式中顶距top和左距left是一样的;
左边是流程图绘制工具栏,从上至下依次为:选择指针、转换连接线、开始节点、结束节点、任务节点、自动节点、决策节点、状态节点、扩展附加节点、分支结点、聚合结点、复合子流程结点;最后一个不是节点,而是节点连线编辑与分组区域编辑两种工作区状态的切换开关,当切换至分组区域编辑后,只能操作分组区域块,节点与连线都被锁定;反之即然。
顶部是展示流程图标题和放置一些功能按钮的操作栏,这些按钮除了系统自带的外,还可由用户自定义。
如果初始化中设置不要左边工具栏和顶部的操作按钮,则该UI就变成了一个流程图查看/跟踪器。
[二、GooFlow设计器的工作区元素]
开始节点、结束节点为圆形,复合节点是绿色,其余结点均是淡蓝色圆角矩形,双击节点中的文字,可直接进行编辑;
转换连线和直接和中段可上下移动的折线、中段可左右移动的折线共三种样式,双击线条可直接编辑线条的文字说明内容;
分组区域需要左下角的开关被按下后才可编辑,有四种随机颜色,点击左上角的圆形图标后可改变颜色,双击文本可直接编辑。
节点被选中时的样子
:
连线被选中时的样子
:
分组区域变为可操作时的样子
:
[三、GooFlow类的构造函数]
function GooFlow(bgDiv,property){}
传参:
bgDiv:JQUERY对象,要渲染的DOM,必须含有ID。
Property是详细的初始化参数:{
width:UI的宽度;
height:UI的高度;
initNum:计算默认ID值的起始SEQUENCE,默认不填时为1;
haveHead:BOOL值,是否需要展示标题及顶部按钮的顶部栏;
initLabelText:初始化时标题的内容,默认不填时为newFlow_1;
haveTool:BOOL值,是否需要左边的工具栏(这决定了渲染完成后是编辑模式还是纯浏览模式) useOperStack:BOOL值,决定了是否要用事务序列管理工作区内的操作事务,选TRUE的话,将开启正常使用撤销undo和重做redo的功能,该设定只在可编辑状态时有效。
toolBtns:一个数组,决定了左边的工具栏中,除了基本的结点/连线按钮图标外,还有哪些类型的结点;具体写法如:["task","node","chat","state","plug"]。数组中每个单元就是这些结点类型的名称,可用系统中已给的, 也可自定义,但自定义一个类型name时,需要定义其CSS样式
类.ico_name。例如:
.ico_plug{background:url(img/gooflow_icon.png) no-repeat -135px -45px}
0.5版本中,结点的样式不再受到原有程序的限制,所有样式均默认为淡蓝色长方形;如果要指定为圆形,可在初始化时定义结点类型为”原有类型”+” round”;如果要指定为复合结点,则可在初始化时定义结点类型为”原有类型”+” mix”。”原有类型”+” myType”中的myType可为自己写的一种特殊样式类.
headBtns:字符串数组,决定了顶部栏的按钮从左至右依次都排了哪些类型的按钮,
如:["new","open","save","undo","redo","reload"];如果haveHead=false,则该定义无效。注意:除了这两个分别用来撤销操作,重做操作的按钮外,其余按钮点击时方法都需要自定义;数组中每个单元就是这些按钮的名称,可用系统中已给的"new","open","save","reload", 也可自定义,但自定义一个类型name时,需要定义其CSS样式类.ico_name。例如:
.GooFlow .ico_open{background:url(img/gooflow_icon.png) no-repeat -19px 1px}
}
haveGroup:BOOL值,决定了是否有节点连线编辑与分组区域编辑两种工作区状态的切换开关。
[四、GooFlow对象的内部属性]
(注:以下加粗的内容均为使用该UI插件者最关心的部分,即组成流程图数据本身的部分!)
篇三:API设计说明书
QQ API设计说明书
深圳腾讯计算机系统有限公司
目录
一、引言 .......................................................... 3
1.1 编写目的 ....................................................................................................................................... 3
1.2 更新时间 ....................................................................................................................................... 3
二、总体设计 ...................................................... 3
三、注册的系统消息 ................................................ 3
3.1 WM_QQAPI_REGISTER .............................................................................................................. 3
3.2 WM_QQAPI_REGISTER_RESP .................................................................................................. 4
3.3 WM_QQAPI_AVAILABLE ........................................................................................................... 4
四、从设备到QQ的自定义事件 ....................................... 5
4.1 EVENT_QQAPI_SET_AUDIODEVICE ...................................................................................... 5
4.2 EVENT_QQAPI_GET_USERINFO .............................................................................................. 5
4.3 EVENT_QQAPI_PRESS_KEY ..................................................................................................... 5
4.4 EVENT_QQAPI_CALL ................................................................................................................ 6
4.5 EVENT_QQAPI_MUTE................................................................................................................ 6
4.6 EVENT_QQAPI_UNREGISTER .................................................................................................. 7
五、从QQ到设备的自定义事件 ....................................... 7
5.1 EVENT_QQAPI_USERINFO ....................................................................................................... 7
5.2 EVENT_QQAPI_STATUS_CHANGE .......................................................................................... 7
5.3 EVENT_QQAPI_SHUTDOWN .................................................................................................... 8
六、双向的自定义事件 .............................................. 8
6.1 EVENT_QQAPI_CALL_STATUS ................................................................................................ 8
七、错误码定义 ................................................... 10
7.1 从QQ到设备――EVENT_QQAPI_ERROR ........................................................................... 10
八、参数类型码表 ................................................. 11
一、引言
1.1 编写目的
本文档提供了QQ API接口说明,以供第三方应用程序使用,用于QQ和硬件设备(例如USB Phone)的交互。
1.2 更新时间
最后修订日期:2005-05-24
版本号:v1.0
二、总体设计
QQ应用程序和第三方应用程序以收发消息的方式进行通讯。
双方未成功注册之前,采用RegisterWindowMessage(Windows API)注册的系统消息进行交互,注册成功后,双方分别获取对方的窗口句柄,接下来的交互通过收发WM_COPYDATA(Windows消息)消息完成。
WM_COPYDATA的wParam参数为发送方的窗口句柄,lParam为指向COPYDATASTRUCT结构的指针,COPYDATASTRUCT定义如下:
typedef struct tagCOPYDATASTRUCT{
ULONG_PTR dwData;
DWORDcbData;
PVOIDlpData;
}COPYDATASTRUCT, *PCOPYDATASTRUCT;
dwData:事件码,标示传送的消息事件码
lpData:消息参数,采用多个相连的“类型(1字节)+长度(4字节)+值”的格式。所有的参数类型码表见8 参数类型码表
cbData:消息参数总长度,单位字节
三、注册的系统消息
第三方程序使用Windows SDK――RegisterWindowMessage,进行下列系统消息的注册。例如:RegisterWindowMessage(“WM_QQAPI_REGISTER”);
3.1 WM_QQAPI_REGISTER
消息名:注册消息
方向:设备?QQ
wParam:发送方的窗口句柄
lParam:QQ API版本号,目前为100,表示1.00。
第三方应用程序启动并检测到可用的设备后,向所有Windows窗口广播这个消息,带上自己的窗口句柄作为消息参数,如下:
SendMessage( HWND_BROADCAST, WM_QQAPI_REGISTER, 发送端窗口句柄, 0); 当QQ收到这个消息时,弹出“外设控制”窗口等待用户选择,如下:
3.2 WM_QQAPI_REGISTER_RESP
消息名:注册回复消息
方向:QQ?设备
wParam:值如下:
WAITING(1):等待用户选择
OK(2):用户选择“允许使用”
REJECT(3):用户选择“禁止使用”
lParam:当wParam为OK(2)时,lParam为QQ应用程序的窗口句柄。
当用户选择“禁止使用”之后,如果第三方应用程序再次发送WM_QQAPI_REGISTER消息,QQ不再弹出“QQ安全警告”框,直接返回REJECT的WM_QQAPI_REGISTER_RESP消息,直到QQ程序重新启动为止。
3.3 WM_QQAPI_AVAILABLE
消息名:QQ API可用消息
方向:QQ?设备
wParam:发送方的窗口句柄,即QQ程序的窗口句柄
lParam:QQ API版本号,目前为1
当QQ启动后,向所有Windows窗口广播这个消息:
SendMessage( HWND_BROADCAST, WM_QQAPI_AVAILABLE, QQ窗口句柄, 0);
当第三方应用程序收到这个消息时,再发起WM_QQAPI_REGISTER消息进行注册。这种情况出现在,当第三方应用程序先启动,而QQ程序后启动的情况下。
四、从设备到QQ的自定义事件
4.1 EVENT_QQAPI_SET_AUDIODEVICE
事件说明:设置QQ使用的音频设备
参数说明:WM_COPYDATA中的参数COPYDATASTRUCT结构说明详见2
dwData(事件码):10
lpData:如下表
第三方应用程序可通过音频设备名字字符串或者通过设备ID号,来发送设置音频设备事件。
4.2 EVENT_QQAPI_GET_USERINFO
事件说明:获取QQ用户信息
参数说明:WM_COPYDATA中的参数COPYDATASTRUCT结构说明详见2
dwData(事件码):11
lpData:NULL
cbData:0
QQ返回的用户信息,见5.1 EVENT_QQAPI_USERINFO。
4.3 EVENT_QQAPI_PRESS_KEY
事件说明:发送按键消息,当用户在设备上按下任何键时,发送此事件给QQ 参数说明:WM_COPYDATA中的参数COPYDATASTRUCT结构说明详见2
dwData(事件码):12
lpData:如下表
键值映射表: