001.
Imports
System.Collections.Generic
002.
Imports
System.ComponentModel
003.
Imports
System.Drawing
004.
Imports
System.Data
005.
Imports
System.Linq
006.
Imports
System.Text
007.
Imports
System.Windows.Forms
008.
Imports
System.Data.SqlClient
009.
010.
Namespace
Simple_Code
011.
Public
Partial
Class
UserControl1
012.
Inherits
UserControl
013.
014.
Private
dsl_select
As
DataSet
015.
Public
Value
As
String
() =
New
String
(5) {}
016.
Private
isConnected
As
Boolean
017.
Private
FMatchType
As
Integer
018.
Private
fpcHandle
As
Integer
019.
Private
time
As
Integer
= 0
020.
Private
i
As
Integer
= 3
021.
Private
VerifyCheck
As
Boolean
=
False
022.
023.
Private
VerTemplate
As
Object
024.
Private
RegTemplate
As
Object
025.
Private
RegTemplateStr
As
String
026.
Private
izkfpver
As
String
027.
028.
Private
test
As
String
029.
Public
Event
[property]
As
PropertyChangedEventHandler
030.
Public
Delegate
Sub
PropertyChangedEventHandler(s
As
String
)
031.
032.
Public
Sub
New
()
033.
InitializeComponent()
034.
End
Sub
035.
036.
Public
Function
Connection()
As
String
()
037.
038.
axZKFPEngX1.FPEngineVersion =
"9"
039.
izkfpver = axZKFPEngX1.FPEngineVersion
040.
axZKFPEngX1.SensorIndex = 0
041.
If
axZKFPEngX1.InitEngine() = 0
Then
042.
043.
Try
044.
Value(0) =
"Connect"
045.
Value(1) =
"Finger Serial Number :"
+ axZKFPEngX1.SensorSN.ToString()
046.
Value(2) =
"Finger Count :"
+ axZKFPEngX1.SensorCount.ToString()
047.
Value(3) =
"Finger Index :"
+ axZKFPEngX1.SensorIndex.ToString()
048.
Value(4) =
"ImageWidth Record :"
+ axZKFPEngX1.ImageWidth.ToString()
049.
Value(5) =
"ImageHeight Record :"
+ axZKFPEngX1.ImageHeight.ToString()
050.
isConnected =
True
051.
fpcHandle = axZKFPEngX1.CreateFPCacheDB()
052.
Catch
053.
axZKFPEngX1.EndEngine()
054.
Value(0) =
"Disconnect"
055.
Value(1) =
""
056.
Value(2) =
""
057.
Value(3) =
""
058.
Value(4) =
""
059.
Value(5) =
""
060.
isConnected =
False
061.
End
Try
062.
End
If
063.
Return
Value
064.
End
Function
065.
066.
Public
Sub
Disconnect()
067.
axZKFPEngX1.EndEngine()
068.
069.
isConnected =
False
070.
071.
End
Sub
072.
073.
Public
Sub
BeginEnroll()
074.
If
isConnected =
True
Then
075.
If
axZKFPEngX1.IsRegister
Then
076.
axZKFPEngX1.CancelEnroll()
077.
End
If
078.
axZKFPEngX1.EnrollCount = 3
079.
axZKFPEngX1.BeginEnroll()
080.
RaiseEvent
[property](
"Begin Enroll"
)
081.
Else
082.
RaiseEvent
[property](
"No Sensor Connected"
)
083.
End
If
084.
End
Sub
085.
086.
Private
Sub
axZKFPEngX1_OnFingerTouching(sender
As
Object
, e
As
EventArgs)
087.
RaiseEvent
[property](
"FingerTouching"
)
088.
End
Sub
089.
090.
Private
Sub
axZKFPEngX1_OnFingerLeaving(sender
As
Object
, e
As
EventArgs)
091.
RaiseEvent
[property](
"OnFingerLeaving"
)
092.
End
Sub
093.
094.
Private
Sub
axZKFPEngX1_OnEnroll(sender
As
Object
, e
As
AxZKFPEngXControl.IZKFPEngXEvents_OnEnrollEvent)
095.
Dim
tmp
As
Byte
() =
New
Byte
(-1) {}
096.
If
e.actionResult
Then
097.
098.
099.
100.
tmp =
DirectCast
(e.aTemplate,
Byte
())
101.
Else
102.
103.
tmp =
Nothing
104.
End
If
105.
106.
Dim
con
As
System.Data.SqlClient.SqlConnection
107.
con =
New
System.Data.SqlClient.SqlConnection()
108.
con.ConnectionString =
"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|Database.mdf;Integrated Security=True;User Instance=True"
109.
Dim
sql
As
String
=
"UPDATE Finger_Table SET Finger_Value=@Finger_Value WHERE User_ID= "
+ GlobalValue.Index +
""
110.
Dim
cmd
As
New
SqlCommand(sql, con)
111.
con.Open()
112.
Dim
parafinger
As
New
SqlParameter()
113.
parafinger.ParameterName =
"@Finger_Value"
114.
parafinger.Value = tmp
115.
116.
cmd.Parameters.Add(parafinger)
117.
cmd.ExecuteNonQuery()
118.
119.
120.
RaiseEvent
[property](
"OnEnroll"
)
121.
End
Sub
122.
123.
Public
Sub
BeginVerify()
124.
If
Not
isConnected
Then
125.
MessageBox.Show(
"Please Initial sensor first!"
,
"notice"
)
126.
Return
127.
End
If
128.
If
axZKFPEngX1.IsRegister
Then
129.
130.
axZKFPEngX1.CancelEnroll()
131.
End
If
132.
VerifyCheck =
True
133.
axZKFPEngX1.BeginCapture()
134.
RaiseEvent
[property](
"OnVerify"
)
135.
End
Sub
136.
137.
Private
Sub
axZKFPEngX1_OnCapture(sender
As
Object
, e
As
AxZKFPEngXControl.IZKFPEngXEvents_OnCaptureEvent)
138.
139.
140.
VerTemplate = e.aTemplate
141.
Dim
vartemplat
As
Byte
() =
DirectCast
(VerTemplate,
Byte
())
142.
143.
144.
145.
146.
Dim
Template
As
String
= axZKFPEngX1.GetTemplateAsString()
147.
If
e.actionResult
AndAlso
VerifyCheck =
True
Then
148.
VerifyCheck =
False
149.
Dim
check
As
Boolean
=
False
150.
Dim
temp
As
String
151.
axZKFPEngX1.OneToOneThreshold = 40
152.
axZKFPEngX1.Threshold = 40
153.
temp = axZKFPEngX1.GetTemplateAsString()
154.
155.
Dim
con
As
System.Data.SqlClient.SqlConnection
156.
con =
New
System.Data.SqlClient.SqlConnection()
157.
dsl_select =
New
DataSet()
158.
159.
160.
con.ConnectionString =
"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|Database.mdf;Integrated Security=True;User Instance=True"
161.
Dim
sql
As
String
=
"SELECT Finger_Value FROM Finger_Table WHERE User_ID = '"
+ GlobalValue.Index +
"'"
162.
Dim
da
As
New
SqlDataAdapter(sql, con)
163.
164.
con.Open()
165.
166.
da.Fill(dsl_select,
"SELECT"
)
167.
Dim
dRow
As
DataRow = dsl_select.Tables(
"SELECT"
).Rows(0)
168.
169.
170.
Dim
fingerTemp
As
Object
= dRow.ItemArray.GetValue(0)
171.
If
axZKFPEngX1.VerFinger(fingerTemp, VerTemplate,
False
, check) =
True
Then
172.
MessageBox.Show(
"Sucess!!"
)
173.
Else
174.
MessageBox.Show(
"Fail!!"
)
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
End
If
186.
End
If
187.
188.
189.
End
Sub
190.
191.
192.
193.
End
Class
194.
End
Namespace