Private Declare Function LogonUser Lib "Advapi32" Alias "LogonUserA" (ByVal _ lpszUserName As String, ByVal lpszDomain As String, _ ByVal lpszPassword As String, ByVal dwLogonType As Long, _ ByVal dwLogonProvider As Long, phToken As Long) As LongPrivate Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As _ LongConst LOGON32_PROVIDER_DEFAULT = 0&Const LOGON32_LOGON_NETWORK = 3&' Check whether a username/password pair is correct'' if DOMAIN is omitted, it uses the local account database' and then asks trusted domains to search their account databases' until it finds the account or the search is exhausted' use DOMAIN="." to search only the local account database'' IMPORTANT: works only under Windows NT and 2000Private Function CheckWindowsUser(ByVal UserName As String, _ ByVal Password As String, Optional ByVal Domain As String) As Boolean Dim hToken As Long, ret As Long ' provide a default for the Domain name If Len(Domain) = 0 Then Domain = vbNullString ' check the username/password pair ' using LOGON32_LOGON_NETWORK delivers the best performance ret = LogonUser(UserName, Domain, Password, LOGON32_LOGON_NETWORK, _ LOGON32_PROVIDER_DEFAULT, hToken) ' a non-zero value means success If ret Then CheckWindowsUser = True CloseHandle hToken End IfEnd Function


Different Types of Data Models Explained with Examples
In the modern world, data is everything and everywhere. With so much access to technology, data has become a valuable resource for any business. Albeit a complex one. Data is