top
Loading...
驗證Windows密碼
p>

|聲明模塊:

Option Explicit

Declare Function GetUserName Lib "advapi32.dll" Alias _

"GetUserNameA" (ByVal lpBuffer As String, _

nSize As Long) As Long

Private Declare Function WNetVerifyPassword Lib "mpr.dll" Alias _

"WNetVerifyPasswordA" (ByVal lpszPassword As String, _

ByRef pfMatch As Long) As Long

Public Function GetWindowsLoginUserID() As String

Dim rtn As Long

Dim sBuffer As String

Dim lSize As Long

sBuffer = String$(260, Chr$(0))

lSize = Len(sBuffer)

rtn = GetUserName(sBuffer, lSize)

If rtn Then

sBuffer = left$(sBuffer, lSize)

Reformat string

If InStr(sBuffer, Chr$(0)) Then

sBuffer = left$(sBuffer, InStr(sBuffer, Chr$(0)) - 1)

End If

GetWindowsLoginUserID = sBuffer

Else

Error!

GetWindowsLoginUserID = ""

End If

End Function

Public Function VerifyWindowsLoginU Password(ByVal Password As String) As Boolean

Dim rtn As Long, Match As Long

rtn = WNetVerifyPassword(Password, Match)

If rtn Then

VerifyWindowsLoginUserPassword = False

Else

VerifyWindowsLoginUserPassword = (Match $#@60;$#@62; 0)

End If

End Function

|窗體代碼:

Private Sub cmdVerify_Click()

MsgBox "The password you supplied was " VerifyWindowsLoginUserPassword(txtPassword.Text)

End Sub

Private Sub Form_Load()

txtUsername = GetWindowsLoginUserID

txtUsername.Enabled = False

End Sub

作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗