1、 系统加载时调用:
Ret = ListenAlarmVIP(AlarmCallback,15000);
if(Ret == 0 )
{
MessageBox("执行成功");
}
else
MessageBox("执行失败");
2、回调函数为:
int WINAPI AlarmCallback(TRADE *pTrade)
{
CString Message;
Message.Format("15000 Txcode=[%02x],Status=[%d]Date=[%s]Time=[%s]CardID=[%]\n",pTrade->Txcode,pTrade->Status,pTrade->TrDate,pTrade->TrTime,pTrade->CardID);
AfxMessageBox(Message);
return(0);
}
3、数据结构为
typedef struct TRADE
{
unsigned char Txcode; //交易码
int DoorNum ;
unsigned char CardID[31] ;
int Status ;
unsigned char TrDate[11];
unsigned char TrTime[9];
int TerminalID;
// char DeviceIP[100];
int Door1Status ;
int Door2Status ;
int Door3Status ;
int Door4Status ;
}TRADE ;
ListenAlarmVIP(AlarmCallback,15000);是一个dll里面的函数,函数说明为:
原型:Ret= ListenAlarmVIP(PFCALLBACKpfnAlarm,int Port);
输入:
pfnAlarm: 回调函数入口,类型为PFCALLBACK,定义为typedef int (WINAPI *PFCALLBACK)(TRADE *info);
Port: 回调端口