Reputation: 21
I have created a Windows Form application which is connecting with different attendance machines and handling real time attendance events. Application works well with one machine. But with multiple machines attendance for one machine is cached by both threads but I want that one thread handles only one machine event. And I want that all threads work using single windows form not multiple forms.How to handle multiple machine connections in separate threads. Thanks in advance for any help.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using zkemkeeper;
using System.IO;
using System.Threading;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
private System.Timers.Timer timer1 = null;
string filePath = @"E:\file1.txt";
bool connSatus = false;
CZKEMClass axCZKEM1;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
timer1 = new System.Timers.Timer();
this.timer1.Interval = 30000;
this.timer1.Elapsed += new System.Timers.ElapsedEventHandler(this.timer1_Tick);
timer1.Enabled = true;
Thread createComAndMessagePumpThread = new Thread(() =>
{
axCZKEM1 = new zkemkeeper.CZKEMClass();
connSatus = axCZKEM1.Connect_Net("162.36.2.24", 4370);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("HR Machine is connected at the" + "Date :" + DateTime.Now.ToString() + "status" + connSatus);
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
if (connSatus == true)
{
this.axCZKEM1.OnVerify -= new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(axCZKEM1_OnVerify2);
this.axCZKEM1.OnConnected -= new zkemkeeper._IZKEMEvents_OnConnectedEventHandler(axCZKEM1_OnConnected2);
this.axCZKEM1.OnAttTransaction -= new zkemkeeper._IZKEMEvents_OnAttTransactionEventHandler(axCZKEM1_OnAttTransaction2);
this.axCZKEM1.OnAttTransactionEx -= new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(axCZKEM1_OnAttTransactionEx2);
this.axCZKEM1.OnDisConnected -= new zkemkeeper._IZKEMEvents_OnDisConnectedEventHandler(axCZKEM1_OnDisConnected2);
if (axCZKEM1.RegEvent(1, 65535))//Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
{
this.axCZKEM1.OnVerify += new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(axCZKEM1_OnVerify2);
this.axCZKEM1.OnAttTransactionEx += new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(axCZKEM1_OnAttTransactionEx2);
this.axCZKEM1.OnAttTransaction += new zkemkeeper._IZKEMEvents_OnAttTransactionEventHandler(axCZKEM1_OnAttTransaction2);
this.axCZKEM1.OnConnected += new zkemkeeper._IZKEMEvents_OnConnectedEventHandler(axCZKEM1_OnConnected2);
this.axCZKEM1.OnDisConnected += new zkemkeeper._IZKEMEvents_OnDisConnectedEventHandler(axCZKEM1_OnDisConnected2);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("attendnce transaction Events are registered... ");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}
Application.Run();
});
createComAndMessagePumpThread.SetApartmentState(ApartmentState.STA);
createComAndMessagePumpThread.Start();
Thread createComAndMessagePumpThread2 = new Thread(() =>
{
axCZKEM1 = new zkemkeeper.CZKEMClass();
connSatus = axCZKEM1.Connect_Net("162.36.2.22", 4370);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("Audit Machine is connected at the" + "Date :" + DateTime.Now.ToString() + "status" + connSatus);
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
if (connSatus == true)
{
this.axCZKEM1.OnVerify -= new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(axCZKEM1_OnVerify);
this.axCZKEM1.OnConnected -= new zkemkeeper._IZKEMEvents_OnConnectedEventHandler(axCZKEM1_OnConnected);
this.axCZKEM1.OnAttTransaction -= new zkemkeeper._IZKEMEvents_OnAttTransactionEventHandler(axCZKEM1_OnAttTransaction);
this.axCZKEM1.OnAttTransactionEx -= new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(axCZKEM1_OnAttTransactionEx);
this.axCZKEM1.OnDisConnected -= new zkemkeeper._IZKEMEvents_OnDisConnectedEventHandler(axCZKEM1_OnDisConnected);
if (axCZKEM1.RegEvent(1, 65535))//Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
{
this.axCZKEM1.OnVerify += new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(axCZKEM1_OnVerify);
this.axCZKEM1.OnAttTransactionEx += new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(axCZKEM1_OnAttTransactionEx);
this.axCZKEM1.OnAttTransaction += new zkemkeeper._IZKEMEvents_OnAttTransactionEventHandler(axCZKEM1_OnAttTransaction);
this.axCZKEM1.OnConnected += new zkemkeeper._IZKEMEvents_OnConnectedEventHandler(axCZKEM1_OnConnected);
this.axCZKEM1.OnDisConnected += new zkemkeeper._IZKEMEvents_OnDisConnectedEventHandler(axCZKEM1_OnDisConnected);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("attendnce transaction Events are registered... ");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}
Application.Run();
});
createComAndMessagePumpThread2.SetApartmentState(ApartmentState.STA);
createComAndMessagePumpThread2.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
/* connSatus = axCZKEM1.Connect_Net("172.16.3.2", 4370);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("Machine is connected successfully on" + "Date :" + DateTime.Now.ToString() + "status" + connSatus);
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
if (connSatus == true)
{
this.axCZKEM1.OnVerify -= new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(axCZKEM1_OnVerify);
this.axCZKEM1.OnConnected -= new zkemkeeper._IZKEMEvents_OnConnectedEventHandler(axCZKEM1_OnConnected);
// this.axCZKEM1.OnAttTransaction -= new zkemkeeper._IZKEMEvents_OnAttTransactionEventHandler(axCZKEM1_OnAttTransaction);
this.axCZKEM1.OnAttTransactionEx -= new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(axCZKEM1_OnAttTransactionEx);
this.axCZKEM1.OnDisConnected -= new zkemkeeper._IZKEMEvents_OnDisConnectedEventHandler(axCZKEM1_OnDisConnected);
if (axCZKEM1.RegEvent(1, 65535))//Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
{
this.axCZKEM1.OnVerify += new zkemkeeper._IZKEMEvents_OnVerifyEventHandler(axCZKEM1_OnVerify);
this.axCZKEM1.OnAttTransactionEx += new zkemkeeper._IZKEMEvents_OnAttTransactionExEventHandler(axCZKEM1_OnAttTransactionEx);
// this.axCZKEM1.OnAttTransaction += new zkemkeeper._IZKEMEvents_OnAttTransactionEventHandler(axCZKEM1_OnAttTransaction);
this.axCZKEM1.OnConnected += new zkemkeeper._IZKEMEvents_OnConnectedEventHandler(axCZKEM1_OnConnected);
this.axCZKEM1.OnDisConnected += new zkemkeeper._IZKEMEvents_OnDisConnectedEventHandler(axCZKEM1_OnDisConnected);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("attendnce transaction Events are registered... ");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}*/
}
private void axCZKEM1_OnDisConnected()
{
//lbRTShow.Items.Add("RTEvent OnDisConnected Has been Triggered");
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("Machine is disconnected");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
private void axCZKEM1_OnAttTransactionEx(string sEnrollNumber, int iIsInValid, int iAttState, int iVerifyMethod, int iYear, int iMonth, int iDay, int iHour, int iMinute, int iSecond, int iWorkCode)
{
// if (OnAttTransactionEx != null) OnAttTransactionEx(sEnrollNumber, iIsInValid, iAttState, iVerifyMethod, iYear, iMonth, iDay, iHour, iMinute, iSecond, iWorkCode, axCZKEM1.MachineNumber, Tag);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" OnAttTrasactionEx Has been Triggered,Verified OK on" + "Date :" + "Enrollnumber" + sEnrollNumber + DateTime.Now.ToString());
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
private void axCZKEM1_OnConnected()
{
//lbRTShow.Items.Add("RTEvent OnConnected Has been Triggered");
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" machine connected event is triggered sucessfully.");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
private void axCZKEM1_OnVerify(int iUserID)
{
//lbRTShow.Items.Add("RTEvent OnVerify Has been Triggered,Verifying...");
if (iUserID != -1)
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" User is veified sucessfully.");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
else
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" User is not veified sucessfully.");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}
private void axCZKEM1_OnAttTransaction(int iEnrollNumber, int iIsInValid, int iAttState, int iVerifyMethod, int iYear, int iMonth, int iDay, int iHour, int iMinute, int iSecond)
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" OnAttTrasaction Has been Triggered,Verified OK on" + "Date :" + "Enrollnumber" + iEnrollNumber + DateTime.Now.ToString());
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
//lbRTShow.Items.Add("RTEvent OnAttTrasaction Has been Triggered,Verified OK");
//lbRTShow.Items.Add("...UserID:" + iEnrollNumber.ToString());
//lbRTShow.Items.Add("...isInvalid:" + iIsInValid.ToString());
//lbRTShow.Items.Add("...attState:" + iAttState.ToString());
//lbRTShow.Items.Add("...VerifyMethod:" + iVerifyMethod.ToString());
//lbRTShow.Items.Add("...Time:" + iYear.ToString() + "-" + iMonth.ToString() + "-" + iDay.ToString() + " " + " " + iHour.ToString() + ":" + iMinute.ToString() + ":" + iSecond.ToString());
}
private void axCZKEM1_OnDisConnected2()
{
//lbRTShow.Items.Add("RTEvent OnDisConnected Has been Triggered");
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("Machine2 is disconnected");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
private void axCZKEM1_OnAttTransactionEx2(string sEnrollNumber, int iIsInValid, int iAttState, int iVerifyMethod, int iYear, int iMonth, int iDay, int iHour, int iMinute, int iSecond, int iWorkCode)
{
// if (OnAttTransactionEx != null) OnAttTransactionEx(sEnrollNumber, iIsInValid, iAttState, iVerifyMethod, iYear, iMonth, iDay, iHour, iMinute, iSecond, iWorkCode, axCZKEM1.MachineNumber, Tag);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" OnAttTrasactionEx2 Has been Triggered,Verified OK on" + "Date :" + "Enrollnumber" + sEnrollNumber + DateTime.Now.ToString());
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
private void axCZKEM1_OnConnected2()
{
//lbRTShow.Items.Add("RTEvent OnConnected Has been Triggered");
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" machine2 connected event is triggered sucessfully.");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
private void axCZKEM1_OnVerify2(int iUserID)
{
//lbRTShow.Items.Add("RTEvent OnVerify Has been Triggered,Verifying...");
if (iUserID != -1)
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" User mach2 is veified sucessfully.");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
else
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" User mach2 is not veified sucessfully.");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}
private void axCZKEM1_OnAttTransaction2(int iEnrollNumber, int iIsInValid, int iAttState, int iVerifyMethod, int iYear, int iMonth, int iDay, int iHour, int iMinute, int iSecond)
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" OnAttTrasaction2 Has been Triggered,Verified OK on" + "Date :" + "Enrollnumber" + iEnrollNumber + DateTime.Now.ToString());
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
//lbRTShow.Items.Add("RTEvent OnAttTrasaction Has been Triggered,Verified OK");
//lbRTShow.Items.Add("...UserID:" + iEnrollNumber.ToString());
//lbRTShow.Items.Add("...isInvalid:" + iIsInValid.ToString());
//lbRTShow.Items.Add("...attState:" + iAttState.ToString());
//lbRTShow.Items.Add("...VerifyMethod:" + iVerifyMethod.ToString());
//lbRTShow.Items.Add("...Time:" + iYear.ToString() + "-" + iMonth.ToString() + "-" + iDay.ToString() + " " + " " + iHour.ToString() + ":" + iMinute.ToString() + ":" + iSecond.ToString());
}
}
}
Upvotes: 2
Views: 1157
Reputation: 337
i have a solution for you firs define global variable like that
IDictionary<string, CZKEMClass> device2FingersList = new Dictionary<string, CZKEMClass>();
Then your code
Thread createComAndMessagePumpThread = new Thread(() =>
{
device2FingersList[deviceIp] = new CZKEMClass();
connSatus = device2FingersList[deviceIp].Connect_Net(deviceIp, 4370);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("HR Machine is connected at the" + "Date :" + DateTime.Now.ToString() + "status" + connSatus);
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
if (connSatus == true)
{
device2FingersList[deviceIp].OnVerify -= new _IZKEMEvents_OnVerifyEventHandler(OnVerify);
device2FingersList[deviceIp].OnConnected -= new _IZKEMEvents_OnConnectedEventHandler(OnConnected);
device2FingersList[deviceIp].OnAttTransaction -= new _IZKEMEvents_OnAttTransactionEventHandler(OnAttTransaction);
device2FingersList[deviceIp].OnAttTransactionEx -= new _IZKEMEvents_OnAttTransactionExEventHandler(OnAttTransactionEx);
device2FingersList[deviceIp].OnDisConnected -= new _IZKEMEvents_OnDisConnectedEventHandler(OnDisConnected);
if (device2FingersList[deviceIp].RegEvent(1, 65535))//Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
{
device2FingersList[deviceIp].OnVerify += new _IZKEMEvents_OnVerifyEventHandler(OnVerify);
device2FingersList[deviceIp].OnAttTransactionEx += new _IZKEMEvents_OnAttTransactionExEventHandler(OnAttTransactionEx2;
device2FingersList[deviceIp].OnAttTransaction += new _IZKEMEvents_OnAttTransactionEventHandler(OnAttTransaction);
device2FingersList[deviceIp].OnConnected += new _IZKEMEvents_OnConnectedEventHandler(OnConnected);
device2FingersList[deviceIp].OnDisConnected += new _IZKEMEvents_OnDisConnectedEventHandler(OnDisConnected);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("attendnce transaction Events are registered... ");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}
Application.Run();
});
createComAndMessagePumpThread.SetApartmentState(ApartmentState.STA);
createComAndMessagePumpThread.Start();
}
Upvotes: 0
Reputation: 73
In your code, you have declared only one CZKEMClass instance but you are using two devices. If you have two devices and you need real time handling of attendance events for these devices, you must declare separate CZKEMClass instances for each device to fire/capture the events from each device. Therefore, in your case you need to declare two CZKEMClass instances because you have two devices.
Here's your example code updated to include two CZKEMClass instances:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using zkemkeeper;
using System.IO;
using System.Threading;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
string filePath = @"E:\file1.txt";
bool connSatus = false;
CZKEMClass axCZKEM1, axCZKEM2;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
Thread createComAndMessagePumpThread = new Thread(() =>
{
axCZKEM1 = new CZKEMClass();
connSatus = axCZKEM1.Connect_Net("162.36.2.24", 4370);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("HR Machine is connected at the" + "Date :" + DateTime.Now.ToString() + "status" + connSatus);
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
if (connSatus == true)
{
axCZKEM1.OnVerify -= new _IZKEMEvents_OnVerifyEventHandler(OnVerify);
axCZKEM1.OnConnected -= new _IZKEMEvents_OnConnectedEventHandler(OnConnected);
axCZKEM1.OnAttTransaction -= new _IZKEMEvents_OnAttTransactionEventHandler(OnAttTransaction);
axCZKEM1.OnAttTransactionEx -= new _IZKEMEvents_OnAttTransactionExEventHandler(OnAttTransactionEx);
axCZKEM1.OnDisConnected -= new _IZKEMEvents_OnDisConnectedEventHandler(OnDisConnected);
if (axCZKEM1.RegEvent(1, 65535))//Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
{
axCZKEM1.OnVerify += new _IZKEMEvents_OnVerifyEventHandler(OnVerify);
axCZKEM1.OnAttTransactionEx += new _IZKEMEvents_OnAttTransactionExEventHandler(OnAttTransactionEx2;
axCZKEM1.OnAttTransaction += new _IZKEMEvents_OnAttTransactionEventHandler(OnAttTransaction);
axCZKEM1.OnConnected += new _IZKEMEvents_OnConnectedEventHandler(OnConnected);
axCZKEM1.OnDisConnected += new _IZKEMEvents_OnDisConnectedEventHandler(OnDisConnected);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("attendnce transaction Events are registered... ");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}
Application.Run();
});
createComAndMessagePumpThread.SetApartmentState(ApartmentState.STA);
createComAndMessagePumpThread.Start();
Thread createComAndMessagePumpThread = new Thread(() =>
{
axCZKEM2 = new CZKEMClass();
connSatus = axCZKEM2.Connect_Net("162.36.2.22", 4370);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("HR Machine is connected at the" + "Date :" + DateTime.Now.ToString() + "status" + connSatus);
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
if (connSatus == true)
{
axCZKEM2.OnVerify -= new _IZKEMEvents_OnVerifyEventHandler(OnVerify);
axCZKEM2.OnConnected -= new _IZKEMEvents_OnConnectedEventHandler(OnConnected);
axCZKEM2.OnAttTransaction -= new _IZKEMEvents_OnAttTransactionEventHandler(OnAttTransaction);
axCZKEM2.OnAttTransactionEx -= new _IZKEMEvents_OnAttTransactionExEventHandler(OnAttTransactionEx);
axCZKEM2.OnDisConnected -= new _IZKEMEvents_OnDisConnectedEventHandler(OnDisConnected);
if (axCZKEM2.RegEvent(1, 65535))//Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
{
axCZKEM2.OnVerify += new _IZKEMEvents_OnVerifyEventHandler(OnVerify);
axCZKEM2.OnAttTransactionEx += new _IZKEMEvents_OnAttTransactionExEventHandler(OnAttTransactionEx2;
axCZKEM2.OnAttTransaction += new _IZKEMEvents_OnAttTransactionEventHandler(OnAttTransaction);
axCZKEM2.OnConnected += new _IZKEMEvents_OnConnectedEventHandler(OnConnected);
axCZKEM2.OnDisConnected += new _IZKEMEvents_OnDisConnectedEventHandler(OnDisConnected);
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("attendnce transaction Events are registered... ");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}
Application.Run();
});
createComAndMessagePumpThread.SetApartmentState(ApartmentState.STA);
createComAndMessagePumpThread.Start();
}
private void OnDisConnected()
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine("Machine is disconnected");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
private void OnAttTransactionEx(string sEnrollNumber, int iIsInValid, int iAttState, int iVerifyMethod, int iYear, int iMonth, int iDay, int iHour, int iMinute, int iSecond, int iWorkCode)
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" OnAttTrasactionEx Has been Triggered,Verified OK on" + "Date :" + "Enrollnumber" + sEnrollNumber + DateTime.Now.ToString());
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
private void OnConnected()
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" machine connected event is triggered sucessfully.");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
private void OnVerify(int iUserID)
{
if (iUserID != -1)
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" User is veified sucessfully.");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
else
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" User is not veified sucessfully.");
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}
private void OnAttTransaction(int iEnrollNumber, int iIsInValid, int iAttState, int iVerifyMethod, int iYear, int iMonth, int iDay, int iHour, int iMinute, int iSecond)
{
using (StreamWriter writer = new StreamWriter(filePath, true))
{
writer.WriteLine(" OnAttTrasaction Has been Triggered,Verified OK on" + "Date :" + "Enrollnumber" + iEnrollNumber + DateTime.Now.ToString());
writer.WriteLine(Environment.NewLine + "-----------------------------------------------------------------------------" + Environment.NewLine);
}
}
}
}
Upvotes: 1