001.
Option
Explicit
On
002.
Option
Strict
On
003.
Imports
System.Data
004.
Imports
System.Data.SqlClient
005.
006.
Imports
System.IO
007.
008.
009.
Public
Class
frmlogin
010.
Inherits
System.Windows.Forms.Form
011.
012.
Dim
da
As
New
SqlDataAdapter
013.
Dim
ds
As
DataSet =
New
DataSet
014.
Dim
Invalid
As
Integer
= 0
015.
Dim
conn
As
New
SqlConnection
016.
Dim
strcon
As
String
=
"Data Source=lolove-e8faf31f;Initial Catalog = CD Center;Integrated Security= True; user id = sa; password= '' "
017.
Dim
tmpRowsAffected
As
Long
= 0
018.
Dim
xmlFilePath
As
String
=
"C:\\UserlogFile.xml"
019.
Dim
IsFind
As
Boolean
=
False
020.
021.
022.
023.
Public
tmpUserName
As
String
=
""
024.
Private
Sub
Ok_Click(
ByVal
sender
As
System.
Object
,
ByVal
e
As
System.EventArgs)
Handles
Ok.Click
025.
Dim
conn
As
SqlConnection =
New
SqlConnection
026.
conn.ConnectionString = strcon
027.
028.
If
(TxtUsername.Text =
""
)
Or
(TxtPassword.Text =
""
)
Then
029.
MessageBox.Show(
"กรุณาป้อนข้อมูลให้ครบ !!!"
,
"ผลการตรวจสอบ"
, _
030.
MessageBoxButtons.OK, MessageBoxIcon.Warning)
031.
TxtUsername.Focus()
032.
Exit
Sub
033.
End
If
034.
035.
Dim
sqlUser
As
String
=
""
036.
sqlUser =
"SELECT * From UserName"
037.
sqlUser &=
" where (username ='"
& TxtUsername.Text &
"')"
038.
sqlUser &=
" AND (password='"
& TxtPassword.Text &
" ')"
039.
sqlUser &=
" AND (IsNormal='1')"
040.
With
conn
041.
If
.State = ConnectionState.Open
Then
.Close()
042.
043.
.Open()
044.
End
With
045.
If
IsFind =
True
Then
046.
ds.Tables(
"UserName"
).Clear()
047.
End
If
048.
049.
da =
New
SqlDataAdapter(sqlUser, conn)
050.
da.Fill(ds,
"UserName"
)
051.
If
ds.Tables(
"UserName"
).Rows.Count <> 0
Then
052.
IsFind =
True
053.
Invalid = 0
054.
055.
Dim
fmain
As
New
frmmain
056.
fmain.Show()
057.
Me
.Hide()
058.
059.
tmpUserName = TxtUsername.Text
060.
Else
061.
IsFind =
False
062.
WriteLogFile()
063.
064.
If
Invalid = 3
Then
065.
UpdateInvalidUser()
066.
If
tmpRowsAffected <> 0
Then
067.
MessageBox.Show(
"คุณป้อนรหัส Password ผิด ชื่อ UserName:"
& _
068.
TxtUsername.Text &
"ไม่สามารถใช้งานได้ชั่วคราว กรุณาติดต่อผู้ดูแลระบบ !!! "
, _
069.
"ผลการตรวจสอบ"
, MessageBoxButtons.OK, MessageBoxIcon.Warning)
070.
071.
TxtUsername.Text =
""
072.
TxtUsername.Focus()
073.
TxtPassword.Text =
""
074.
Invalid = 0
075.
Exit
Sub
076.
End
If
077.
End
If
078.
MessageBox.Show(
"ข้อมูลผู้ใช้งานไม่ถูกต้อง ไม่สามารถเข้าระบบได้ !!!"
,
"ผลการตรวจสอบ"
, _
079.
MessageBoxButtons.OK, MessageBoxIcon.Information)
080.
TxtPassword.Text =
""
081.
TxtPassword.Focus()
082.
End
If
083.
End
Sub
084.
085.
Private
Sub
WriteLogFile()
086.
087.
Dim
today
As
Date
088.
Dim
dsxml
As
DataSet
089.
Try
090.
dsxml.ReadXml(xmlFilePath, XmlReadMode.
Auto
)
091.
Dim
dr
As
DataRow
092.
dr = dsxml.Tables(0).NewRow
093.
dr(
"Username"
) = TxtUsername.Text
094.
dr(
"Password"
) = TxtPassword.Text
095.
dr(
"DataTimeToLogin"
) = today
096.
dsxml.Tables(0).Rows.Add(dr)
097.
dsxml.WriteXml(xmlFilePath, XmlWriteMode.IgnoreSchema)
098.
Catch
099.
Dim
strFirstContent
As
String
=
""
100.
strFirstContent =
"<UserLog>"
& vbCrLf
101.
strFirstContent &=
"<Username>"
& TxtUsername.Text &
"</Username>"
& vbCrLf
102.
strFirstContent &=
"<Password>"
& TxtPassword.Text &
"</Password>"
& vbCrLf
103.
strFirstContent &=
"<Datetimelogin>"
& today &
"</Datetimelogin>"
& vbCrLf
104.
strFirstContent &=
"</UserLog>"
105.
Dim
sw
As
StreamWriter =
New
StreamWriter(xmlFilePath)
106.
sw.Write(strFirstContent)
107.
sw.Flush()
108.
sw.Close()
109.
End
Try
110.
Invalid = Invalid + 1
111.
End
Sub
112.
113.
Private
Sub
UpdateInvalidUser()
114.
Dim
conn
As
SqlConnection =
New
SqlConnection
115.
Dim
SqlUpdate
As
String
=
""
116.
SqlUpdate =
"Update Username"
117.
SqlUpdate &=
" set IsNormal = '0'"
118.
SqlUpdate &=
"where (username=' "
& TxtUsername.Text &
" ')"
119.
120.
With
conn
121.
If
.State = ConnectionState.Open
Then
.Close()
122.
.ConnectionString = strcon
123.
.Open()
124.
End
With
125.
Dim
tr
As
SqlTransaction
126.
Dim
comUpdate
As
SqlCommand
127.
tr = conn.BeginTransaction
128.
comUpdate =
New
SqlCommand
129.
With
comUpdate
130.
.CommandType = CommandType.Text
131.
.CommandText = SqlUpdate
132.
.Connection = conn
133.
.Transaction = tr
134.
tmpRowsAffected = .ExecuteNonQuery
135.
End
With
136.
Invalid = 0
137.
tr.Commit()
138.
End
Sub
139.
140.
Private
Sub
FrmLogin_Load(
ByVal
sender
As
System.
Object
,
ByVal
e
As
System.EventArgs)
Handles
MyBase
.Load
141.
Dim
conn
As
SqlConnection =
New
SqlConnection
142.
Dim
strconn
As
String
=
"Data Source=lolove-e8faf31f;Initial catalog=CD Center;Integrated Security = True"
143.
Cursor.Current = Cursors.WaitCursor
144.
145.
With
conn
146.
If
.State = ConnectionState.Open
Then
.Close()
147.
.ConnectionString = strcon
148.
.Open()
149.
End
With
150.
Cursor.Current = Cursors.
Default
151.
End
Sub
152.
Private
Sub
Ext_Click(
ByVal
sender
As
System.
Object
,
ByVal
e
As
System.EventArgs)
Handles
Ext.Click
153.
If
MessageBox.Show(
"คุณต้องการจบการทำงานใช่หรือไม่"
,
"คำยืนยัน"
, MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes
Then
154.
End
155.
End
If
156.
157.
End
Sub
158.
159.
End
Class